The Shortest Path Problems in Battery-Electric Vehicle Dispatching with Battery Renewal

Electric vehicles play a key role for developing an eco-sustainable transport system. One critical component of an electric vehicle is its battery, which can be quickly charged or exchanged before it runs out. The problem of electric vehicle dispatching falls into the category of the shortest path problem with resource renewal. In this paper, we study the shortest path problems in (1) electric transit bus scheduling and (2) electric truck routing with time windows. In these applications, a fully-charged battery allows running a limited operational distance, and the battery before depletion needs to be quickly charged or exchanged with a fully-charged one at a battery management facility. The limited distance and battery renewal result in a shortest path problem with resource renewal. We develop a label-correcting algorithm with state space relaxation to find optimal solutions. In the computational experiments, real-world road geometry data are used to generate realistic travel distances, and other types of data are obtained from the real world or randomly generated. The computational results show that the label-correcting algorithm performs very well.


Introduction
Recently, aimed at reducing vehicle emissions and greenhouse gases, more and more electric transit buses and delivery trucks have been used in personal travel, public transit, home deliveries from grocery stores, postal deliveries and courier services.For example, electric motorcycles or scooters have been promoted through incentive programs in Taiwan.UPS began using electric vehicles in their fleet as early as 1933, and now almost 2000 electric delivery trucks have been used [1].More than 80 electric transit buses were used in the World Expo 2010 Shanghai [2].As a benchmark city of electric vehicle demonstration application in China, Beijing released the Beijing electric vehicle promotion application action plan (2014)(2015)(2016)(2017) in June, 2014 [3].Although electric vehicles produce zero emissions, a fully-charged battery only allows running a limited operational distance.The limited short range may not be a problem for commute drivers in an urban area.It will have great impacts on the applications of vehicle scheduling and routing.In order to make electric vehicles service for a whole day, the battery near depletion can be either quickly charged or exchanged with a fully-charged one at a battery service station.Therefore, the problem of electric vehicle dispatching with battery renewal falls into the category of the resource-constrained shortest path problem.
The resource-constrained shortest path problem consists of determining the lowest-cost path from an origin node to a destination node on a network, such that resources consumed along the path are no more than specified values.Some typical examples of resources include maximum daily working hours, vehicle capacity, fuel tank size and maximum traveled distances.The resource-constrained shortest path problem has significant applicants in transportation, such as in vehicle scheduling with time windows [4], vehicle routing with time windows [5], transit crew scheduling [6] and airline crew pairing [7].In these applications, the resource-constrained shortest path problem often appears as a sub-problem in the context of column generation.One critical component of an electric vehicle is its battery.Unlike the resources previously mentioned, a battery can be quickly charged or exchanged with a fully-charged one before it runs out.Such an aspect results in the shortest path problem with resource renewal, which will be investigated in this paper.
The resource-constrained shortest path problem may be classified into two types.In the first type, either the problem is based on an acyclic network, or although the underlying network is cyclic, there are no negative cost cycles (e.g., all arcs have positive costs).Solution approaches include branch-and-bound [8], label setting [9], label setting with preprocessing [10], K-shortest path enumeration [11,12] and Lagrangian relaxation with robust shortest path enumeration [13].In the second type, there are negative cost cycles in the underlying network.If no cycles are allowed in the shortest path, such a problem is called the elementary shortest path problem with resource constraints.Solution approaches include branch-and-bound [8], label correcting [14], bi-directional label correcting [15] and label correcting with state space relaxation [16].A relaxed version allows the existence of cycles in the shortest path.Solution methods are mainly based on dynamic programming with the strategies of two-cycle elimination [5,17], k-cycle elimination [18] and a combined (k, 2)-loop elimination [19].Both types of resource-constrained shortest path problems are NP-hard [20].The literature about the electric vehicle routing problem is focused on refueling station location [21,22], battery swapping or charging replenishment [23,24] and the electric traveling salesman problem [25] or the electric vehicle routing problem [26][27][28].
In this paper, we consider the shortest path problems in two types of electric vehicles with battery renewal: electric buses and electric trucks.The problem on electric buses is defined as follows: given an origin and a destination depot, a set of scheduled trips with starting and ending times, the travel distance between two locations, the maximal range of the electric bus before battery renewal and the cost between two nodes, find the shortest path from the origin depot to the destination depot.The problem on electric trucks is similar, but with additional constraints: the service has flexible time windows and demand, and the truck has limited capacity.
The contributions of this paper are as follows.First, we model the shortest path problem in two important applications: (1) electric transit bus scheduling and (2) electric truck routing with time windows.We propose integer programming-based formulations.Second, we develop a dynamic programming-based algorithm to find optimal solutions for these emerging shortest path problems.Third, we conduct the extensive computational experiments in the context of real-world settings: the travel distance is obtained from real-world road geometry data; the battery service time and operational distance are obtained from real-world experiences; and the unit electricity cost is estimated based on real-world testing reports.We also compare the computational time with CPLEX.
The rest of this paper is organized as follows.Section 2 models the shortest path problems with battery renewal.Section 3 presents the label-correcting algorithm.Numerical studies are presented in Section 4. Section 5 concludes the paper and describes future research directions.

The Shortest Path Problems in Electric Vehicle Dispatching
In this section, we first model and formulate the shortest path problem in electric transit bus scheduling with battery renewal, where the underlying network is acyclic.We then model and formulate the shortest path problem in electric truck routing with battery renewal and time windows, where the underlying network may contain negative cost cycles.

The Shortest Path Problem in Electric Transit Bus Scheduling
Heavy-duty diesel trucks and buses generate more than 45% of the nitrogen oxide and 75% of the particulate matter [29].In contrast, electric transit buses have a unique advantage: zero emissions.The use of electric buses in transit service may date back to the 1990s in Santa Barbara, California [30], and Chattanooga, Tennessee [31], with the main purpose of reducing vehicle emissions in downtown areas.Electric buses were used at a large scale during the Beijing Summer Olympics [32] and World Expo 2010 Shanghai [2].It was reported in [33] that nine electric buses have been used in Seoul.In Los Angeles, Foothill Transit has already used a number of electric buses in service with a future goal of a 100% clean-fuel fleet [34].
A major problem of electric buses is the restricted operational distance caused by the limited battery capacity.For example, a bus with 22 to 25 seats can run 60 to 90 km in Chattanooga before the battery runs out [31].In the Beijing Olympics, the maximum operational distance is 130 km [32].The electric buses servicing Seoul can run 80 km [33].In the Foothill Transit of Los Angeles, a fully-charged battery can propel the bus for 3 h [34].In [35], certain specifications of electric bus engines are listed.The use of an air conditioner has a great impact on the operational distance.The United Nations Environment Programme [2] reported that the maximum distance was 150 km with an air conditioner on and 250 km with an air conditioner off in the Shanghai World Expo.In order to overcome the short operational distance, a battery near depletion can be charged or exchanged with a fully-charged one at a battery service station.The fast charge is used in Seoul and Los Angeles; the charging time is from 20 to 30 min in Seoul [33] and about 10 min in Los Angeles [34].Battery exchange has been employed in Tennessee [31], Beijing [30] and Shanghai [36].The time of each battery exchange is 10 to 15 min in Tennessee [31].
Both battery charging and exchange are generally accomplished at a battery management station, which has limited service spaces.If a bus arrives at a battery station without any available space, the bus has to wait.We define a maximum waiting time at each battery station in order to avoid unnecessarily long waiting.The capacity of battery stations cannot be violated at any moment.We use a discretization approach to handle this requirement.For each trip, the earliest service start time at a battery station is the arrival time, and the latest service start time is the arrival time plus the maximum waiting time.We then sample the start time range and generate certain discretized nodes.The discretization is applied to all of the trips.The discretized nodes are called time-expanded station nodes, each of which corresponds to a battery service station at a specified time.Such a discretization technique has been widely used in the single-track train scheduling problem with limited spaces at a terminal (e.g., see [37]) and transit bus scheduling with the maximum route distance constraint for compressed natural gas, diesel or hybrid-diesel buses [38].
We now formally define the shortest path problem.The parameters that will be used in the paper are listed as follows.
B the set of available battery stations; T b the set of time-expanded station nodes associated with b P B; T " U bPB T b the set of all time-expanded nodes; a t service starting time; U t the battery service (swapping or charging) time at node t P T; a t + U t service ending time; S the set of service trips; a s starting time, s P S; Us the service duration, s P S; o the origin depot; d the destination depot; D the maximum distance that a fully-charged battery allows; d ij the travel distance from i P {oYT}, or the ending point of trip i P S to j P {dYT}, or the ending point of trip j P S; the trip service distance is included if j P S; t ij the travel time from i P {oYT}, or the ending point of trip i P S to j P {dYT}, or the ending point of trip j P S; A the set of arcs, including the following arcs: (1) arcs from o to i P S; (2) arcs from i P SYT to d; and (3) arcs from i P SYT to j P SYT if a i + U i + t ij ď a j and at least one of i and j belongs to S; c ji the arc cost, often defined as the operational cost; if the shortest path appears as a sub-problem in column generation or Lagrangian relaxation, c ji is defined as a function of the operational cost of arc ji and linear or Lagrangian dual variables; it is worthy to mention that the underlying network is acyclic because the starting times of all nodes in SYT are fixed.
The decision variables are defined as follows.
x ji a binary variable; x ji = 1 if a vehicle is assigned to node i directly after node j; g s a continuous variable that indicates the accumulative distance traveled to the ending point of trip s P S since the latest battery renewal.
The shortest path problem in electric transit bus scheduling with battery renewal is formulated in Table 1.x ji ´ř i:pi,jq A x ij " 0 @j P S Y T (a4) The objective is to minimize the total cost.Constraint (a2) ensures sending a unit flow; Constraint (a3) forces receiving a unit flow; and Constraint (a4) is flow conservation.Constraint (a5) determines the accumulative distance traveled since the latest battery renewal.Constraint (a6) sets the accumulative distance as zero at battery stations and the origin depot.Constraint (a7) forces that the maximum route distance restriction is satisfied.
If a sufficiently large penalty is imposed for each arc ji with i P T, the problem becomes the resource-constrained shortest path problem, which is NP-hard [20].Therefore, the shortest path problem in electric transit bus scheduling is NP-hard.

The Shortest Path Problem in Electric Truck Routing with Time Windows
The rapid development of online retailing has brought the huge demand of last-mile delivery of parcels.The application of electric trucks will offer great potential to reduce greenhouse gas emissions.FREVUE (Freight Electric Vehicles in Urban Europe) provides evidence on how innovative solutions using electric freight vehicles can help to achieve emission free city logistics.It reports that the electric vehicles should be used in a two-phase delivery network [25], which has been widely adopted by big online retailers, e.g., yhd.com and jd.com in China.In the network, conventional trucks first send parcels to delivery terminals, and later, the electric vehicles finish the last-mile deliveries to customers.A number of electric trucks have already been used in a major shipping company in order to reduce emissions and maintenance costs [1].It was also reported in 2011 [39] that UPS agreed to purchase 100 electric vans for use in California.Major car manufacturers also produce electric shuttles now.For example, Ford Motor has proposed a type of electric van, named the Ford Transit Connect [40].Electric delivery trucks also face the restriction of the maximum operational distance.For example, the maximum operational distance of Ford Transit Connect is 120 km [40], and the new trucks that UPS agreed to buy can run about 140 km after a full battery charge [39].It was reported that it can take six to eight hours for Ford Transit Connect to have a full charge [40].
In the current practice, electric trucks generally serve a relatively short and direct route [39] and do not have the problem of battery depletion.However, in order to use electric trucks at a large scale, the charging time has to be significantly reduced (e.g., using direct current charging) or a battery exchange station has to be built.Although we did not find reports on battery exchange for electric trucks, it can be expected that battery exchange facilities will be constructed in the future.Such construction may be benefited by financial incentives from governments and air-quality management districts.In fact, seven millions incentives were obtained when UPS agreed to buy electric vans [39].We will assume that at least one battery station has been constructed for battery exchange or fast charging.Similarly, a battery service station can simultaneously serve a limited number of electric trucks.
We A the set of arcs, including the following arcs: (1) arcs from o to i P S; (2) arcs from i P SYT tod; and (3) arcs from i P SYT to j P SYT if a i + U i + t ij ď b j and at least one of i and j belongs to S; c ji the arc cost, often defined as the distance cost and may include linear or Lagrangian dual variables if the shortest path appears as a sub-problem in column generation or Lagrangian relaxation; B the set of available battery stations; T b the set of time-expanded station nodes associated with b P B. This is determined in a similar way for electric bus scheduling: for each customer i P S, we determine its earliest and latest service start time at a battery station.The earliest service start time equals a i plus U i plus the travel time to the battery station, while the latest service start time equals b i plus U i plus the travel time to the station plus the maximum waiting time.The discretization is then used to sample the start time range, and the time-expanded station nodes are generated.T " U bPB T b is then the set of all time-expanded nodes, each of which corresponds to a battery station with specific starting time a i = b i , i P T.
Unlike the electric bus scheduling problem, the electric truck routing problem may be based on an underlying network with negative cost cycles if the width of time windows is large.
Decision variables are defined as follows.s i the service start time at node i; x ji , g s the same definition as in electric bus scheduling.
The shortest path problem in electric truck routing with the time windows, vehicle capacity and battery renewal is then formulated in Table 2.
The objective (b1) is to minimize the total cost.Constraints (a2) to (a7) have the same meanings as in electric bus scheduling.Constraints (b3), (b4) and (b5) ensure that the requirement of starting time is satisfied.Constraint (b6) guarantees that the vehicle capacity is not violated.
If D is set as a sufficiently large value, the problem becomes the shortest path problem with time windows, which has been proven to be NP-hard in the strong sense [40].Therefore, the shortest path problem in electric truck routing is NP-hard.

Objective Function and Restrictions
Variable Range Equation No.

The Label-Correcting Algorithm
In this section, we present a label-correcting algorithm to solve the proposed shortest path problems.As discussed in Section 1, preprocessing and K-shortest path enumeration have been successfully used in the resource-constrained shortest path problem without negative cost cycles.Although the underlying network for electric bus scheduling does not contain negative cost cycles, it is difficult to employ these approaches due to the battery renewal.In this paper, we develop a unified label-correcting algorithm to find the optimal elementary shortest paths for both the electric bus scheduling and electric truck routing problems.The details of the label-correcting algorithm (LC) are provided in Figure 1.After the algorithm is finished, an optimal elementary path will be outputted.

The Label Operations for Electric Truck Routing
The label operations are much more complicated for electric truck routing due to the existence of negative cost cycles and additional constraints on the vehicle capacity and time windows.Each label is now defined as (i, g, s, v, R), where s represents the earliest time when service can commence at i and v represents the accumulative demands at i. R is a binary resource vector to indicate if Two major operations in the label-correcting algorithm are label extension and label dominance.Label extension is critical to ensure the solution feasibility, while label dominance is crucial to algorithm efficiency.Dominated labels can be deleted from the label pool.

The Label Operations for Electric Bus Scheduling
The label operations are relatively simple for electric bus scheduling due to an acyclic underling network and fixed service start times.In the extension context (state space), each state can be represented by label (i, g), where i is the last reached node and g the accumulative traveling distance since the last battery renewal.c(i, g) represents the accumulative cost of label (i, g) since leaving from the depot.
The first label in the extension space is (o, 0), which means that the vehicle starts from the depot with distance zero and cost zero.Label (i, g) can be extended to label (j, g).If g + d ij ď D. Additionally, g can be determined by a rule: g = 0 if j P T, and g = g + d ij otherwise.For the label dominance relationship, let label (i; g) and label (i, g) be two paths to node i.We define label (i, g) to be dominated by label (i, g) if c(i, g) ď c(i, g) and g ď g.

The Label Operations for Electric Truck Routing
The label operations are much more complicated for electric truck routing due to the existence of negative cost cycles and additional constraints on the vehicle capacity and time windows.Each label is now defined as (i, g, s, v, R), where s represents the earliest time when service can commence at i and v represents the accumulative demands at i. R is a binary resource vector to indicate if every node i P S is visited [8], aimed at avoiding negative cost cycles: initially, all of the positions in R are set to zero; and if a node is visited, the corresponding position in R is set to one.It is not needed to keep track of visiting information for time-expanded station nodes in T. Due to the fixed service starting time, such nodes cannot be visited more than once in a feasible solution.The cost of label (i, g, s, v, R) is c(i, g, s, v, R).
The first label in the extension is (o, 0, 0, 0, R) with R i = 0, i P S. Now, consider that label (i, g, s, v, R) is extended to label (j, g, s, v, R).The extension is feasible if: (1) (3) v + v j ď V; and (4) j has not previously been visited (R j = 0).If feasible, label (j, g, s, v, R) is determined as follows: g = 0 if j P T, and g = g + d ij otherwise; s = max{s + U i + t ij , a j }; v = v + v j ; and R k = R k if k ‰ j, and R j = 1.Then, we discuss the label dominance.Consider that both label (i, g, s, v, R) and label (i, g, s, v, R) have node i as their last reached node.Label (i, g, s, v, R) Note that in the label dominance, Condition (5) requires examining the visit information for each customer iPS.Such a strong condition results in a large number of non-dominated labels.In order to reduce the number of non-dominated labels and the computational time, certain studies proposed a state space relaxation technique (see [5,14,41,42] for more information) to relax Condition (5), say to: |R| ď ˇˇR ˇˇwhere |R| = ř iPS R i and ˇˇR ˇˇ" ř iPS R i .Due to relaxing the visiting information for each individual customer, satisfying Condition (4) in the label extension is not needed.However, some states may correspond to an infeasible solution that includes negative cycles.In order to obtain a feasible solution, we use a decremental state relaxation technique proposed by Righini and Salani [16] that: (i) initially applies the state relaxation to all of the customer nodes; (ii) calls the dynamic programming algorithm LC; (iii) examines if some nodes have been visited more than once in the solution; (iv) if having the nodes with multiple visits, removes the state relaxation, uses the original extension and dominance rules for these nodes and returns to Step (ii); and (v) stops if no node is visited more than once.Both the label-correcting algorithm and the label correcting with state space relaxation will be tested in the computational experiments.

Computational Experiments
In the computational experiments, we tested the performance of the label-correcting algorithm and compared it to one of the best MIP solvers of CPLEX 11.2 [43].We implemented our algorithm in C++ on a Linux Workstation with a 2-GHz CPU and 16 GB of RAM.When implementing the MIP models in CPLEX, we used the big-M technique to linearize g j x ji appearing in Constraints (a6) and (a7), and the big-M was set equal to D.
In the following experiments, the battery service time was set as 10 min; the maximum waiting time at a battery station was set as 30 min; and the sampling unit for generating time-expanded station nodes (T) was set as 1 min.We set the maximum running time of CPLEX and label-correcting algorithm as 3600 CPU s.The computational experiments show that in comparison with the state-of-art MIP solver CPLEX, our algorithms spend much less time in finding optimal solutions.

The Shortest Path in Electric Bus Scheduling with Battery Renewal
For the shortest path problem in electric bus scheduling, we used real-world data from a transit agency in the Bay Area.The transit agency is County Connection, whose data can be obtained from [44].The data are in the GTFS (General Transit Feed Specification) format which is an open format for packaging scheduled service data.They include stop locations and published weekday and weekend schedules.The schedule includes the starting times at the stop locations.In order to conduct more tests, we divided each weekday schedule into two parts and also generated more instances by randomly shifting the trip starting time within [´10, 10] min from the original value.The ending time was also adjusted by keeping the same trip duration.Table 3 describes the problem instances.Columns 3 provides the number of time-expanded station nodes.We determined the distance between each pair of locations by solving a shortest path problem based on the real-world road geometry data provided by NavTeq.We first determined the nearest intersection to each bus stop.We then solved a one-to-one shortest path problem between each intersection using the Dijkstra algorithm.The travel times were then determined using the obtained distances and average vehicle speed of 25 mph.The operational cost of arc (ji) is defined as: (1) if j = o, c ji equals the distance cost plus the fixed vehicle maintenance cost; (2) if i P S, c ji equals the distance cost plus the waiting cost at i; and (3) if i P T, c ji equals the sum of the distance cost, the waiting cost at i and the battery service cost.The fixed vehicle maintenance cost is set as $100; the unit waiting cost is set as $0.1 per minute; and each battery service cost is set as $5.The unit distance cost is estimated based on the data from Haggis and Beback (2010) [35], which show that it can take about 8 h for a battery charger with 400 V/100 A to fully charge a battery whose operational distance is approximately 490 km.The average electricity price is set as 10.26 cents per kWh [45].Finally, the electricity cost per kilometer is 6.61935 cents.The overall cost of arc (ji) is defined as: c ji = c ji -5 ˆ(λ i + λ j ), where λ i and λ j are dual values of nodes i and j.In order to conduct the computational experiments, we have to generate dual variables (e.g., see [14]).First, we determined the average arc operational cost by excluding the fixed vehicle cost and set it as C.Then, we generated an integer value uniformly drawn from [0.7C, 1.3C] and set it as the dual variable.In order to conduct more tests, we generated two different dual variables for each instance using different random seeds.
In accordance with real-world operations, we tested two different values of the maximum operational distance: 120 km and 150 km.We considered two different locations for the battery station.In the first case, the battery station is assumed to be located in the depot, and the computational results are shown in Table 4.In Table 4, Columns 1 and 2 provide the problem instance and dual variable ID.Columns 3 to 6 report the results when the maximum operational distance is 120 km.Column 3 provides the optimal objective value.Column 4 reports the CPU seconds of the CPLEX MIP solver.Columns 5 and 6 present the number of non-dominated labels and CPU seconds when the label-correcting algorithm is used.Columns 7 to 10 report the corresponding results when the maximum operational distance is 150 km.In the second case, the station is assumed to be located in a bus stop that roughly centers on the overall coverage area.Figures 2 and 3 show the comparison of the computational times consumed by CPLEX and label correcting for solving the problem instances for the same scenarios as in Table 4 under this case.Table 4 and Figures 2 and 3 show that the label-correcting algorithm finds the optimal solution very quickly for the instances with less than 500 trips (instances S, W1, W2 and ones that are randomly generated based on them); the computational time is less than two CPU seconds.For the large instances with 947 trips (instances W, Wa, Wb and Wc), the label-correcting algorithm spends less than 10 CPU seconds to obtain optimal solutions.The label-correcting algorithm requires much smaller computational times than CPLEX for all of the instances tested.In particular, for large instances W, Wa, Wb and Wc, CPLEX was terminated due to insufficient memory (see Columns 4 and 8 in Table 4, and the last eight red bars in Figures 2 and 3).The computational time of CPLEX is larger if the maximum operational distance is smaller (for example, see Columns 4 and 8 in Table 4).In contrast, the label-correcting algorithm spends less time to obtain optimal solutions in such situations, which can be confirmed by the lesser number of non-dominated labels (see Columns 5 and 9 in Table 4).Such phenomena may be explained as follows.If the maximum operational distance is smaller, the linear programming model is more tightly constrained and is certainly more difficult for CPLEX to solve.However, in the label-correcting algorithm, the existing labels have to extend to time-expanded station nodes in T more frequently.While at time-expanded station nodes, g of all the labels is zero, and only cost ̅ (i, g) needs to be compared in the label dominance.Therefore, the label dominance is stronger on average at time-expanded station nodes, resulting in lesser number of non-dominated labels in total.The overall computational time is then reduced.     2 and 3 show that the label-correcting algorithm finds the optimal solution very quickly for the instances with less than 500 trips (instances S, W1, W2 and ones that are randomly generated based on them); the computational time is less than two CPU seconds.For the large instances with 947 trips (instances W, Wa, Wb and Wc), the label-correcting algorithm spends less than 10 CPU seconds to obtain optimal solutions.The label-correcting algorithm requires much smaller computational times than CPLEX for all of the instances tested.In particular, for large instances W, Wa, Wb and Wc, CPLEX was terminated due to insufficient memory (see Columns 4 and 8 in Table 4, and the last eight red bars in Figures 2 and 3).The computational time of CPLEX is larger if the maximum operational distance is smaller (for example, see Columns 4 and 8 in Table 4).In contrast, the label-correcting algorithm spends less time to obtain optimal solutions in such situations, which can be confirmed by the lesser number of non-dominated labels (see Columns 5 and 9 in Table 4).Such phenomena may be explained as follows.If the maximum operational distance is smaller, the linear programming model is more tightly constrained and is certainly more difficult for CPLEX to solve.However, in the label-correcting algorithm, the existing labels have to extend to time-expanded station nodes in T more frequently.While at time-expanded station nodes, g of all the labels is zero, and only cost ̅ (i, g) needs to be compared in the label dominance.Therefore, the label dominance is stronger on average at time-expanded station nodes, resulting in lesser number of non-dominated labels in total.The overall computational time is then reduced.   2 and 3 show that the label-correcting algorithm finds the optimal solution very quickly for the instances with less than 500 trips (instances S, W1, W2 and ones that are randomly generated based on them); the computational time is less than two CPU seconds.For the large instances with 947 trips (instances W, Wa, Wb and Wc), the label-correcting algorithm spends less than 10 CPU seconds to obtain optimal solutions.The label-correcting algorithm requires much smaller computational times than CPLEX for all of the instances tested.In particular, for large instances W, Wa, Wb and Wc, CPLEX was terminated due to insufficient memory (see Columns 4 and 8 in Table 4, and the last eight red bars in Figures 2 and 3).The computational time of CPLEX is larger if the maximum operational distance is smaller (for example, see Columns 4 and 8 in Table 4).In contrast, the label-correcting algorithm spends less time to obtain optimal solutions in such situations, which can be confirmed by the lesser number of non-dominated labels (see Columns 5 and 9 in Table 4).Such phenomena may be explained as follows.If the maximum operational distance is smaller, the linear programming model is more tightly constrained and is certainly more difficult for CPLEX to solve.However, in the label-correcting algorithm, the existing labels have to extend to time-expanded station nodes in T more frequently.While at time-expanded station nodes, g of all the labels is zero, and only cost c(i, g) needs to be compared in the label dominance.Therefore, the label dominance is stronger on average at time-expanded station nodes, resulting in lesser number of non-dominated labels in total.The overall computational time is then reduced.

The Shortest Path in Electric Truck Routing with Battery Renewal
As discussed in Section 2.2, the current battery technique allows a truck to run about 120 to 140 km [39,40].We tested two different values of the maximum operational distance: one was 130 km, and the other one was shorter, 100 km.In order to test the impact of the maximum operational distance in the context of real-world roads, we calculated the travel distance between two locations based on the road geometry data provided by NavTeq.We did not use the standard benchmark instances by [46].The South Bay Area in California was selected as our case study.First, we determined |S| locations by randomly generating latitude and longitude in the South Bay Area.Then, we conducted the point-to-curve map matching to project the random location to the link in the road geometry network with the shortest perpendicular distance [47].The point on the projected link was selected as the customer location.Finally, we solved a one-to-one shortest distance problem between each customer location using the Dijkstra algorithm based on the road geometry network.The travel times were then determined using the obtained distances and the average vehicle speed of 40 mph.
The demand at each location was randomly selected from 10, 20 and 30.The vehicle capacity was set as 400.The earliest service start time (a i ) at node i P S was drawn from 8 a.m. to 6 p.m.As is well known, the width of time windows has a great impact on the computational time.We tested three scenarios in terms of the width range of time windows: [5,20] min, [5,40] min and [5,60] min.In each scenario, the width of time windows at each node iPS was uniformly drawn from the given range.Table 5 presents the summary of generated problem instances.The operational cost of arc ji is defined as the distance cost.If i is a time-expanded station node (i.e., i P T), an additional $5 is added for battery service cost.The unit distance cost was estimated based on the data from Ford Transit Connect [48], which shows that it can take about 8 h for a 6.6-kilowatt charger to fully charge a battery whose operational distance is approximately 120 km.The average electricity price was set as 10.26 cents per kWh [43].Finally, the electricity cost per kilometer is 4.207677 cents.The overall cost of arc (ji) is defined as: c ji = c ji -5 ˆ(λ i + λ j ), where λ i are λ j generated in a similar way for electric bus scheduling.We first briefly show the effectiveness of the state relaxation in Figure 4 with CPU seconds from eight problem instances.Figure 4 clearly shows that the state relaxation effectively reduces the computational time.From now on, we will only use the label correcting with state relaxation for further discussions.Table 6 presents the computational results for the width of time window [5,20].Columns 3 to 7 report the results when the maximum operational distance is 100 km.The column definitions are similar to the ones in Table 4 with the exception of Column 4, which presents the optimality gap of CPLEX, defined as|(objective value-optimal value)/objective value|, among which, the objective value is obtained from the MIP solver of CPLEX; the optimal value is from the label-correcting algorithm; and the absolute value operator is used since both values are negative.Columns 8 to 12 report the corresponding results when the maximum operational distance is 130 km.which, the objective value is obtained from the MIP solver of CPLEX; the optimal value is from the label-correcting algorithm; and the absolute value operator is used since both values are negative.Columns 8 to 12 report the corresponding results when the maximum operational distance is 130 km.Table 6 shows that if the width of time windows is randomly drawn from [5,20] min, the label correcting with state relaxation finds an optimal solution within 0.2 s for the instances with 50 and 100 customers.If the number of customers is 150 or 200, the CPU seconds are in the range of [0.14, 5.51] s.The label-correcting algorithm requires much smaller computational times than CPLEX for all of the instances with the width of time windows in [5,20].Figure 5 shows the comparison of computational times by CPLEX and label correcting on electric truck routing with the time window width in [5,40] min and with a maximum distance of 100 km. Figure 6 shows the corresponding comparison with a maximum distance of 130 km. Figure 7a,b shows the comparisons of computational times with the time window width in [5,60] min, with a maximum distance of 100 km and 130 km, separately.We can find when the width of time windows is in the range [5,40], the label-correcting algorithm still finds an optimal solution for the instances with no more than 100 customers within 3 min (see Figure 5).When the width of time windows is in [5,60], the computational time is less than 5 min for the instances with 50 customers (see Figure 6).However, if both the number of customers and the width of time windows increase, the computational time of the label correcting often becomes substantially longer, for example instances 150a to 150e with time windows in [5,40] in Figures 5  and 6; and several instances cannot be solved by the label-correcting algorithm within one CPU hour.In comparison with the MIP solver of CPLEX, the label-correcting algorithm performs much better for most instances tested.In addition, similar to the cases in electric bus scheduling, if the maximum operational distance is smaller, the computational time of CPLEX becomes longer, while on average, the label-correcting algorithm spends less time to obtain an optimal solution.In addition, it is worthy to mention that we generated relatively large dual variables, which result in more negative cost cycles (see the objective values in Columns 3 and 8 in Table 6) and longer computational time (see Columns 5, 7, 10 and 11 in Table 6, Figures 5-7).
Finally, the computational experiments show that the shortest path problem in electric truck routing is much more difficult to solve than the shortest path problem in electric bus scheduling.It takes the label-correcting algorithm less than 9 s to find the shortest paths for bus scheduling problems with 947 trips, while the label correcting may spend a much longer time to find the shortest paths for a routing instance with 100 customers and relatively wide time windows.The long computational time in electric truck routing is mainly caused by the existence of negative cost cycles in the underlying network, which leads to much more complicated label extension and dominance.The comparison of the number of non-dominated labels in electric bus scheduling and electric truck routing supports such an observation.Table 6 shows that if the width of time windows is randomly drawn from [5,20] min, the label correcting with state relaxation finds an optimal solution within 0.2 s for the instances with 50 and 100 customers.If the number of customers is 150 or 200, the CPU seconds are in the range of [0.14, 5.51] s.The label-correcting algorithm requires much smaller computational times than CPLEX for all of the instances with the width of time windows in [5,20].Figure 5 shows the comparison of computational times by CPLEX and label correcting on electric truck routing with the time window width in [5,40] min and with a maximum distance of 100 km. Figure 6 shows the corresponding comparison with a maximum distance of 130 km. Figure 7a,b shows the comparisons of computational times with the time window width in [5,60] min, with a maximum distance of 100 km and 130 km, separately.We can find when the width of time windows is in the range [5,40], the label-correcting algorithm still finds an optimal solution for the instances with no more than 100 customers within 3 min (see Figure 5).When the width of time windows is in [5,60], the computational time is less than 5 min for the instances with 50 customers (see Figure 6).However, if both the number of customers and the width of time windows increase, the computational time of the label correcting often becomes substantially longer, for example instances 150a to 150e with time windows in [5,40] in Figures 5 and 6; and several instances cannot be solved by the label-correcting algorithm within one CPU hour.In comparison with the MIP solver of CPLEX, the label-correcting algorithm performs much better for most instances tested.In addition, similar to the cases in electric bus scheduling, if the maximum operational distance is smaller, the computational time of CPLEX becomes longer, while on average, the label-correcting algorithm spends less time to obtain an optimal solution.In addition, it is worthy to mention that we generated relatively large dual variables, which result in more negative cost cycles (see the objective values in Columns 3 and 8 in Table 6) and longer computational time (see Columns 5, 7, 10 and 11 in Table 6, Figures 5 to 7).Finally, the computational experiments show that the shortest path problem in electric truck routing is much more difficult to solve than the shortest path problem in electric bus scheduling.It takes the label-correcting algorithm less than 9 s to find the shortest paths for bus scheduling problems with 947 trips, while the label correcting may spend a much longer time to find the shortest paths for a routing instance with 100 customers and relatively wide time windows.The long computational time in electric truck routing is mainly caused by the existence of negative cost cycles in the underlying network, which leads to much more complicated label extension and dominance.The comparison of the number of non-dominated labels in electric bus scheduling and electric truck routing supports such an observation.

Conclusions and Future Research
In this paper, we study the shortest path problems in emerging electric vehicle dispatching, where a fully-charged battery allows a vehicle to run a limited operational distance and the battery near depletion has to be charged or exchanged with a fully-charged one at a battery management facility.The battery renewal makes the problem different from the resource-constrained shortest path problems in the literature.We investigate the shortest paths for two important applications: one is electric transit bus scheduling, and the other is electric truck routing with time windows.We develop a label-correcting algorithm to solve these shortest path problems.Since the underlying network of Finally, the computational experiments show that the shortest path problem in electric truck routing is much more difficult to solve than the shortest path problem in electric bus scheduling.It takes the label-correcting algorithm less than 9 s to find the shortest paths for bus scheduling problems with 947 trips, while the label correcting may spend a much longer time to find the shortest paths for a routing instance with 100 customers and relatively wide time windows.The long computational time in electric truck routing is mainly caused by the existence of negative cost cycles in the underlying network, which leads to much more complicated label extension and dominance.The comparison of the number of non-dominated labels in electric bus scheduling and electric truck routing supports such an observation.

Conclusions and Future Research
In this paper, we study the shortest path problems in emerging electric vehicle dispatching, where a fully-charged battery allows a vehicle to run a limited operational distance and the battery near depletion has to be charged or exchanged with a fully-charged one at a battery management facility.The battery renewal makes the problem different from the resource-constrained shortest path problems in the literature.We investigate the shortest paths for two important applications: one is electric transit bus scheduling, and the other is electric truck routing with time windows.We develop a label-correcting algorithm to solve these shortest path problems.Since the underlying network of

Conclusions and Future Research
In this paper, we study the shortest path problems in emerging electric vehicle dispatching, where a fully-charged battery allows a vehicle to run a limited operational distance and the battery near depletion has to be charged or exchanged with a fully-charged one at a battery management facility.The battery renewal makes the problem different from the resource-constrained shortest path problems in the literature.We investigate the shortest paths for two important applications: one is electric transit bus scheduling, and the other is electric truck routing with time windows.We develop a label-correcting algorithm to solve these shortest path problems.Since the underlying network of electric truck routing may contain negative cost cycles, the state space relaxation technique is incorporated into the label correcting to reduce the computational time.
In the computational experiments, the travel time and distance are determined based on the real-world road geometry data.Other types of data are obtained from the real-world or randomly generated.The label-correcting algorithm spends less than 9 s to find the shortest paths for electric bus scheduling problems with 947 trips.Due to the existence of negative cost cycles, the shortest path problem in electric truck routing is much more difficult to solve than in the electric bus scheduling.The label correcting with state space relaxation quickly obtains optimal solutions for the instances with 200 customers and the width of time windows in [5,20] min.However, if both the number of customers and the width of time windows increase, the computational time often becomes substantially longer.We compare the label-correcting algorithm developed with the CPLEX MIP solver.The computational results show that the label-correcting algorithm performs much better than the CPLEX for the most instances tested, since the former is specially designed to solve the shortest path problem in electric vehicle dispatching.If the maximum operational distance is smaller, CPLEX spends a longer time for the optimal solution, while the label-correcting algorithm, on average, requires a shorter time.
The shortest path problem is a critical component in column generation algorithms since the sub-problem that is generally a shortest path problem needs to be repeatedly solved.Column generation has been successfully used in many studies to solve complicated integer programming problems [6,7].Therefore, it is very important to develop an efficient algorithm for the shortest path problem with battery renewal.We expect that our study can play an important role in electric vehicle optimization problems.
Future work can include the development of new algorithms to reduce the computational time for instances with wide time windows.The shortest path models and algorithms can be incorporated into a column generation framework to solve electric vehicle dispatching.Investigating the location problem of battery management facilities is another topic.

Sustainability 2016, 8 , 607 11 of 18 Figure 2 .
Figure 2. The computational times by CPLEX and label correcting on scheduling with a maximum distance of 120 km and the battery station centering on the service area.

Figure 3 .
Figure 3.The computational times by CPLEX and label correcting on scheduling with a maximum distance of 150 km and the battery station centering on the service area.

Figure 2 .
Figure 2. The computational times by CPLEX and label correcting on scheduling with a maximum distance of 120 km and the battery station centering on the service area.

Figure 2 .
Figure 2. The computational times by CPLEX and label correcting on scheduling with a maximum distance of 120 km and the battery station centering on the service area.

Figure 3 .
Figure 3.The computational times by CPLEX and label correcting on scheduling with a maximum distance of 150 km and the battery station centering on the service area.

Figure 3 .
Figure 3.The computational times by CPLEX and label correcting on scheduling with a maximum distance of 150 km and the battery station centering on the service area.

Figure 4 .
Figure 4.The performance of the dynamic programming with state relaxation.

Figure 4 .
Figure 4.The performance of the dynamic programming with state relaxation.

Figure 5 .
Figure 5.The computational times by CPLEX and label correcting on electric truck routing with the time window width in [5, 40] min and a maximum distance of 100 km.Figure 5.The times by CPLEX and label correcting on electric truck routing with the time window width in [5, 40] min and a maximum distance of 100 km.

Figure 5 .
Figure 5.The computational times by CPLEX and label correcting on electric truck routing with the time window width in [5, 40] min and a maximum distance of 100 km.Figure 5.The times by CPLEX and label correcting on electric truck routing with the time window width in [5, 40] min and a maximum distance of 100 km.

Figure 6 .Figure 7 .
Figure 6.The computational times by CPLEX and label correcting on electric truck routing with the time window width in [5, 40] min and a maximum distance of 130 km.

Figure 6 . 18 Figure 6 .Figure 7 .
Figure 6.The computational times by CPLEX and label correcting on electric truck routing with the time window width in [5, 40] min and a maximum distance of 130 km.

Figure 7 .
Figure 7.The computational times by CPLEX and label correcting on electric truck routing with the time window width in [5, 60] min.(a) with a maximum distance of 100 km; (b) with a maximum distance of 130 km.

Table 1 .
The mathematical model of the shortest path problem in electric transit bus scheduling with battery renewal.

Table 2 .
The mathematical model of the shortest path problem in electric truck routing with the time windows.

Table 3 .
Description of instances in electric bus scheduling.

Table 4 .
Results on scheduling with the battery station in the depot.
* CPLEX was terminated due to being out of memory; +: no an optimal solution was found within 1 CPU hour.

Table 4 and
Figures

Table 4 and
Figures

Table 5 .
Description of the instances in electric truck routing.