Next Article in Journal
The 4th Industrial Revolution Brings a Change in the Design Paradigm for New and Retrofitted Buildings
Next Article in Special Issue
Advanced ECMS for Hybrid Electric Heavy-Duty Trucks with Predictive Battery Discharge and Adaptive Operating Strategy under Real Driving Conditions
Previous Article in Journal
Opaque Coloured Building Integrated Photovoltaic (BIPV): A Review of Models and Simulation Frameworks for Performance Optimisation
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Energy Saving-Oriented Multi-Depot Vehicle Routing Problem with Time Windows in Disaster Relief

Key Laboratory of Intelligent Control and Optimization for Industrial Equipment of Ministry of Education, School of Control Science and Engineering, Dalian University of Technology, Dalian 116081, China
*
Author to whom correspondence should be addressed.
Energies 2023, 16(4), 1992; https://doi.org/10.3390/en16041992
Submission received: 16 January 2023 / Revised: 8 February 2023 / Accepted: 15 February 2023 / Published: 17 February 2023

Abstract

:
This paper studies the distribution of emergency relief for electric vehicles (EVs), which considers energy saving, multi-depot, and vehicle routing problems with time windows, and the named energy saving-oriented multi-depot vehicle routing problem with time windows (ESMDVRPTW). Our aim is to find routes for EVs such that all the shelter demands are fulfilled during their time windows and the total cost traveled by the fleet is minimized. To this end, we formulate the ESMDVRPTW as a mixed-integer linear programming model. Since the post-disaster transportation network contains a large number of vertices and arcs composed of vertices, we propose a two-stage approach to solve the ESMDVRPTW. The first stage is to obtain the minimal travel cost between any two vertices in real-time on a post-disaster transportation network using the proposed Floyd algorithm combined with the neighboring list (Floyd-NL algorithm). In the second stage, we develop the genetic algorithm (GA) incorporating large neighborhood search (GA-LNS), which determines the delivery scheme of shelters. Simulation results of the MDVRPTW benchmark illustrate that the performance of the GA-LNS is better than GA, simulated annealing (SA) and tabu search (TS). Finally, case studies are constructed on two real cases acquired from the OpenStreetMap (OSM) generated by the Quantum Geographic Information System (QGIS) in Ichihara city, Japan, and the test results of case studies show the effectiveness of the proposed two-stage approach.

1. Introduction

With the continuous development of human society and economy, the ecological environment has been seriously damaged, causing natural disasters to occur frequently. When a disaster occurs, emergency rescue departments occupy a crucial position, which need to carry out a rapid and reasonable rescue. One of the most critical tasks is to dispatch EVs to transport needed materials to the shelter, such as medical bags, tents, and food. Since the urgency of shelter is different, it is necessary to set the time window in shelter to provide rescue reasonably. Then, we consider the multiple depots in post-disaster transportation networks to make emergency rescue more flexible. Furthermore, since EVs have their energy consumption when driving on the arc, the saving energy of EVs means that EVs can provide materials for more shelters under the same energy consumption. In summary, the emergency logistics within our work is formulated as an energy saving-oriented multi-depot vehicle routing problem with time windows (ESMDVRPTW).
In the field of traffic planning, the vehicle routing problem (VRP) is a popular problem. The VRP was first proposed by the Ref. [1] in 1959, and its variants have been widely studied in the literature. The capacitated VRP (CVRP) is also a very important consideration in practical application. In the Ref. [2], the authors proposed a vehicle load constraint, and in the design of the objective function, the study not only considered minimizing total travel cost, but also considered minimizing the travel distance of each arc. Minimizing the travel distance of each arc can ensure that there is not much difference in the workload of each driver, ensuring the fairness of workload and the balance of income. In general, the capacity constraint considered by the CVRP is that the weight of the materials carried by the vehicle cannot exceed the weight delivered to the customer. Tao et al. [3] addressed the CVRP with three-dimensional loading. The author considered the shape constraint of three-dimensional loaded materials, which was a complex problem combining three-dimensional loaded materials with CVRP. In the Ref. [4], the authors presented a VRP of simultaneous pickup and delivery, which considered how customers had both pickup and delivery requests. The authors presented an adaptive large neighborhood search algorithm (ALNS) to minimize the working time of EVs and the numbers of EVs.
Time window constraint is also a factor that is often considered in VRP. Sánchez et al. [5] presented a mixed-integer linear programming model to solve the electric location routing problem with time windows (E-LRPTW), which obtained the location of EV recharging stations under different distribution services. In this model, the author considered the state of charge, battery capacities and the time windows of customers and used the clustering strategy based on the k-means algorithm to get the potential location for recharging stations. In the Ref. [6], the authors proposed an electric vehicle routing problem with time windows (EVRPTW) considering different EV recharging strategies. The authors used an ALNS to solve the proposed problem and verified that the cost of a partial recharging strategy is less than the cost of a full recharging strategy.
The multi-depot vehicle routing problem with time windows (MDVRPTW) is also an extension of a VRP application. In the Ref. [7], the authors presented a practical logistics problem applied to the delivery and installation of electronic products. The author divided the delivery vehicle and the installation vehicle into two parts. However, in order to improve the service quality, the difference between the delivery vehicle arriving and the installation vehicle arriving at the same customer should not be too large, which is a time constraint problem. There is more than one depot for electronic products, so the author considered this practical logistics problem as MDVRPTW. Adelzadeh et al. [8] studied the practical application of distribution by using different kinds of vehicles. Different kinds of vehicles represented different capacity, speed and cost of consumption, which made the study more complicated. The objective functions considered by the authors were minimizing the driving distance and minimizing the waiting time. Reducing the driving distance can reduce the operating cost of the enterprise, reduce the waiting time can improve the quality of customer service, and also increase the enterprise’s reputation and income.
Additionally, there is more and more research on applying VRP and some VRP variants to emergency logistics. In the Ref. [9], they took into account that in emergency logistics, vehicle speed will be changed with different kinds of disasters and proposed a bio-inspired algorithm, which selected the optimal paths from alternative paths considering travel time. In the Ref. [10], a greedy-search-based multi-objective genetic algorithm was proposed to solve the emergency rescue logistics. The objective function was to minimize the unsatisfied demand for resources, total travel time, and total transportation cost to generate distribution tasks for each distribution center. In the Ref. [11], the authors considered a new optimization model, which is based on the actual problem of a large number of disaster-affected sites, relatively concentrated distribution, and a small number of emergency supplies. In the Ref. [12], they presented a double-layer ant colony optimization algorithm. The algorithm determines the feasible solution by minimizing the cost of emergency logistics transportation, which improves the distribution efficiency. Therefore, the vehicle routing and scheduling problems of emergency logistics are worth studying.
In terms of vehicle energy savings, Li et al. [13] studied an advanced engine thermal management system that reduced energy consumption by controlling problems with high precision. In the system, there are many time-varying disturbances or time delays, which brings challenges to the temperature tracking of the actuator. To solve this problem, an adaptive optimal control strategy was designed by combining state, disturbance and energy consumption optimization models. In the experiment, the steady-state error of temperature can be achieved within 0.3 °C by this strategy, and high-precision temperature tracking can also be achieved under the constantly changing complex working conditions. In the Ref. [14], the authors considered energy management on a hydrogen powered vehicle. Compared with the traditional rule based on expert experience, the author proposed a multiple linear regression model to learn rule parameters, which was called the fuzzy rule-based strategy. In order to solve the path, the author firstly used the dynamic programming (DP) algorithm to solve the energy calculation of the off-line path, and then used fuzzy rules to select the path. Finally, the author compared the rules based on expert experience and fuzzy rules based on a genetic algorithm. Hydrogen energy consumption decreased by 1.5% and 10%, respectively. Hou et al. [15] proposed a multi-layered model predictive control framework, which combined the life management and real-time speed of fuel cells. In the upper layer, the SOC state of the battery was solved by convex optimization. In the lower layer, a model predictive control based on the equivalent consumption minimum strategy was designed according to the SOC state of the upper layer. Compared with the rule-based strategy, the multi-layered model predictive control can save more than 10% of energy. Zhu et al. [16] proposed a Bayesian-Gated Recurrent Unit model (B-GRU) that combined the Bayesian Theory and GRU to quantify the uncertainty of the degradation prediction results for PEMFCs.
In addition, we have some relevant research basis for VRP, where the VRP is extended to the application of hybrid EV. In the Ref. [17], the authors studied the finite time domain optimal control problem of discrete power systems in a continuous domain, which was applied to the optimal control problem of hybrid EV power systems. Combined with EV and VRP, in the Ref. [18], minimized battery energy consumption of EV was taken as the optimization objective, and the influence of slope on battery energy consumption was considered. In terms of solving algorithms, this paper presented a method combining 2-opt and GA to solve this problem. However, the slope was the value set by our simulation, which was not combined with the actual geographical data. In the Ref. [19], the actual slope information was extracted and applied to calculate the EV energy consumption. In another paper, we considered the energy consumption of EVs combined with the energy consumption of shelters. Each shelter had a different initial charge and rate of consumption. EVs needed to be able to deliver power to shelters in a timely manner. This paper is currently under review. The application of a vehicle routing problem with timed-paths (VRPTP) in emergency logistics was studied in the Ref. [20].
The main contributions of this paper are as follows: (1) We consider the ESMDVRPTW on a post-disaster transportation network and design the cost function aimed at reducing the energy consumption of EVs, which is rarely considered; (2) to solve the ESMDVRPTW, we propose a two-stage approach. The first stage is to obtain the minimal travel cost between any two vertices in real time by Floyd-NL. Compared with the Floyd Algorithm, the complexity of Floyd-NL is less in solving a post-disaster transportation network; (3) the second stage is to solve the delivery scheme by GA-LNS. Differently from GA, we use a new destory and repair operator in GA-LNS, which can expand the neighborhood of the current delivery scheme to get a better delivery scheme.
The remainder of the paper is organized as follows. The problem description is present in Section 2. Section 3 introduces the first stage of our approach, which uses the Floyd-NL. In Section 4, we introduce the second stage of our approach, which determines the delivery scheme of shelters. Simulation results and examples are shown in Section 5. Conclusions are summarized in Section 6.

2. Problem Formulation and Definition

The ESMDVRPTW can be defined on an incomplete and undirected graph G = ( V , E ) , where V = { v 1 , , v n } represents the vertex set. A vertex set consists of three subsets: V 1 , V 2 and V 3 , where V 1 = { v 1 , , v α } is a set of the α depots, V 2 is the set of shelters that needs to be serviced, denoted by { v α + 1 , , v α + β } , and V 3 = { v α + β + 1 , , v n } represents the set of vertices along the path. E V × V denotes the set of all available arcs on the post-disaster transportation network. Each arc ( v i , v j ) E , i j associates with an energy consumption c i j of the EV and a travel time t i j of the EV.
K denotes a fleet of homogeneous EVs, which has the identical battery capacity Q with a constant speed v. The materials capacity of each EV is denoted by q. As for shelters, each shelter i requires a material demand d i . Furthermore, each shelter i V 2 must be serviced within a time window [ l i , r i ] . l i is the earliest service time of shelter i. When the k-th EV arrives at shelter i before l i , the EV should wait until l i . r i represents the latest service time of shelter i. Service time at shelter i is denoted by s i . For the sake of convenience, the time windows of all depots are [ l 0 , r 0 ] . All the EVs cannot leave depots earlier than l 0 and must return no later than r 0 .
We define the decision variable x i j k as follows:
x i j k = 1 if   the   k -th   EV   travels   from   i   to   j 0 otherwise .
Another decision variable y i k denotes the arrival time of the k-th EV to service shelter i, and we assume y 0 k = l 0 . Let x, y be matrices with proper dimensions holding all variables.
The mathematical model of the ESMDVRPTW can be shown as
min F ( x , y ) = c ( x ) + T ( x , y )
s . t . k K i V x i j k = 1 , j V 2
i V x i h k j V x h j k = 0 , h V 2 V 3 , k K
h V 1 i V 2 V 3 x i h k = h V 1 j V 2 V 3 x h j k 1 , k K
i V j V 2 x i j k · d j q , k K
i V j V x i j k · c i j Q , k K
y i k + s i + t i j M i j ( 1 x i j k ) y j k , i V , j V 2 V 3 , k K
y i k + s i + t i 0 M i 0 ( 1 x i 0 k ) r 0 , i V 2 V 3 , k K
y 0 k = l 0 .
In the equation, F ( x , y ) represents the cost function, where x = { x i j k = 0 , 1 , i , j V , k K } , y = { y i k , i V , k K } . The first term c ( x ) of F ( x , y ) is the total energy cost of EVs after all the shelter demands are fulfilled and all EVs return to depots, where we can define c ( x ) , as described in Equation (11). c d can be thought as the cost for one unit of energy.
c ( x ) = c d k K i , j V c i j x i j k
Furthermore, the last term T ( x , y ) of F ( x , y ) is the total cost of violating time windows. T ( x , y ) is in Equation (12). c t is the cost for one unit of violating time windows.
T ( x , y ) = c t ( k K i V max { y i k r i , 0 } + k K i V max { l i y i k , 0 } ) .
Equation (3) requires that each shelter is served by an EV once. Equation (4) states flow conservation constraints. Equation (5) shows that each EV starts from a depot and stops at a depot. Equation (6) requires that the sum of material demand of each path cannot exceed the EV capacity. Equation (7) requires that the energy consumption of each path cannot exceed the battery capacity of EV. Equation (8) ensures that EVs access i and j in order, and the constant M i j is defined as large enough to eliminate subtours. Equation (9) requires that EVs return to depots no later than r 0 . Equation (10) states that the EVs start from the depot at l 0 .

3. The First Stage of the Approach: Floyd-NL Algorithm

Based on the mathematical model of ESMDVRPTW, the first stage of our approach is the Floyd-NL algorithm, which obtains the minimal travel cost between any two vertices on a post-disaster transportation network. When the disaster occurs, the transportation network changes, and some arcs are even impassable. We need the Floyd-NL algorithm to calculate the minimal travel cost between any two vertices in real-time again.
The Floyd algorithm [21] is an algorithm to find the shortest path in a weighted graph with positive or negative edge weights (but no negative period), which is mainly applied to a fully connected graph. However, the graph of a disaster situation in actual cases is usually incomplete. The Floyd-NL algorithm is proposed to reduce the number of traverse arcs to reduce the algorithm running time. We will explain the Floyd-NL algorithm in the Algorithm 1.
Algorithm 1 Floyd-NL algorithm
Input: s t a r t _ p o i n t , e n d _ p o i n t , the travel cost c i j
Output: o p t i m a l _ p a t h , d i s t
1:
Define routing matrix p, neighboring list n e i g h b o r i n g _ l i s t
2:
fori in [ 1 : n ]  do
3:
    for j in [ 1 : n ]  do
4:
         p ( i , j ) = j ;
5:
         d i s t ( i , j ) = c i j ;
6:
        if  c i j is not equal to infinity then
7:
            n e i g h b o r i n g _ l i s t { i } = [ n e i g h b o r i n g _ l i s t { i } , j ] ;
8:
        end if
9:
    end for
10:
end for
11:
forh in [ 1 : n ]  do
12:
    for i in [ 1 : n ]  do
13:
        for j in n e i g h b o r i n g _ l i s t { h }  do
14:
           if  d i s t ( i , j ) > d i s t ( i , h ) + d i s t ( h , j )  then
15:
                d i s t ( i , j ) = d i s t ( i , h ) + d i s t ( h , j ) ;
16:
                p ( i , j ) = p ( i , h ) ;
17:
           end if
18:
        end for
19:
    end for
20:
end for
21:
Find the optimal route o p t i m a l _ p a t h between the s t a r t _ p o i n t and e n d _ p o i n t through the routing matrix p;
In the Algorithm 1, we assume that if the arcs exist between any two vertices, then we set the actual cost between them. However, the cost between non-neighboring vertices is set to infinity. By dealing with the non-neighboring vertices in the initial neighboring matrix of vertices, we can obtain the vertex neighboring table without infinity. First, we use QGIS software to extract geographic information data. QGIS is a desktop GIS software and provides data display, editing and analysis functions. Because the number of neighboring vertices of a vertex is less than the total number of all vertices through the observation of the datasets extracted by QGIS, through the neighboring list, we no longer need to traverse non-neighboring vertices in the operation of the algorithm. When solving our problem, this improvement can efficiently reduce the computational complexity compared with the Floyd algorithm.
Two parts can consider the computational complexity of the Floyd-NL algorithm. The first part is from line 1 to line 10 in the pseudocode, which contains two n loops. Thus, the computational complexity of this part is O ( n 2 ) . The other part is from line 11 to line 20 in the pseudocode, which contains three loops. The first and second are n loops. The length of each element in n e i g h b o r i n g _ l i s t represents the total number of neighboring vertices for each shelter. As we mentioned in the last paragraph, we can see that the number of neighboring vertices of a vertex is less than the total number of all vertices. Therefore, we assume that the length of elements in n e i g h b o r i n g _ l i s t is z i , where z i λ n , λ is the maximum length of z i . Thus, the third loop is at most λ , and the computational complexity of this part is O ( λ n 2 ) . Based on the above discussion, the computational complexity of the Floyd-NL algorithm is O ( λ n 2 ) . As we know, the computational complexity of the Floyd algorithm is O ( n 3 ) . As a result, the improvement of the Floyd algorithm in our problem can reduce the computational complexity effectively.
In order to verify the effectiveness of the Floyd-NL algorithm, we use QGIS to extract some real-world traffic data, which contains 445 nodes in total and 355 edges that can be connected between vertices. We select six groups of different start vertices and end vertices and apply the Floyd-NL algorithm and the Floyd algorithm to obtain the minimal travel cost between them. The starting vertices and ending vertices of the six groups are [ 6 , 122 ] , [ 7 , 147 ] , [ 12 , 110 ] , [ 16 , 113 ] , [ 19 , 162 ] , [ 21 , 102 ] , respectively. In Table 1, the first row is the running time of the Floyd-NL algorithm (unit: second), and the second row is the running time of the Floyd algorithm (unit: second). The results show that the running time of the Folyd-NL algorithm is much lower than that of the Floyd algorithm, which illustrates the effectiveness of the Floyd-NL algorithm. The third row represents the minimal energy cost calculated by the Floyd algorithm and Floyd-NL algorithm (unit: watt). In terms of calculating the minimal energy cost, both the Floyd algorithm and Floyd-NL algorithm can calculate the optimal value, but the Floyd-NL algorithm can effectively reduce the running time.

4. The Second Stage of the Approach: GA-LNS Algorithm

The GA algorithm is a highly parallel, random, and adaptive optimization algorithm. In order to obtain a better delivery scheme, we add the LNS algorithm [22] to the genetic algorithm. The LNS algorithm can search for a better solution in the neighborhood of a solution. The flowchart of the GA-LNS algorithm is given in Figure 1. We will introduce the GA-LNS algorithm in detail to find the delivery scheme of each shelter.

4.1. Encode

Encoding is abstraction of the problem to be solved into a series of specific symbols, which are arranged in a certain order through a certain mechanism. We will use a simple example to illustrate how our problem was encoded.
We assumed the number of shelters β was five, the number of depots α was two, and the number of vehicles | K | was two. Figure 2 shows a feasible chromosome as 23,645, where the depot is denoted by 0, 1. The chromosome sequence is segmented according to the mathematical model constraints in Section 2. The chromosome may be divided into two parts. Part one is 23, and part two is 645. We calculated the distance between each depot and the first node A of each part, and added the nearest depot before A; at the same time, we calculated the distance between the last node B of each part and the depot, and added the nearest depot after node B. As shown in Figure 2, we generated two routes, 0 2 3 1 , 1 6 4 5 0 .

4.2. Population Initialization

The size of the population depends on the properties of the problem. In general, it contains several hundred or thousands of possible solutions. Within our work, each solution consists of some shelters, and the EV starts from a depot and ends at a depot after service. Therefore, the form of initial solutions equals the form of encoding, and the initial solutions are chosen from the total population.

4.3. Fitness Function

The fitness of chromosomes refers to the measure of the dominance of chromosomes in population survival, which is used to distinguish the quality of chromosomes. Fitness is calculated using the fitness function. The fitness function is also called the evaluation function, which mainly judges the fitness of a chromosome through chromosome characteristics.
Since the above encoding cannot consider that each delivery scheme meets the EV time window constraints, we need to use a function with penalty terms to solve the problem. In addition, chromosomes with large fitness values need to be selected when selecting operations. Therefore, we set the fitness function as 1 / F ( x , y ) .

4.4. Selection

Roulette wheel selection is used in the proposed method for probabilistic selection based on chromosome performance. The roulette wheel selection method scales the fitness values of individuals in the population so that the sum of the rescaled fitness values equals 1. In roulette, the probability of selecting a chromosome is directly proportional to their fitness. The process of selecting chromosomes is shown in Figure 3, where the fitness of chromosome 1 is greater than that of other chromosomes, so chromosome 1 will be selected as the optimal solution at present.

4.5. Crossover

The process of crossover generating the new offspring is shown in Figure 4. We used the partial-mapped crossover approach to crossover the chromosomes. The crossover can improve the solution diversity. We give two parent chromosomes, randomly select two crossing positions a and b, such as a = 2 , b = 5 , and then the cross-fragment of parent two is exchanged with the cross-fragment of parent 1. It is noticed that there exists the repeated gene after crossover. We give the following corresponding relationship in the lower part of Figure 4. If the repeated gene occurs, change the first repeated gene observing the corresponding relationship.

4.6. Mutation

In the mutation operation, we use insertion mutation to mutate the chromosomes. The mutation process is shown in Figure 5. The parent chromosome randomly selects one gene, and inserts this gene to a random position, then the offspring chromosome is generated.

4.7. Large Neighborhood Search

If only the GA is used, there is no good search for the neighborhood of the solution, only random, crossover and mutation. These are not enough to solve well, so we added a LNS algorithm based on the GA. The advantages of a GA based on population and LNS for neighborhood expansion are combined. LNS is improved step by step by using Destroy and Repair alternately. With Algorithm 2, we can see the flow of the LNS algorithm.
Algorithm 2 LNS algorithm
Input: an initial solution S 0
1:
S b e s t = S 0 ;
2:
repeat
3:
     S r = r e p ( d e s t ( S 0 ) ) ;
4:
    if  f i t n e s s ( S r ) > f i n t e s s ( S 0 )  then
5:
         S 0 = S r ;
6:
    end if;
7:
    if  f i t n e s s ( S r ) > f i n t e s s ( S b e s t )  then;
8:
         S b e s t = S r ;
9:
    end if;
10:
until (stop criterion is met)
11:
return   S b e s t
In Algorithm 2, we first initialize the initial solution as S 0 , which is the output after the crossover and mutation of the genetic algorithm. Additionally, we assign the optimal solution S b e s t to our initial solution S 0 . Continuing, as in lines 2 through 10 of Algorithm 2, the algorithm enters a loop until the termination condition is satisfied. When the algorithm executes, we set the loop to execute only once, although we could change it to more times or set a more specific stop condition, such as the algorithm stops below a certain value. Because we combine the genetic algorithm with the large neighborhood search algorithm, the GA-LNS algorithm will have iterative cycles, so it is not necessary to set more cycles for the LNS algorithm separately.
In the 3 line of Algorithm 2, we generate a new solution S r using the r e p ( d e s t ( · ) ) operator. The r e p ( d e s t ( · ) ) operator mainly has destroy and repair—two parts.
(1)
destory operator
In the destory operator, S r e m o v e represents the shelter to be removed, R represents the set of shelters to be removed, N represents the number of shelters to be removed, and S r e m a i n represents the remaining partial solutions after N shelters are removed from S 0 . The process of the destory operator is as follows:
First, randomly remove a shelter from S 0 into R as the first element of the set R. Then, one shelter M is randomly selected from the set R at a time, and all shelters in S r e m a i n are sorted as S l i s t in order of their greatest to least relevance to M. Select the shelter S r e m o v e from S r e m a i n according to Equation (15), remove the S r e m o v e from S 0 , and add it to R. Repeat this process N 1 times. The correlation equation is shown in Equation (13).
Φ i , j = 1 / c i j + w i j .
Φ i , j represents the correlation between i and j, c i j represents the energy consumption and w i j indicates whether i and j are served by the same EV. If i and j are served by the same EV, w i j is 0, otherwise it is 1. In order to avoid over-reliance on the correlation function, a random function is applied to the selection of S r e m o v e , as described in Equation (14).
i d x = R a n d D × S r e m a i n
R a n d is a random number between 0 and 1, and D is a constant, which we set to 8 in our experiment. S r e m a i n represents the number of remaining shelters, rounded to give the index value i d x .
Finally, S r e m o v e can be calculated according to Equation (15).
S r e m o v e = S l i s t i d x
(2)
repair operator
For the repair operator, we first separately calculated the fitness of all the insertable points of all shelters in set R into S r e m a i n . For each shelter, we found the position p o s with the least fitness after insertion among all the insertable points. Then, we compared the p o s of each shelter and found the largest one to insert into S r e m a i n first. We repeated this operation until we completely inserted the elements of set R into S r e m a i n and obtained S r .
We then calculate the fitness values for S 0 and S r (see Algorithm 2, line 4–6). If the fitness of S r is greater than that of S 0 , change S 0 to S r and calculate the fitness values for S r and S b e s t (see Algorithm 2, line 7–9). If the fitness of S r is greater than that of S b e s t , change S b e s t to S r . After the termination condition, the output S b e s t is given to the genetic algorithm to continue the iterative solution.
Based on the above features, we will give the simulation results in the next section.

5. Simulation Results

5.1. Simulation Results of the Datasets Modified Using Cordeau Problem

To prove the practicability of the GA-LNS to obtain the delivery scheme on a post-disaster transportation network, we considered modifying part of the Cordeau problem [23] to get the MDVRPTW benchmark. Different from the Cordeau problem, we considered the energy consumption of EVs between any two vertices. The details of the benchmark are presented in Table 2. In Table 2, column 1 indicates the benchmark. Columns 2, 3 respectively represent the number of depots and shelters with different benchmarks.
For the GA-LNS and GA, we set the population to 100, where the probability of crossover is 0.95, and the probability of mutation is 0.05. Each time, the result of the genetic algorithm is followed by the large neighborhood search algorithm; for SA, we set the initial temperature to 6000, the termination temperature to 0.001, and temperature drop step to 0.9; for TS, we set the length of the tabu list to 30. We determined through experimental tests that we will get a better result by running 100 iterations. In the cost function, c d was set to 1.0, and c t was set to 100.0.
Then, the comparison of travel cost with the GA-LNS, GA [24], SA [25] and TS [26] algorithm was presented in Table 3. Column 1 shows the benchmark, the type of which is given in Table 2. The column 2 shows the average of the 10 simulations performed by the GA-LNS algorithm on the benchmark. Columns 3, 4, 5 show the simulation results with a different algorithm. The data calculated by the algorithm are the minimal travel cost where EVs can travel from the depot and return to the depot after serving all shelters. The results indicate that the GA-LNS algorithm has better performance. In the C04, the gap between the results of the GA-LNS algorithm and other algorithms is minimal. The results of the GA-LNS algorithm are 41.6%, 39.3% and 36.1% of that of GA, SA and TS, respectively. In the C02, the gap between the results of the GA-LNS algorithm and other algorithms is the maximum. The results of the GA-LNS algorithm are 25.8%, 24.4% and 23% of those of GA, SA and TS, respectively.
In Table 4, column 1 indicates the benchmark. Column 2 shows the GA-LNS algorithm running time of 100 iterations on the benchmark. Columns 3, 4 and 5 show the running time of 100 iterations with GA, SA and TS (unit: second). Although the running time of GA-LNS is longer than that of other algorithms, the solutions of each benchmark are completed within about one hour. The solution results of GA-LNS are better than those of other algorithms. Moreover, as shown in Figure 6, we used four algorithms to draw an iterative curve on the C01.

5.2. Simulation Results for a Practical Example

In this section, we consider two different cases acquired from the OpenStreetMap (OSM) in Ichihara city, Japan. The post-disaster transportation network in Figure 7 has about 11,000 vertices and more than 15,000 arcs composed of vertices. In Figure 7a, there are 4 depots and 48 shelters, which is called case 1 for short; in Figure 7b, there are 4 depots and 60 shelters, which is called case 2 for short. The locations of depots and shelters are shown in Figure 7. The blue squares represent the depots. The red circles represent the shelters.
The two cases have some of the same settings. The service time of each shelter was set to s i = 90 min, and their demand was set to d i = 50 units. These data can be easily modified to adapt to the changes of different shelters. The capacity of each EV was q = 200 units, and the velocity of each EV was v = 30 km/h. In case 1, we considered that up to 8 EVs can be used; in case 2, we considered using up to 12 EVs. We aimed to find the optimal delivery scheme while minimizing the total travel cost. We considered the different priorities of shelters by changing the time windows in Table 5. Numbers 0–51 were the information of the depots and shelters of case 1. Numbers 0–63 were the information of the depots and shelters of case 2. In Table 5, columns 1 and 5 are the shelter and depot numbers. Columns 2 and 6 are the coordinates of the shelter and depot (unit: miter), where the coordinate system is the European petroleum survey group: 6677 (EPSG:6677). TW1 and TW2 represent two different time windows (unit: minute). The parameters of GA-LNS are the same as those in Section 5.1. The simulation results and the data of different cases are shown in Figure 8 and Figure 9. The specific routes of the delivery scheme for two cases are shown in Table 6 and Table 7, respectively. It can be seen that the constraints of different time windows affect the optimal delivery scheme of EVs.

6. Conclusions

In this paper, we studied an energy saving-oriented multi-depot vehicle routing problem with time windows (ESMDVRPTW) which was solved by an effective method consisting of the Floyd-NL algorithm and GA-LNS algorithm. Since the post-disaster transportation network is complicated, we first used the Floyd-NL algorithm to obtain the minimal travel cost between any two vertices in real-time. The complexity of the Floyd-NL algorithm is less than the Floyd algorithm in solving the post-disaster transportation network. In the second stage, we used the GA-LNS algorithm to solve the delivery scheme. Simulation results of the benchmark showed the performance of the GA-LNS outperforms GA, SA, TS. Finally, we used a test on two real cases acquired from the OpenStreetMap (OSM) in Ichihara city, Japan, to verify the effectiveness of the proposed two-stage approach.

Author Contributions

Conceptualization, Y.W.; Funding acquisition, Y.W.; Methodology, Q.L. and Y.W.; Software, P.X.; Validation, P.X.; Writing—original draft, P.X. and Q.L.; Writing—review & editing, Q.L. and Y.W. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the National Natural Science Foundation of China under Grant 61973052 and the National Natural Science Foundation of China under Grant 62173062.

Data Availability Statement

Not applicable.

Acknowledgments

The authors would like to acknowledge the Toyota Motor Corporation for support in this work. The authors would also like to thank Shohei Kishi of Sophia University, Tokyo, for his help with the graph modeling used in the practical example.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Dantzig, G.B.; Ramser, J.H. The truck dispatching problem. Manag. Sci. 1959, 6, 80–91. [Google Scholar] [CrossRef]
  2. Oyola, J.; Løkketangen, A. GRASP-ASP: An algorithm for the CVRP with route balancing. J. Heuristics 2014, 20, 361–382. [Google Scholar] [CrossRef]
  3. Tao, Y.; Wang, F. An effective tabu search approach with improved loading algorithms for the 3L-CVRP. Comput. Oper. Res. 2015, 55, 127–140. [Google Scholar] [CrossRef]
  4. Xu, W.; Zhang, C.; Cheng, M.; Huang, Y. Electric Vehicle Routing Problem with Simultaneous Pickup and Delivery: Mathematical Modeling and Adaptive Large Neighborhood Search Heuristic Method. Energies 2022, 15, 9222. [Google Scholar] [CrossRef]
  5. Sánchez, D.G.; Tabares, A.; Faria, L.T.; Rivera, J.C.; Franco, J.F. A Clustering Approach for the Optimal Siting of Recharging Stations in the Electric Vehicle Routing Problem with Time Windows. Energies 2022, 15, 2372. [Google Scholar] [CrossRef]
  6. Erdelić, T.; Carić, T. Goods delivery with electric vehicles: Electric vehicle routing optimization with time windows and partial or full recharge. Energies 2022, 15, 285. [Google Scholar] [CrossRef]
  7. Bae, H.; Moon, I. Multi-depot vehicle routing problem with time windows considering delivery and installation vehicles. Appl. Math. Model. 2016, 40, 6536–6549. [Google Scholar] [CrossRef]
  8. Adelzadeh, M.; Mahdavi Asl, V.; Koosha, M. A mathematical model and a solving procedure for multi-depot vehicle routing problem with fuzzy time window and heterogeneous vehicle. Int. J. Adv. Manuf. Technol. 2014, 75, 793–802. [Google Scholar] [CrossRef]
  9. Zhang, X.; Zhang, Z.; Zhang, Y.; Wei, D.; Deng, Y. Route selection for emergency logistics management: A bio-inspired algorithm. Saf. Sci. 2013, 54, 87–91. [Google Scholar] [CrossRef]
  10. Chang, F.S.; Wu, J.S.; Lee, C.N.; Shen, H.C. Greedy-search-based multi-objective genetic algorithm for emergency logistics scheduling. Expert Syst. Appl. 2014, 41, 2947–2956. [Google Scholar] [CrossRef]
  11. He, Y.; Wen, J.; Huang, M. Study on emergency relief VRP based on clustering and PSO. In Proceedings of the IEEE 2015 11th International Conference on Computational Intelligence and Security (CIS), Shenzhen, China, 19–20 December 2015; pp. 43–47. [Google Scholar]
  12. Liu, D.; Ji, S. Research on efficient online planning of emergency logistics path based on double-layer ant colony optimization algorithm. Int. J. Comput. Appl. 2019, 41, 400–406. [Google Scholar] [CrossRef]
  13. Li, K.; Chen, H.; Zhao, J.; Eriksson, L.; Gao, J. An advanced control strategy for engine thermal management systems with large pure time delay. Appl. Therm. Eng. 2023, 224, 120084. [Google Scholar] [CrossRef]
  14. Hou, S.; Yin, H.; Pla, B.; Gao, J.; Chen, H. Real-time energy management strategy of a fuel cell electric vehicle with global optimal learning. IEEE Trans. Transp. Electrif. 2023. [Google Scholar] [CrossRef]
  15. Hou, S.; Yin, H.; Xu, F.; Benjamín, P.; Gao, J.; Chen, H. Multihorizon predictive energy optimization and lifetime management for connected fuel cell electric vehicles. Energy 2023, 266, 126466. [Google Scholar] [CrossRef]
  16. Zhu, W.; Guo, B.; Li, Y.; Yang, Y.; Xie, C.; Jin, J.; Gooi, H.B. Uncertainty quantification of proton-exchange-membrane fuel cells degradation prediction based on Bayesian-Gated Recurrent Unit. eTransportation 2023, 100230. [Google Scholar] [CrossRef]
  17. Wu, Y.; Zhang, J.; Shen, T. A logical network approximation to optimal control on a continuous domain and its application to HEV control. Sci. China Inf. Sci. 2022, 65, 1–18. [Google Scholar] [CrossRef]
  18. Liu, Q.; Xu, P.; Wu, Y.; Shen, T. A hybrid genetic algorithm for the electric vehicle routing problem with time windows. Control Theory Technol. 2022, 20, 279–286. [Google Scholar] [CrossRef]
  19. Liu, Q.; Xu, P.; Wu, Y. Electric vehicle routing optimization considering the inclines of roads in post-disaster charging relief. In Proceedings of the IEEE 2022 6th CAA International Conference on Vehicular Control and Intelligence (CVCI), Nanjing, China, 28–30 October 2022; pp. 1–6. [Google Scholar]
  20. Liu, Q.; Xu, P.; Wu, Y.; Shen, T. A two-stage algorithm for vehicle routing problem with timed-path in disaster response. In Proceedings of the IEEE 2021 60th Annual Conference of the Society of Instrument and Control Engineers of Japan (SICE), Tokyo, Japan, 8–10 September 2021; pp. 36–41. [Google Scholar]
  21. Floyd, R.W. Algorithm 97: Shortest path. Commun. ACM 1962, 5, 345. [Google Scholar] [CrossRef]
  22. Pisinger, D.; Ropke, S. Large neighborhood search. In Handbook of Metaheuristics; Springer: Berlin, Germany, 2010; pp. 399–419. [Google Scholar]
  23. Righini, G.; Salani, M. Decremental state space relaxation strategies and initialization heuristics for solving the orienteering problem with time windows with dynamic programming. Comput. Oper. Res. 2009, 36, 1191–1203. [Google Scholar] [CrossRef]
  24. Kramer, O.; Kramer, O. Genetic Algorithms; Springer: Berlin, Germany, 2017. [Google Scholar]
  25. Wei, L.; Zhang, Z.; Zhang, D.; Leung, S.C. A simulated annealing algorithm for the capacitated vehicle routing problem with two-dimensional loading constraints. Eur. J. Oper. Res. 2018, 265, 843–859. [Google Scholar] [CrossRef]
  26. Qiu, M.; Fu, Z.; Eglese, R.; Tang, Q. A Tabu Search algorithm for the vehicle routing problem with discrete split deliveries and pickups. Comput. Oper. Res. 2018, 100, 102–116. [Google Scholar] [CrossRef] [Green Version]
Figure 1. The flowchart of the GA-LNS algorithm.
Figure 1. The flowchart of the GA-LNS algorithm.
Energies 16 01992 g001
Figure 2. A reasonable chromosome encoded in MDVRPTW.
Figure 2. A reasonable chromosome encoded in MDVRPTW.
Energies 16 01992 g002
Figure 3. The process of select chromosomes in the GA-LNS algorithm.
Figure 3. The process of select chromosomes in the GA-LNS algorithm.
Energies 16 01992 g003
Figure 4. The crossover process in the GA-LNS algorithm.
Figure 4. The crossover process in the GA-LNS algorithm.
Energies 16 01992 g004
Figure 5. The mutation process in GA-LNS algorithm.
Figure 5. The mutation process in GA-LNS algorithm.
Energies 16 01992 g005
Figure 6. The iterative curve of four algorithms on C01.
Figure 6. The iterative curve of four algorithms on C01.
Energies 16 01992 g006
Figure 7. Map of depots and shelters situation. (a) The depots and shelters situation of case 1. (b) The depots and shelters situation of case 2.
Figure 7. Map of depots and shelters situation. (a) The depots and shelters situation of case 1. (b) The depots and shelters situation of case 2.
Energies 16 01992 g007
Figure 8. Optimal delivery scheme of different time windows for case 1. (a) The delivery scheme of TW1 for case 1. (b) The delivery scheme of TW2 for case 1.
Figure 8. Optimal delivery scheme of different time windows for case 1. (a) The delivery scheme of TW1 for case 1. (b) The delivery scheme of TW2 for case 1.
Energies 16 01992 g008
Figure 9. Optimal delivery scheme of different time windows for case 2. (a) The delivery scheme of TW1 for case 2. (b) The delivery scheme of TW2 for case 2.
Figure 9. Optimal delivery scheme of different time windows for case 2. (a) The delivery scheme of TW1 for case 2. (b) The delivery scheme of TW2 for case 2.
Energies 16 01992 g009
Table 1. A comparison of algorithm running time and cost with Floyd-NL, the Floyd algorithm.
Table 1. A comparison of algorithm running time and cost with Floyd-NL, the Floyd algorithm.
AlgorithmGroup 1Group 2Group 3Group 4Group 5Group 6
Floyd-NL0.0630.0470.03120.0470.0450.032
Floyd9.988.999.0179.0528.998.97
cost1840324326382131105
Table 2. Test data parameters.
Table 2. Test data parameters.
BenchmarkNumber of DepotsNumber of Shelters
C01448
C02496
C036144
C04496
C054144
C066144
Table 3. A comparison of travel cost with the GA-LNS, GA, SA and TS algorithm.
Table 3. A comparison of travel cost with the GA-LNS, GA, SA and TS algorithm.
BenchmarkGA-LNSGASATS
C011841.634107.484190.234536.21
C021827.677095.727500.977937.73
C032295.446178.407144.126963.35
C041594.873832.744059.534414.24
C052235.787043.947675.147675.01
C062215.256309.356806.607175.82
Table 4. A comparison of algorithm running time with the GA-LNS, GA, SA and TS algorithm.
Table 4. A comparison of algorithm running time with the GA-LNS, GA, SA and TS algorithm.
BenchmarkGA-LNSGASATS
C01544.9484.5910.249.78
C022211.45128.3026.6224.37
C032400.96131.5523.7723.77
C04625.6479.4913.8910.29
C053588.77127.3024.8025.40
C063760.03115.6329.3730.62
Table 5. The time windows and coordinates of two cases.
Table 5. The time windows and coordinates of two cases.
Num.CoordinateTW1TW2Num.CoordinateTW1TW2
0(14,630, −61,892)(0, 1236)(0, 1236)32(12,335, −70,787)(358, 405)(10, 1126)
1(17,465, −68,665)(0, 1236)(0, 1236)33(13,764, −65,592)(449, 504)(0, 1125)
2(15,848, −61,670)(0, 1236)(0, 1236)34(16,515, −70,226)(0, 1112)(50, 1112)
3(14,500, −71,735)(0, 1236)(0, 1236)35(15,203, −59,802)(31, 100)(0, 1114)
4(13,504, −64,524)(0, 1127)(0, 1127)36(16,392, −68,179)(87, 158)(30, 1112)
5(15,729, −66,635)(0, 1125)(0, 1125)37(16,380, −64,290)(0, 1113)(0, 1113)
6(13,577, −65,948)(0, 1129)(0, 1129)38(16,115, −60,059)(283, 344)(60, 1107)
7(18,471, −73,989)(727, 782)(727, 782)39(13,113, −72,350)(665, 716)(0, 1110)
8(15,379, −66,590)(0, 1130)(0, 1130)40(14,243, −69,027)(0, 1106)(0, 1106)
9(16,566, −60,848)(621, 702)(0, 1127)41(18,158, −59,226)(479, 522)(479, 522)
10(17,355, −59,229)(0, 1130)(0, 1130)42(14,473, −62,002)(567, 624)(0, 1105)
11(13,534, −61,683)(255, 324)(255, 324)43(16,169, −62,913)(264, 321)(20, 1125)
12(17,868, −68,733)(534, 605)(534, 605)44(12,999, −69,737)(166, 235)(0, 1127)
13(14,617, −68,528)(357, 410)(0, 1129)45(14,952, −61,148)(68, 149)(10, 1126)
14(14,984, −62,273)(448, 505)(448, 505)46(17,833, −58,609)(16, 80)(0, 1129)
15(18,087, −67,141)(0, 1107)(0, 1107)47(11,963, −63,483)(359, 412)(359, 412)
16(14,852, −62,383)(30, 92)(30, 92)48(17,656, −64,307)(541, 600)(0, 1123)
17(17,743, −64,259)(567, 620)(0, 1106)49(18,211, −79,941)(448, 509)(20, 1125)
18(18,726, −57,264)(384, 429)(384, 429)50(17,433, −67,095)(1054, 1127)(0, 1127)
19(11,930, −68,561)(475, 528)(0, 1105)51(13,154, −77,664)(0, 1122)(0, 1122)
20(11,898, −63,952)(99, 148)(0, 1112)52(13,695, −59,809)(1001, 1066)(70, 1126)
21(17,926, −58,174)(179, 254)(0, 1110)53(16,519, −60,722)(0, 1123)(0, 1123)
22(17,649, −62,809)(278, 345)(0, 1106)54(18,369, −59,175)(725, 786)(0, 1121)
23(13,422, −68,090)(10, 73)(0, 1136)55(11,975, −69,158)(0, 1124)(0, 1124)
24(11,640, −69,272)(0, 1135)(0, 1135)56(14,312, −66,889)(286, 347)(286, 347)
25(14,125, −61,943)(812, 883)(0, 1133)57(14,970, −62,056)(186, 257)(0, 1105)
26(15,954, −58,929)(732, 777)(732, 777)58(13,788, −62,190)(95, 158)(95, 158)
27(14,039, −79,934)(65, 144)(0, 1131)59(14,328, −61,783)(385, 436)(0, 1101)
28(12,324, −77,661)(169, 224)(169, 224)60(15,314, −84,753)(35, 87)(0, 1111)
29(14,876, −61,496)(0, 1130)(0, 1130)61(12,261, −66,333)(471, 534)(471, 534)
30(18,507, −66,038)(261, 316)(0, 1128)62(17,658, −59,643)(0, 1110)(0, 1110)
31(15,968, −60,911)(546, 593)(0, 1128)63(13,769, −68,755)(562, 629)(0, 1100)
Table 6. The specific routes of the delivery scheme for case 1.
Table 6. The specific routes of the delivery scheme for case 1.
Number of EVDelivery Route of TW1Number of EVDelivery Route of TW2
EV10-27-30-32-24-42-39-1EV10-48-4-9-44-47-14-5-7-0
EV20-44-43-12-29-25-5-4-2EV20-25-24-22-33-8-12-32-30-2
EV31-11-10-49-51-8-1EV31-6-51-11-41-13-1
EV41-16-20-22-48-9-7-0EV41-37-43-49-19-10-38-36-40-0
EV52-35-34-18-41-1EV52-17-21-20-18-50-46-1
EV62-23-28-13-19-17-1EV62-23-15-28-29-3
EV73-36-40-38-47-14-37-15-6-50-1EV73-16-42-45-39-35-27-34-26-31-2
EV83-46-45-21-33-31-26-2
Table 7. The specific routes of the delivery scheme for case 2.
Table 7. The specific routes of the delivery scheme for case 2.
Number of EVDelivery Route of TW1Number of EVDelivery Route of TW2
EV10-22-12-2EV10-54-13-53-45-39-41-26-5-1
EV20-15-45-56-19-17-51-3EV20-28-31-6-17-46-51-23-27-41-3
EV30-16-28-47-48-54-52-50-3EV30-36-40-38-9-14-48-49-1
EV41-58-57-32-41-25-1EV41-63-60-55-15-44-61-49-1
EV51-36-44-43-55-49-10-39-37-3EV51-47-43-10-19-29-50-3
EV61-27-21-13-31-3EV61-4-62-57-35-21-0
EV72-8-11-6-9-1EV72-22-33-32-2
EV82-23-24-18-42-3EV82-59-25-1
EV92-35-30-59-61-26-40-1EV92-34-18-30-20-37-3
EV103-60-29-33-62-5-1EV103-58-56-52-7-1
EV113-46-34-38-14-4-1EV113-16-11-24-8-12-2
EV123-20-63-7-53-3
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Xu, P.; Liu, Q.; Wu, Y. Energy Saving-Oriented Multi-Depot Vehicle Routing Problem with Time Windows in Disaster Relief. Energies 2023, 16, 1992. https://doi.org/10.3390/en16041992

AMA Style

Xu P, Liu Q, Wu Y. Energy Saving-Oriented Multi-Depot Vehicle Routing Problem with Time Windows in Disaster Relief. Energies. 2023; 16(4):1992. https://doi.org/10.3390/en16041992

Chicago/Turabian Style

Xu, Peng, Qixing Liu, and Yuhu Wu. 2023. "Energy Saving-Oriented Multi-Depot Vehicle Routing Problem with Time Windows in Disaster Relief" Energies 16, no. 4: 1992. https://doi.org/10.3390/en16041992

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop