Congestion Management for Mobility-on-Demand Schemes that use Electric Vehicles
CCongestion Management forMobility-on-Demand Schemes that use ElectricVehicles
Emmanouil S. Rigas and Konstantinos S. Tsompanidis Department of Informatics, Aristotle University of Thessaloniki, 54124,Thessaloniki, Greece [email protected] Department of Computing, The University of Northampton, NN15PH,Northampton, UK [email protected]
Abstract.
To date the majority of commuters use their privately ownedvehicle that uses an internal combustion engine. This transportationmodel suffers from low vehicle utilization and causes environmental pol-lution. This paper studies the use of Electric Vehicles (EVs) operating ina Mobility-on-Demand (MoD) scheme and tackles the related manage-ment challenges. We assume a number of customers acting as cooperativeagents requesting a set of alternative trips and EVs distributed acrossa number of pick-up and drop-off stations. In this setting, we proposecongestion management algorithms which take as input the trip requestsand calculate the EV-to-customer assignment aiming to maximize tripexecution by keeping the system balanced in terms of matching demandand supply. We propose a Mixed-Integer-Programming (MIP) optimaloffline solution which assumes full knowledge of customer demand andan equivalent online greedy algorithm that can operate in real time.The online algorithm uses three alternative heuristic functions in decid-ing whether to execute a customer request: (a) The sum of squares ofall EVs in all stations, (b) the percentage of trips’ destination locationfullness and (c) a random choice of trip execution. Through a detailedevaluation, we observe that (a) provides an increase of up to 4.8% com-pared to (b) and up to 11.5% compared to (c) in terms of average tripexecution, while all of them achieve close to the optimal performance.At the same time, the optimal scales up to settings consisting of tenthsof EVs and a few hundreds of customer requests.
Keywords:
Electric vehicles, mobility-on-demand, scheduling, heuristicsearch, cooperative
In a world where the majority of the population will be living in, or around,large cities the current personal transportation model is not sustainable as it isbased almost entirely on privately owned internal combustion engine vehicles [1].
E. Rigas and K. Tsompanidis
These vehicles cause high pollution (e.g., air and sound) and face low utilizationrates [21]. Electric Vehicles (EVs) can be an efficient alternative to those usinginternal combustion engines in terms of running costs [8], environmental impact,and quality of driving. At the same time their main disadvantages are theirshort ranges and long charging times. To address such issues, cities usually resortto building a large number of charging stations. Such facilities are only worthbuilding if there are enough EVs to use them. However, drivers will not buy EVsif charging stations are not first available, leading to a catch-22 situation.In order to increase vehicle utilization, Mobility-on-Demand (MoD) schemeshave been proposed [14]. MoD involves vehicles that are used by either indi-viduals, or small groups of commuters, thus providing them with an alternativefrom using their privately owned vehicles. Such systems have the potential toreduce traffic congestion in urban areas, as well as the need for large numbers ofparking spots and increase the vehicle utilization rates as few vehicles will coverthe transportation needs of many commuters.Given these benefits of EVs and MoD schemes, in this paper we explorescenarios within which EVs could be used within MoD schemes, and consider therelated optimisation challenges. By addressing these challenges, the advantagesof the two transportation modes can be combined [3], [14]. Moreover, the use ofEVs in MoD schemes offers an opportunity to further market EVs to potentialcar owners as they get to try the technology before buying it. In this way,EV-equipped MoD schemes would help popularise EVs, while at the same timehaving a positive impact in urban traffic conditions as well as the environment.Against this background, we model the MoD scheme for EVs and developnovel algorithms to solve the problem of scheduling trips for MoD consumers inorder to maximize the number of trip requests serviced while coping with thelimited range of EVs. We step upon the work presented in [17] and study theproblem of assigning EVs to customers in a MoD scheme and we solve it offlineand optimally using Mixed Integer Programming (MIP) techniques, as well asonline using heuristic search. In doing so, we advance the state of the art asfollows:1. We extend the optimal scheduling algorithm “Off-Opt-Charge” presentedin [17] which considers single travel requests by customers, by covering theoption for customers to express their demand for more than one tasks, whereas a task we consider a trip between a pair of locations starting a particularpoint in time.2. We develop an online greedy scheduling algorithm for the problem of select-ing the tasks to execute and the assignment of EVs to customers and wepropose three alternative heuristic functions.The rest of the paper is structured as follows: Section 2 presents relatedwork, Section 3 formally defines the problem, Section 4 presents the optimaloffline solution of the problem and Section 5 the equivalent online one. Section 6provides a detailed evaluation of the algorithms and finally, Section 7 concludesand presents ideas for future work. ongestion Management for MoD Schemes that use EVs 3
In this context, Pavone et al. have developed mathematical programming-basedrebalancing mechanisms for deciding on the relocation of vehicles to restore im-balances across a MoD network, either using robotic autonomous driving vehicles[16], or human drivers [15], while Smith et al. [19] use mathematical program-ming to optimally route such rebalancing drivers. Moreover, Carpenter et al. [4]propose solutions for the optimal sizing of shared vehicle pools. However, theseworks assume normal cars, while EVs present new challenges for MoD schemes.For example, EVs have a limited range that requires them to charge regularly.Moreover, if such MoD schemes are to become popular, it is important to en-sure that charging capacity is managed and scheduled to allow for the maximumnumber of consumer requests to be serviced across a large geographical area. Inaddition, in order for MoD schemes to be economically sustainable, and giventhe higher cost of buying EVs compared to conventional vehicles, it is importantto have them working at maximum capacity and servicing the maximum numberof customers around the clock.In such a setting, Drwal et al. [10] consider on-demand car rental systems forpublic transportation. To address the unbalanced demand across stations andmaximise the operator’s revenue, they adjust the prices between origin and desti-nation stations depending on their current occupancy, probabilistic informationabout the customers’ valuations and estimated relocation costs. Using real datafrom an existing on-demand mobility system in a French city, they show thattheir mechanisms achieve an up to 64% increase in revenue for the operatorand at the same time up to 36% fewer relocations. In addition, Rigas et al. [17]use mathematical programming techniques and heuristic algorithms to scheduleEVs in a MoD scheme taking into consideration the limited range of EVs and theneed to charge their batteries. The goal of the system is to maximize servicedcustomers. Cepolina and Farina [5] study the use of single-sitter compact-sizedEVs in a MoD scheme operating in a pedestrian zone. The vehicles are sharedthroughout the day by different users and one way trips are assumed. However,here the authors also assume open ended reservation to exist (i.e., the drop-offtime is not fixed), thus adding one more dimension to the problem. Given this,they propose a methodology that uses a random search algorithm to optimizethe fleet size and distribution to maximize the number of serviced customers.Moreover, Turan et al. [22] study the financial implications of smart charging inMoD schemes and they conclude that investing in larger battery capacities andoperating more vehicles for rebalancing reduces the charging costs, but increasesthe fleet operational costs. Finally, Gkourtzounis et al. [12] propose a softwarepackage that allows for efficient management of a MoD scheme from the side ofa company, and easy trip requests for customers.From an algorithmic point of view, similarities can be found with problemssuch as the capacitated vehicle routing problem [6] which is a special case of theVehicle Routing Problem [7], where each vehicle has a limited carrying capacity,the project scheduling problem [20], and the machine scheduling problem [13].
E. Rigas and K. Tsompanidis
Overall, the need for battery charging as well as the strict order of task execu-tion differentiate our problem compared to the majority of the works presentedso far, and make it harder to find the optimal solution. Also the efficient on-line algorithms make it more applicable in real-world deployments. In the nextsection, the problem is formally defined.
In a MoD scheme which uses EVs, customers may choose to drive between pairsof predefined locations. They can choose at least one starting point and at leastone end point. Since the MoD company’s aim is to serve as many requests aspossible, the system selects to execute the task which keeps the system in balance(i.e., trying to match demand across supply). A task is defined as a trip froma pick-up to drop-off location starting a particular point in time. Thus, basedon the number of start and end points the customer has defined, all possiblecombinations are calculated and the equivalent tasks are created. We considera network of parking stations where the EVs use to park and charge their bat-teries. The stations are considered as nodes aiming to be kept neither emptynor overloaded. The system needs to be in balance since the overloading of onestation may cause major disruption to the network. A summary of all notationscan be found in Table 1We consider a fully connected directed graph G ( L, E ) where l ∈ L ⊆ N is theset of locations where the stations exist and e ∈ E ⊆ N are the edges connectingall locations combinations. Each station has a maximum capacity c maxl ∈ N declaring the number of EVs that can reside at it simultaneously. We assume aset of discrete time points t ∈ T ⊆ N where the time is global for the systemand the same for all agents. We have a set of tasks r ∈ R ⊆ N where a task is atrip initiating a particular point in time. Thus, each task has a starting location l startr , an end location l endr , as well as a starting time t startr , a duration τ r andan equivalent energy demand e r ∈ N .We denote the set of EVs a ∈ A ⊆ N . Each EV has a current location l a,t ∈ L ,a current battery level e a,t ∈ N , a maximum battery level e maxa ∈ N , an energyconsumption rate con a ∈ N where con a =(energy unit/time point), a maximumtravel time τ a = e maxa /con a and a charging rate ch a ∈ N . Note that an EVchanges location only when being driven by a customer and no relocation ofvehicles exists.Finally, we have a set of customers i ∈ I ⊆ N where a customer needs totravel between one or more pairs of locations dem i ⊆ R . Customers act as fullycooperative agents when communicating their demand to the MoD company. Af-ter the demand is communicated to the company, an EV-to-customer assignmentalgorithm is applied. In doing so, a set of assumptions are made:1. The MoD company is a monopoly. At this point competition between com-panies is not taken into consideration. This would introduce different ap-proaches in decision making strategy and should include more variables into ongestion Management for MoD Schemes that use EVs 5 the problem domain (energy and labor cost, building rents, taxes, etc.), whichare not the case in this paper.2. The MoD company uses the same EV model. For simplification reasons it isconsidered that all EVs are of the same make and model.3. All stations have one charger for each parking spot. This means that if thereis a parking spot available, there is also a charger available. There is nowaiting queue for charging.4. EVs’ full battery capacity is sufficient to make a journey from one stationto any other without extra charge needed. No stops are required, and nocharging time needs to be spent in between two locations. Travelling tolocations beyond the maximum range of an EV needs a different formulationand induce challenges which will be solved in future work. Notation Explanation l Location of a station e Edge connecting two stations c maxl Maximum capacity of a station t Time point r A task l startr Start location of a task l endr End location of a task t startr Start time of a task τ r Duration of a task e r Energy demand of a task a An EV l a,t Current location of EV e a,t Energy level of EV e maxa Max battery capacity of EV ch a Charging rate of EV con a Consumption rate of EV τ a Max travel time of EV i A customer dem i Travel demand of customer λ r Task r accomplished (Boolean) ǫ a,r,t True if EV a is working on task r at time t (Bollean) prk a,t,l
True if EV a is parked at location l at time t (Boolean) bch a,t
Charging rate of EV a at time t
Table 1.
Notations used in problem definition and algorithms.
In this section, we assume that customer requests are collected in advance and wepropose an optimal offline algorithm for the assignment of EVs to customers. The
E. Rigas and K. Tsompanidis aim of this formulation is to maximize the number of tasks that are completed(a.k.a. customer service) (Equation 1). To achieve this, we present a solutionbased on Mixed Integer Programming (MIP) (solved using IBM ILOG CPLEX12.10), where we use battery charging to cope with the EVs’ limited range.MIP techniques have been particularly useful to solve such large combinatorialproblems (e.g., combinatorial auctions [18], [2], travelling salesman problem [9]).We will refer to this algorithm as
Optimal . In more detail, we define four decisionvariables: 1) λ r ∈ { , } denoting whether a task r is accomplished or not, 2) ǫ a,r,t ∈ { , } denoting whether EV a is executing task r at time t or not, 3) prk a,t,l ∈ { , } denoting whether EV a is parked at time point t at location l ornot and 4) bch a,t ∈ [0 , ch a ] which denotes whether an EV a is charging at timepoint t and at which charging rate (i.e., the charging rate can be any between 0and the maximum charging rate - ch a ). Objective function: max Ø r ∈ R ( λ r ) (1) Subject to:–
Completion constraints: Ø a ∈ A Ø t startr ≤ t
Random . sq t = Ø l ∈ L ( Ø a ∈ A ǫ a,t,l ) , t ∈ T (16) dcp l,t = ( Ø a ∈ A ǫ a,t,l ) /c maxl (17)In what follows, we provide a step-by-step description of the greedy schedul-ing algorithm (see Alg. 1). Based on the online execution of the algorithm, if attime point t a new customer i arrives and expresses her demand, then the set dem i of all possible tasks is created (line 2). Then, we update the energy levelfor all EVs. EVs are assumed to charge their battery every time point they areparked unless the battery is fully charged (lines 3-8). Note that in contrast to theoptimal algorithm, here the EVs charge with the maximum rate. For each taskin dem i , we check whether the end location of it has enough capacity to receiveone vehicle. If this is true, then we search the set of EVs to find the ones that areparked at the starting location of the task and have enough energy to executethe task. If at least one such EV exists, then this task is added to the set dem ∗ i that contains the list of feasible tasks (lines 9-23). The next step is to calculatefor each of the feasible tasks, the score r using one of the three heuristic functions(lines 24-27). These scores are later sorted on ascending order and the task withthe lower score is selected to be executed (lines 27-28). Once the task has beenselected, the EV is assigned to it and its location is updated accordingly (lines29-39). In the next section we present a detailed evaluation of our algorithms. In this section, we evaluate our algorithms on a number of settings in order todetermine their ability to handle potentially large numbers of tasks, and EVs. Tothis end, we use real locations of pick-up and drop-off points owned by ZipCar in Washington DC, USA which are available as open data, while the distanceand duration of all trips were calculated using Google maps. The evaluation ofour algorithms is executed in two main parts: – EXP1: The performance of the online and offline algorithms in terms of theaverage number of serviced customers (i.e., executed tasks). – EXP2: The execution time and the scalability of the algorithms. http://opendata.dc.gov/datasets/.0 E. Rigas and K. Tsompanidis Algorithm 1
EV-to-Customer assignment algorithm.
Require:
A, T, L, dem i , ∀ a, l, r : e a,t , ǫ a,t,l , w a,t,r , l startr , l endr , e r , τ r
1: {If a new customer i arrives at time point t then:}2: Create dem i which consists of the combination of all start and end points definedby the customer.3: for all ( a ∈ A ) do for all ( t ′ ∈ T : t ′ < t ) do
5: {Update the energy level of each EV}6: e a,t = e a,t + ( q l ∈ L ǫ a,t ′ ,l ) × ch a − ( q r ∈ R w a,t ′ ,r ) × con a end for end for for all ( r ∈ dem i ) do
10: {If the end location of the task has enough capacity for an incoming vehicle:}11: if ( c l endr ,t + τ r < c l endr ,t + τ r ) then F oundEV ← F alse a = 0 while ( F ound = F alse
AND a < | A | ) do
15: {Search the set of EVs until an EV with current location equal to the initial locationof the task that has enough energy to execute the task is found.}16: if ( ǫ a,t,l startr = 1 AND e a,t > e r ) then F ound ← T rue end if a = a + 1 end while {Update the set of feasible tasks.}21: ( dem ∗ i ← dem ∗ i + r )22: end if end for for all ( r ∈ dem ∗ i ) do
25: Calculate score for each task using one of the three heuristic functions.26: end for
27: Sort score in ascending order.28: Select to execute task r that minimizes the heuristic function.29: for all ( t ′ ∈ T : t ′ ≥ τ r ) do
30: {Set the new location of the EV after the execution of the task.}31: ǫ a,t ′ ,l endr = 1 end for for all t ′ ∈ T : t ′ > t do ǫ a,t ′ ,l startr = 0 end for for all ( t ′ ∈ T : t ′ ≥ t AND t ′ < t + τ r ) do
37: {Set the EV to be working on the task for the equivalent time points. }38: w a,t ′ ,r = 1 end for ongestion Management for MoD Schemes that use EVs 11 All experiments were executed in the following setting: 1) One time point wasselected to be equal to 15 mins, and in total 58 time points exist (i.e., equivalentto the execution of the MoD service from 7:00 to 18:00). 2) 8 locations exist andtasks can be formulated based on one of 56 possible trips (i.e., the trips are thecombinations of the locations that form the MoD scheme. However, locationstoo close to each other were ignored) and trips as well as starting times wererandomly selected. Each location has a maximum capacity c maxl = 10 . 3) Eachcustomer i has a demand dem i of up to three alternative tasks. 4) The energyconsumption rate for each EV a is selected to be con a = 10 and the chargingrate ch a = 25 . This means that for each time point that an EV is working thebattery level is reduced by 10 units of energy, and for each time point an EV ischarging the battery level is increased by up to 25 units of energy (fast batterycharging): The average range of an EV is currently at around 150km. We assumean average speed of 40km/hour which means that an EV can drive for 3.75 hours.In our evaluation setting, one time point is equal to 15 minutes, and 3.75 hoursequal to 15 time points. Thus, con a = 10% of battery for each time point. Afast charger can fully charge an EV at around one hour. Thus, ch a = 25% ofthe battery for each time point. Both con a and ch a are configuration parametersand can be selected by the user. All experiments were executed on a WindowsPC with an Intel i7-4790K CPU and 16 GB of RAM running at 2400MHz. Here we investigate the performance trade-off incurred by the online algorithmsin terms of average customer service against the optimal offline one. Initially, westudy a setting with 15 EVs and up to 70 customers. Note that each customerexpresses her demand for up to 3 alternative tasks, with an average number of 2,so the average number of tasks is approximately double the number of customers.As we observe in Figure 1, all online algorithms are close to the optimal withthe best being the Squared having a . efficiency in the worst case, then isthe Destination with a . efficiency in the worst case and last is the Randomwith a . efficiency in the worst case.Aiming to see how the number of EVs affects the performance of the onlinealgorithms, we set up an experiment with 100 customers and up to 35 EVs.As we can observe in Figure 2 the overall image is similar to the previous casewith the Squared being the best, the Destination second and the Random third.However, it is interesting to notice that when the number of EVs is low (5 EVs)or large (35 EVs) the performance deficit of the Destination and Random issmaller compared to the case where 20 EVs exist. This can be explained by thefact that when the number of EVs is low the heuristics, as they are connectedto the number of EVs, cannot make a big difference, while when the number ofEVs is high the problem becomes easier to solve.Finally, in order to evaluate the performance of the online algorithms in largersettings, we set up an experiment with 100 EVs, 100 time points and up o 1200customers. As we can observe in Figure 3, up to around 500 customers all threealgorithms have a similar performance, but later the Squared and Destination Fig. 1.
Average number of serviced customers
Fig. 2.
Average number of serviced customers- Varying number of EVsongestion Management for MoD Schemes that use EVs 13 have a better performance and for 1200 customer the Destination has a . efficiency compared to the Squared and the Random a . efficiency comparedto the Squared. Fig. 3.
Average number of serviced customers- Online algorithms
Execution time and scalability are typical metrics for scheduling algorithms. Ina setting with 15 EVs and up to around 140 tasks (i.e., 70 customers), we seein Figure 4 that the execution time of the Optimal algorithm increases poly-nomially. Using MATLAB’s Curve Fitting Toolbox we see that the Optimal’sexecution time is second degree polynomial with R = 97 . . At the same time,the online algorithms have a very low execution time, as they all run in wellunder 0.05 seconds even in large settings. In this paper, we studied the problem of scheduling a set of shared EVs in a MoDscheme. We proposed an offline algorithm which collects the customers’ demandin advance and calculates an optimal EV to customer assignment which max-imizes the number of serviced customers. This algorithm scales up to mediumsized problems. We also proposed three variations of an online algorithm whichoperates in a customer-by-customer basis and has shown to achieve near opti-mal performance while it can scale up to settings with thousands of EVs andlocations.Currently, we assume that the customer-agents are cooperative when com-municating their demand to the system. As future work we aim to extend this
Fig. 4.
Execution time of the Optimal algorithm by including non-cooperative agents and to apply mechanism design techniquesin order to ensure truthful reporting. Moreover, we aim to improve the chargingprocedure of the EVs by trying to maximize the use of limited and intermittentenergy from renewable sources. Finally, we want to enhance our algorithms inhandling possible uncertainties in arrival and departure times, while aiming tomaximize customer satisfaction and their profit.
Acknowledgment
This research is co-financed by Greece and the European Union (European SocialFund- ESF) through the Operational Programme “Human Resources Develop-ment,Education and Lifelong Learning” in the context of the project “Reinforce-ment of Postdoctoral Researchers - 2nd Cycle” (MIS-5033021), implemented bythe State Scholarships Foundation (IKY).
References
1. Administration, U.E.I.: Annual energy outlook 2019. Tech. rep. (2019)2. Andersson, A., Tenhunen, M., Ygge, F.: Integer programming for com-binatorial auction winner determination. In: MultiAgent Systems, 2000.Proceedings. Fourth International Conference on. pp. 39–46 (2000).https://doi.org/10.1109/ICMAS.2000.8584293. Burns, L.D.: Sustainable mobility: a vision of our transport future. Nature (7448), 181–182 (2013)4. Carpenter, T., Keshav, S., Wong, J.: Sizing finite-population vehicle pools. IEEETransactions on Intelligent Transportation Systems (3), 1134–1144 (June 2014).https://doi.org/10.1109/TITS.2013.22939185. Cepolina, E.M., Farina, A.: A new shared vehicle system for urban areas. Trans-portation Research Part C: Emerging Technologies (1), 230 – 243 (2012).https://doi.org/http://dx.doi.org/10.1016/j.trc.2011.10.005ongestion Management for MoD Schemes that use EVs 156. Chandran, B., Raghavan, S.: Modeling and Solving the Capacitated Vehicle Rout-ing Problem on Trees, pp. 239–261. Springer US, Boston, MA (2008)7. Dantzig, G.B., Ramser, J.H.: The truck dispatching problem. Manage. Sci. (1),80–91 (Oct 1959)8. Densing, M., Turton, H., Bäuml, G.: Conditions for the successful deployment ofelectric vehicles–a global energy system perspective. Energy (1), 137–149 (2012)9. Dorigo, M., Gambardella, L.M.: Ant colony system: a cooperative learning ap-proach to the traveling salesman problem. IEEE Transactions on EvolutionaryComputation (1), 53–66 (Apr 1997). https://doi.org/10.1109/4235.58589210. Drwal, M., Gerding, E., Stein, S., Hayakawa, K., Kitaoka, H.: Adaptive pricingmechanisms for on-demand mobility. In: Proceedings of the 16th Conference onAutonomous Agents and MultiAgent Systems. pp. 1017–1025. International Foun-dation for Autonomous Agents and Multiagent Systems (2017)11. Floudas, C.A., Lin, X.: Mixed integer linear programming in process scheduling:Modeling, algorithms, and applications. Annals of Operations Research (1),131–162 (2005)12. Gkourtzounis, I., Rigas, E.S., Bassiliades, N.: Towards online electric vehiclescheduling for mobility-on-demand schemes. In: European Conference on Multi-Agent Systems. pp. 94–108. Springer (2018)13. Lomnicki, Z.A.: A “branch-and-bound” algorithm for the exact solu-tion of the three-machine scheduling problem. Journal of the OperationalResearch Society (1), 89–100 (1965). https://doi.org/10.1057/jors.1965.7,http://dx.doi.org/10.1057/jors.1965.714. Mitchel, W.J., Borroni-Bird, C.E., Burns, L.D.: Reinventing the automobile: Per-sonal urban mobility for the 21st century. MIT Press (2010)15. Pavone, M., Smith, S.L., Emilio, F., Rus, D.: Load balancing for mobility-on-demand systems. Robotics: Science and Systems (2011)16. Pavone, M., Smith, S.L., Frazzoli, E., Rus, D.: Robotic load balancing for mobility-on-demand systems. The International Journal of Robotics Research (7), 839–854 (2012). https://doi.org/10.1177/027836491244476617. Rigas, E.S., Ramchurn, S.D., Bassiliades, N.: Algorithms for electric vehiclescheduling in large-scale mobility-on-demand schemes. Artificial Intelligence ,248 – 278 (2018). https://doi.org/https://doi.org/10.1016/j.artint.2018.06.00618. Sandholm, T., Suri, S., Gilpin, A., Levine, D.: Winner determination in combinato-rial auction generalizations. In: Proceedings of the First International Joint Confer-ence on Autonomous Agents and Multiagent Systems: Part 1. pp. 69–76. AAMAS’02, ACM, New York, NY, USA (2002). https://doi.org/10.1145/544741.54476019. Smith, S., Pavone, M., Schwager, M., Frazzoli, E., Rus, D.: Rebalancing therebalancers: optimally routing vehicles and drivers in mobility-on-demand sys-tems. In: American Control Conference (ACC), 2013. pp. 2362–2367 (June 2013).https://doi.org/10.1109/ACC.2013.658018720. Talbot, F.B., Patterson, J.H.: An efficient integer programming algorithm withnetwork cuts for solving resource-constrained scheduling problems. ManagementScience (11), 1163–1174 (1978)21. Tomic, J., Kempton, W.: Using fleets of electric-drive vehicles forgrid support. Journal of Power Sources168