5323 Journal of Intelligent & Fuzzy Systems 40 (2021) 5323–5336 DOI:10.3233/JIFS-202129 IOS Press Delivering and picking goods under time window restrictions: an effective evolutionary algorithm Grigorios D. Konstantakopoulos∗ , Sotiris P. Gayialis, Evripidis P. Kechagias, Georgios A. Papadopoulos and Ilias P. Tatsiopoulos Sector of Industrial Management and Operational Research, School of Mechanical Engineering, National Technical University of Athens, Athens, Greece Abstract. Routing of vehicles and scheduling of deliveries play a crucial role in logistics operations as they affect both the distribution cost and customer satisfaction. That is why researchers have intensively studied this problem in conjunction with the multiple variables and constraints involved in the logistics operations. In this paper, the cases of time windows and simultaneous pickups and deliveries, where goods are simultaneously delivered and collected from customers within a predetermined time slot, are studied. The objective of our research is to create efficient routes that minimize both the number of vehicles and the total distance travelled, as both of them affect the total distribution cost. Considering various plans of routes that are differentiated by the number of routes and the sequence of visitations, can be beneficial for decision-makers, since they have the opportunity to select the plan that better fits their needs. Therefore, in this paper we develop a multiobjective evolutionary algorithm (MOEA) that integrates an improved construction algorithm and a new crossover operator for efficient distribution services. Through the proposed MOEA a set of solutions (route plans), known as Pareto-optimal, is obtained, while single biased solutions are avoided. The proposed algorithm is tested in two well-known datasets in order to evaluate the algorithm’s efficiency. The results indicate that the algorithm’s solutions have small deviation from the best-published and some non-dominated solutions are also obtained. Keywords: Vehicle routing problem, time windows, simultaneous pickups and deliveries, multiobjective optimization, evolutionary algorithm, logistics 1. Introduction Supply chain networks include multiple operations such as distributing goods to retailers and consumers, warehousing of products, and supplying raw materials to manufacturers. Additionally, they also include the collection of products from end customers, in order to be recycled, remanufactured, or repaired [23]. Given the range of supply chain operations, ∗ Corresponding author. Grigorios D. Konstantakopoulos, Sector of Industrial Management and Operational Research, School of Mechanical Engineering, National Technical University of Athens, Athens, Greece. E-mail: gkonpoulos@mail.ntua.gr. the routing of vehicles and the scheduling of deliveries, constitute a small but essential part of them. Therefore, executing efficient routing of vehicles and scheduling of deliveries ensures that the transportation costs will be reduced and the provided services will be improved. In this effort, researchers have converted the multiple variables and constraints that logistics companies face in real-life cases into variants of the Vehicle Routing Problem (VRP). This interconnection between the logistics industry and the research community has made the VRP one of the most studied topics in operational research and industrial engineering [17]. ISSN 1064-1246/$35.00 © 2021 – IOS Press. All rights reserved. 5324 G.D. Konstantakopoulos et al. / Delivering and picking goods under time window restrictions The simplest version of the VRP is known as the Capacitated VRP and was first proposed by [11], Dantzig and Ramser (1959). In this classical problem, a set of geographically scattered customers with various demands must be served by a set of identical vehicles and each customer is served by a single vehicle and only once. All vehicles start their trip from the central depot and must return at the same location [2] after the deliveries are concluded. In each stage of the distribution, the capacity of the vehicles cannot be violated. Through time, more and more VRP variants have been created following the needs and requirements of logistics and distribution companies. According to [25] Konstantakopoulos et al. (2020), among the most studied variants which reflect most in real-world problems is the VRP with Time Windows (VRPTW) and the VRP with Simultaneous Pickups and Deliveries (VRPSPD). In the case of the VRPTW, the constraint that each customer must be visited within a predetermined time interval (time window) indicated by each customer, is added. Each vehicle has the ability to arrive at a customer’s location before the opening of the time window and can wait until service becomes possible. However, it is not permitted to deliver goods outside the time window [5, 22]. In VRPSPD, the main variation from the initial problem is that each customer can both receive and return goods [28]. This variation creates an extra constraint as at any stage of the route, where goods are both delivered and collected, the capacity of the vehicle cannot be violated. By combining these two variants, this complex problem comes closer to reallife distribution cases that most logistics companies face daily. However, the conversion of real distribution cases to variants of the VRP would have no value, if not making the most of advances in technology and computer science. Both sectors have given researchers the opportunity to develop more efficient algorithms to address the variants of the VRP. Initially, exact algorithms were developed due to their ability to offer high quality solutions. Nevertheless, the time complexity along with the limited number of customers that exact algorithms can handle makes the specific category less popular among others [19]. On the other hand, heuristic algorithms offer good quality solutions within a short time-space, while having also the ability to solve problems of any size. Some of the most known and studied heuristics for the VRP are (i) the Time-Oriented Nearest Neighbor (TONN) [31], (ii) the Sweep [20] and (iii) the Savings [9] algorithm. These algorithms, despite being more than 30 years old, remain the basis of other more sophisticated and improved algorithms and are still used in commercial routing software [16]. Over the years, metaheuristics have gained the interest of researchers and practitioners due to their ability to produce high quality solutions in a minimum computational time. The center of attention has shifted to these algorithms as they combine advantages from both exact and heuristic algorithms. Metaheuristics are separated into two main categories, population search and local search methods [27]. Population-based approaches maintain reasonable solutions in memory, which are combined and cooperate through a learning procedure for generating new solutions. On the other hand, local search approaches aim at exploring the solution space by moving the current solution to another promising one in the neighborhood. Multiple algorithms of both categories have been developed for addressing efficiently both the VRPTW and the VRPSPD. According to [25] Konstantakopoulos et al. (2020), among the most frequently developed algorithm for these variants of the VRP are evolutionary and genetic algorithms [4], particle swarm optimization [1, 22], ant colony optimization [14], simulated annealing [10, 33], large neighborhood search [26] and tabu search [7, 34]. In most cases, the algorithms that address the VRPTW and the VRPSPD produce biased solutions either to the number of vehicles or the total distance traveled, that are the two objectives. However, in recent years, some researchers consider the VRP as multiobjective which means that more than one solution can be considered optimal according to the values of the two objective functions. More specifically, Ombuki et al. (2006) [29] and Tan et al. (2006) [32] were the first to propose a multiobjective genetic and evolutionary algorithm, respectively, for the VRPTW, offering new non-dominated solutions. Ghoseiri and Ghannadpour (2010) [18] used goal programming for the formulation and a genetic algorithm for the solving the multiobjective formulation of the VRPTW, while Baños et al. (2013) [3] proposed a hybrid algorithm that combined evolutionary strategies with simulated annealing. Both [15], Garcia-Najera and Bullinaria (2011) and [6], Chiang and Hsu (2014) proposed MOEA’s which updated multiple nondominated solutions in Solomon’s instances. Instead, researchers have not studied the multiobjective nature of the VRPSPD, at the same extent. Gong et al. (2018) [21] proposed an efficient bee evolutionary algorithm for this problem, and was verified by simulating the 5325 G.D. Konstantakopoulos et al. / Delivering and picking goods under time window restrictions reverse logistics of an engineering machinery remanufacturing company. A characteristic feature of all these algorithms is that they maintain the Paretooptimality concept, which means that in each case a set of optimal solutions may result. The solutions belonging in this set are called non-dominated solutions, as no solution can be considered better than the others without further information, while solutions that do not belong in that set are known as dominated solutions. In the present paper, we propose a MOEA that uses the non-dominated sorting procedure proposed by [12], Deb et al. (2002) for solving the vehicle routing problem with simultaneous pickups and deliveries and with time windows (VRPSPDTW), while both the number of vehicles and the total distance traveled must be minimized. The initial population of solutions utilized by the MOEA are produced by an improved variation of the TONN heuristic algorithm. Additionally, the proposed MOEA incorporates a new crossover operator and the swap node operator (mutation). The MOEA is tested both in Solomon’s benchmark instances for the VRPTW, as well as in Salhi and Nagy’s for the VRPSPD, since there is no dataset in the literature to combine both problems. The computational results indicate that the algorithm is very efficient, offering competitive results compared with all the best-published of the literature. However, since most studies do not focus on the multiobjective nature of the VRPSPDTW, neither do to the multiple optimal solutions (non-dominated solutions) that have been proposed in each benchmark instance over the years. This results in not evaluating the efficiency of algorithms correctly since, in many cases, the obtained solutions are not compared with all best-published solutions in each instance. Therefore, the contribution of this paper is not limited to addressing the VRPSPDTW as multiobjective in the variation of the TONN algorithm and in the crossover operator that is integrated into the algorithm. Our research extends to the complete presentation of all non-dominated solutions in Solomon’s and in Salhi and Nagy’s dataset. The next sections of the paper include the formulation of the problem, the presentation of the proposed algorithm, its validation results and, finally, the conclusions of the research. More specifically, the mathematical formulation of the VRPSPDTW is presented in Section 2. Section 3 analyzes the structure of the proposed algorithm, the improved variation of the TONN algorithm, the new proposed crossover operator, as well as the mutation operator. The com- putational results are presented and compared with the best-published solutions in benchmark instances in Section 4. Finally, the conclusions are discussed in Section 5. 2. Problem definition and mathematical formulation The VRPSPDTW is a variant of VRP which combines the parameter of time windows, as well as the one of simultaneous pickups and deliveries set by customers. More specifically, VRPSPDTW is defined by a set of identical in terms of capacity (Q) vehicles denoted by K and by a direct network G (N, A), where N is the set of nodes, and A = (i, j) : i = / j, i, j ∈ N the set of arcs. Node 0 represents the central depot, while N * = N/ {0} represents the customers. Every arc (i, j), which is a path from node i to node j, is characterized by a distance which is indicated as dij and by a travel time tij that has the same value as dij as the assumption that one distance unit is covered in one unit of time is made. Each client i is characterized by a delivery quantity qi , a pickup quantity ri , a service time si for unloading and a time window (ei , li ), where ei is the opening and li the closing time. The start of service of vehicle k at customer j, is denoted by ajk and depends on the time of arrival as vehicles arriving before the beginning of the time window must wait until service is possible ei . If the vehicle arrives between ei and li , the service starts immediately, while no vehicle may arrive after li . The decision variable xijk is equal to 1 if vehicle k executes the route from node i to node j. Otherwise xijk is equal to 0. The second decision variable, yik indicates the quantity of items on board of vehicle k when departing from node i. The objective of the VRPTW is to service all customers in N * , while minimizing both the number of vehicles and the total distance traveled. The mathematical model of the VRPSPDTW is presented below: k Objective1 : x0j (1) k∈K j∈N ∗ Objective2 : dij xijk (2) xijk ≤ Q, ∀k ∈ K (3) k∈K (i,j)∈A i∈N qi j∈N 5326 G.D. Konstantakopoulos et al. / Delivering and picking goods under time window restrictions ri i∈N (i,j)∈A (5) the time window, lj , while constraint (11) that the earliest time for starting serving customer j is related to the time of arrival, depending on whether the time of arrival is before or after the start of the time window ei . (6) 3. Solution approach (4) xijk ≤ Q, ∀k ∈ K j∈N xijk yik + rj − qj ≤ Q, ∀k ∈ K xijk = 1, ∀i ∈ N k∈K j∈N j∈N ∗ xilk − i∈N (7) xljk = 0, ∀l ∈ N ∗ , ∀k ∈ K (8) k xj0 = 1, ∀k ∈ K (9) j∈N j∈N ∗ aik + si + k x0j = 1, ∀k ∈ K (10) xijk tij ≤ lj , ∀i ∈ N, ∀k ∈ K In order to address the VRPSPDTW that is presented above, an efficient multiobjective evolutionary algorithm was developed. More specifically, Section 3.1 discusses the importance of multiobjective optimization and the Pareto-optimality concept. Section 3.2 presents the improved version of the TONN algorithm, that it is used for creating the initial population of solutions. Section 3.3 describes the structure of the chromosome applied in the MOEA. In Section 3.4 the methodological procedure of the MOEA, along with the pseudocode are thoroughly described. Finally, the new proposed crossover operator, as well as the mutation operator, are described in Section 3.5. j∈N ajk = max ⎧ ⎨ ⎩ xijk aik + si + tij , ej j∈N ∀i ∈ N, ∀k ∈ K 3.1. Multiobjective optimization ⎫ ⎬ ⎭ , (11) xijk ∈ {0, 1} , ∀ (i, j) ∈ A, ∀k ∈ K (12) yik ≥ 0, ∀i ∈ N, ∀k ∈ K (13) In the present paper, the VRPTW is encountered as a multiobjective problem and the two objectives, needed to be minimized, are the number of vehicles and the total distance traveled and are described by function (1) and (2) respectively. Constraints (3) and (4) state that the total quantity of products delivered and collected in total cannot exceed the capacity of the vehicle, while constraint (5) states that, at any stage of the distribution process, the total quantity of products in the vehicles cannot exceed its capacity. Equation (6) states that each customer must be served exactly once and by one vehicle since xijk can obtain only 1, or 0 as values. The set of constraints (7), (8) and (9) make sure that each vehicle starts from the depot and visits and serves the customers that belong in the route before it finally returns to the depot. Constraint (10) indicates that for a trip from node i to node j, no vehicle may arrive at customer j after the end of In multiobjective optimization problems, a set of optimal solutions can be obtained, instead of a single solution. The solutions belonging to this set are non-dominated with respect to each other. The main characteristic of the non-dominated solutions is that while moving from one solution to another, there is always a certain amount of sacrifice in one objective, to achieve a certain amount of gain in another objective, as shown in Fig. 1. More specifically, no solution between the non-dominated solutions X1 and X2 can be considered better, since the mathematical relation F1 (X1 ) > F1 (X2 ) and F2 (X1 ) < F2 (X2 ) is valid. This means that moving from solution X1 to X2 , we can observe a decrease in F1 objective with a simultaneous increase in F2 objective. Therefore, without further information, no solution can be considered better than the other and dominate. The set of all the non-dominated solutions is called Pareto-optimal front as shown in Fig. 1. In the case of the VRP, the different obtained solutions are translated into different plans of routes and deliveries. These different plans serve the interests of multiple stakeholders that choose the most profitable one. The choice is based on further information and on the nature of each company. For example, different plans may be selected when the fleet of vehicles is company-owned and when the distribution of goods G.D. Konstantakopoulos et al. / Delivering and picking goods under time window restrictions Fig. 1. Dominated, non-dominated, and Pareto-optimal front. is assigned to third party companies. Therefore, it is crucial to consider the VRPSPDTW as multiobjective, where the two objectives are the number of vehicles and the total distance traveled, in order to cover the needs of multiple stakeholders. Through this approach and in search of a cost-effective plan, more than one solution may result. Therefore, it is at the discretion of the decision-maker to select the most profitable plan. 3.2. Construction method The initial population of solutions contributes significantly to the efficiency of the proposed MOEA, where it is used as an input. Therefore, an efficient algorithm, in terms of time and solution’s quality, is needed. The fact that the TONN construction algorithm meets these requirements is the main reason it is selected for the construction procedure. The TONN algorithm was first proposed by Solomon (1987) [9], and belongs in the sequential methods that construct one route at a time. More specifically, every route starts from the depot (node 0) and is built by adding the “closest” customer that has not been included in any other route to the last visited node. If no other customer can be added to the route, due to capacity or time window constraints, a new route starts. The routes construction procedure ends when no more customers are left to add. The fact that the TONN algorithm was first proposed for the VRPTW, which is only one of the variants considered in our paper, leads to adaptations in the closeness function, in order to fit in the VRPSPDTW. The closeness is now given by the metric cij = w1 dij + w2 vij + w3 uij , which involves the distance dij between customers i and j, the capacity left to the vehicle k after serving customer j, vij = Q − yik − qj and the urgency of delivery to 5327 customer j, uij = lj − (ai + si + tij ). In this case, customer i is the previously served customer, while j the one for whom the metric cij is minimized. The second variation in the TONN is based on the fact that time, distance and capacity are not in the same scale, and that may affect the constructed solutions. Therefore, a min-max normalization procedure [30], is applied in the dataset tij , dij , ei , li , si , qi . This normalization technique provides linear transformation and fits data in a pre-defined boundary, that in our case is [0, 1]. The formula used for the normalization procedure is: X = (X0 − Xmin ) / (Xmax − Xmin ) (D − C) + C (14) with X being the new value for variable X, [C, D] the pre-defined boundary, X0 the current value for variable X, and Xmin minimum and Xmax the maximum value in dataset X. This pre-processing data procedure improves the accuracy and achieves the best performance in the tested dataset. That is why in the case of cij metric, in which the weights w1 , w2 and w3 are assigned to dij , vij and uij respectively and sum up to 1, the normalization of data is essential and can offer improved results. Therefore, the dataset used in the construction algorithm involves normalized data. 3.3. Chromosome structure The structure of the chromosome significantly affects the algorithm in terms of efficiency and time complexity, since it is involved in the crossover and mutation operators. Therefore, similar to most studies that propose evolutionary algorithms for the VRP, we decided to represent the chromosome as an array with length equal to the total number of customers. Each object of the chromosome is a gene and is represented by an integer which refers to the customer’s node (id). The sequence of the genes determines the order of customers’ visitation. When a sequence cannot be continued due to the violation of capacity or time window constraints, a new route begins. An example of a chromosome with 9 customers is presented in Fig. 2, as well as the order of visitations in each route. Fig. 2. Chromosome Structure. 5328 G.D. Konstantakopoulos et al. / Delivering and picking goods under time window restrictions 3.4. Evolving solutions with the proposed multiobjective evolutionary algorithm After the TONN algorithm generates the initial population (R0 ) of size N, the MOEA is applied for evolving solutions and obtain the Pareto-optimal front. More specifically, in each generation t, taking into account the parents’ population Rt set, the algorithm implements the crossover operator in all N parents and generates N offsprings saved in Qt (offsprings’ population). The proposed crossover operator is thoroughly described in Section 3.5. Consequently, the chromosomes belonging to the union set Rt ∪ Qt (entire population) are sorted according to the non-dominated sorting and create Pareto fronts (sets) F1 , F2 , . . . FK . This procedure is used for sorting the solutions in sets (F1 , F2 , . . . FK ) according to the pareto dominance principle. This means that each set Fi contains solutions, with F1 being the best nondominated set that is represented as Pareto-optimal front in Fig. 1. Accordingly, F2 set contains solutions which are dominated only by those in set F1 . The set Rt+1 , which contains the parents of the next generation starts being filled with solutions of sets F1 , F2 , and so on, until N chromosomes fill the Rt+1 set. Through this procedure, the best solutions in each iteration are maintained and used for evolving the solutions. The described procedure is followed for a specific number of iterations, which is the maximum number of generations. The pseudocode of the MOEA is shown in Fig. 3. 3.5. Crossover and mutation operators Multiple crossover operators, such as those presented in [31], have been developed over the years for the VRP. The most efficient crossover operator that is implemented in most genetic and evolutionary algorithms is the Best Cost Route Crossover (BCRC) that is thoroughly described in Ombuki et al. (2006) [22]. More specifically, from the P set, two parents (Pi , Pi+1 ) are selected, and from each one, a single route is also selected. The customers that belong to each route are then removed from the opposite parent. More specifically, customers selected from parent Pi are removed from parent Pi+1 , and reversely. Since all customers must be served, they must also be contained in the chromosome. The insertion of a customer is made in the position of the chromosome that minimizes the cost. After the insertion procedure, two new chromosomes, known as offsprings, are generated. Through this procedure, the set Qt is filled with Fig. 3. Pseudocode of the MOEA. N new solutions, before the non-dominated sorting procedure is applied and consequently set Pt+1 arises. The crossover operator proposed and applied in the present paper works similarly to the BCRC and is called Sequential Crossover (SC). The differences between the two crossover operators are noted in two points. • In the selection of customers, as in SC, a random number of consecutive genes are selected from each chromosome, instead of a single route as in BCRC. In this way, the diversity and consequently the search space increases. • In the reinsertion procedure the customers can only be inserted in specific positions. More specifically, they can be inserted in the position of the chromosome for which the total distance traveled is minimized. However, they can also be inserted in the position of the chromosome for which the total distance traveled is minimized while simultaneously the number of vehicles is not increased (compared to the parent). This procedure also increases the diversity and the search capabilities of the algorithm. The mutation operator followed in our paper is a swap node operator. In this case, two customers G.D. Konstantakopoulos et al. / Delivering and picking goods under time window restrictions (genes) of the chromosome are randomly selected and swapped. The main contribution of this procedure is the differentiation of chromosomes, which may help in escaping from local optimum. Finally, both the mutation and the crossover operator are not applied in each generation and in each set of parents (Pi , Pi+1 ). Instead, each operator has a specific probability to be applied, that is defined at the beginning as shown in Fig. 3. 4. Computational tests and results The proposed algorithm cannot be simultaneously tested in time windows and pickups and deliveries due to the lack of a dataset containing both attributes. Therefore, the algorithm is tested in two different datasets, the one of Solomon which is for the VRPTW and the one of Salhi and Nagy which is for the VRPSPD. In Solomon’s dataset, the instances are separated in those with geographically clustered customers’ data (C1 and C2), with randomly generated geographical customers data (R1 and R2) and with mixed geographical customers data (RC1 and RC2). Also, problem sets C1, R1 and RC1 have short scheduling horizon and narrow time windows, while set C2, R2, and RC2 have long scheduling horizon and wide time windows. The proposed algorithm was coded in Python and ran in a computer with the following specifications: Intel Core i7 – 8550 U 1.8 GHz with 16GB memory. Additionally, the dataset of Salhi and Nagy (1999) [32], is based on the dataset of Christofides et al. (1979) [8]. More specifically, all data remain the same except the demand that is separated in a delivery and in a pickup quantity. Finally, the evolutionary algorithm parameters used in the proposed algorithm are the same with those presented in [22] so that our results be representative and comparable. • • • • Population size = 300 Number of generations = 350 Crossover probability = 0.80 Mutation probability = 0.10 Another parameter that is defined is the maximum computational time. In our research, the time limit is set at 10 minutes which is considered reasonable computational time for cases with 100 customers. 4.1. Results in the VRPTW The VRPTW has been widely studied and, therefore, for most of Solomon’s instances a set of 5329 non-dominated solutions (Pareto-optimal front) has arisen over the years from multiple researchers, leading to the best published results in these instances. The computational results obtained from the proposed MOEA are compared, in Tables 1 and 2, with the best-published ones in the literature to evaluate their efficiency. More specifically, Table 1 contains instances with short scheduling horizon, narrow time windows, and small vehicles’ capacities, while Table 2 contains instances with long scheduling horizon, wide time windows and large vehicles’ capacities. In each table and for each instance of the dataset, the set of non-dominated solutions that are characterized by the total distance traveled (TD) and the number of vehicles (NV) are presented. Column “MOEA” presents the results obtained by the proposed algorithms, column “Best-Published” showcases the best-published results. Finally, the column “Deviation (%)” presents the percentage difference between best-published and best obtained results. We consider that our results are competitive compared to best published in the literature. The deviation presented in both tables refers to the total traveled distance when the number of vehicles, both in the best-published results and in those of the MOEA are equal; otherwise it is not calculated. The mean deviation is 2.64%, a criterion that proves the effectiveness of the algorithm. However, the MOEA seems to have better efficiency with geographically clustered customers’ data (C datasets), irrespective of the scheduling horizon and the range of the time windows, as the deviation of the obtained results with the best-published range from 0.00% to 0.73%. As for geographically random customer data (R and RC), multiple non-dominated solutions at each instance exist as the search space is more extensive, especially in cases with long scheduling horizon and wide time windows (C2 and RC2). The MOEA, which integrates the proposed crossover operator, has the ability to search a vast solution space to find non-dominated solutions. As a result, two new nondominated solutions are proposed in Solomon’s R202 and R210 instances. In R202 instance, a decrease in the total distance traveled is accomplished, while in R210 instance, two non-dominated solutions are updated, as shown in Fig. 4. More specifically, in R210 instance, the proposed solution with objective values (NV = 4, TD = 920.13) improves both the solution with objective values (NV = 4, TD = 924.79), since the distance traveled is decreased, as well as the solution with objective values (NV = 5, TD = 922.30), 5330 G.D. Konstantakopoulos et al. / Delivering and picking goods under time window restrictions Table 1 Solomon’s benchmark instances with short scheduling horizon and narrow time windows Problem Instance C101 C102 C103 C104 C105 C106 C107 C108 C109 R101 R102 R103 R104 R105 R106 R107 R108 R109 R110 NV 10 10 10 10 10 10 10 10 10 20 18 14 – 10 – 15 – 13 – 11 – 10 – 12 13 – MOEA TD 828.94 828.94 828.94 828.94 828.94 828.94 828.94 828.94 828.94 1667.33 1499.67 1237.50 – 1006.48 – 1391.86 – 1287.07 – 1084.15 – 994.89 – 1177.76 1167.19 – NV Best-Published TD 10 10 10 10 10 10 10 10 10 18 17 13 9 10 14 15 12 13 10 11 9 10 11 12 – 10 827.3 827.3 826.3 822.9 827.3 827.3 827.3 827.3 827.3 1607.7 1434 1175.67 1007.24 974.2 1377.11 1346.12 1251.98 1234.6 1104.66 1051.84 958.66 942.9 1194.73 1101.99 – 1118.59 Deviation (%) Problem Instance 0.20 0.20 0.32 0.73 0.20 0.20 0.20 0.20 0.20 – – – – 3.31 – 3.40 – 4.25 – 3.07 – 5.51 – 6.88 – – R110 Fig. 4. Updated Pareto-optimal front on R210 problem instance. since both the number of vehicles and the total distance traveled are decreased. The solutions in Solomon’s instances which improve the results and offer new non-dominated solutions are presented in the Appendix. R111 R112 RC101 RC102 RC103 RC104 RC105 RC106 RC107 RC108 NV – 12 – – 12 – 10 – 15 – – 14 – 12 10 – 14 15 – – – 13 – 12 – 11 MOEA TD – 1122.48 – – 1099.70 – 965.12 – 1649.50 – – 1504.56 – 1292.51 1165.00 – 1575.46 1558.06 – – – 1417.86 – 1248.62 – 1209.42 NV Best-Published TD 11 12 10 11 12 9 10 14 15 12 13 14 11 12 10 13 14 15 16 11 12 13 11 12 10 11 1054.23 1068 1096.72 1084.76 1048.7 982.14 953.63 1650.14 1619.8 1554.75 1470.26 1461.33 1261.67 1196.12 1135.48 1629.44 1542.29 1519.29 1518.6 1424.73 1394.43 1371.69 1222.16 1212.83 1139.82 1117.53 Deviation (%) – 5.10 – – 4.86 – 1.20 – 1.83 – – 2.96 – 8.06 2.60 – 2.15 2.55 – – – 3.37 – 2.95 – 8.22 address the VRPSPDTW, is tested in the dataset of Salhi and Nagy, and the results obtained from the proposed MOEA algorithm are compared to the best-published. As in the case of time windows, the algorithm manages to produce new non-dominated solutions in instances CMT2X, CMT6X, CMT7X, CMT8X, CMT9X, CMT10X. In each of these 6 cases, the number of vehicles is reduced at the expense of increased total distance traveled, as shown in Table 3. In addition, the mean TD deviation between the best-published results and the best obtained ones from the MOEA was found to be 8.50%. As shown in Table 3, the TD deviation for each one of the problem instances is not calculated for all solutions. Instead, the TD deviation is calculated only when the MOEA and the best-published results have equal NV values. The solutions in Salhi and Nagy’s instances which improve the results and offer new non-dominated solutions are given in the Appendix. 4.2. Results in the VRPSPD The VRPSPD is studied less frequently than the VRPTW, despite being the most common problem distribution and logistics companies face in their daily operations. The proposed MOEA, which is able to 5. Conclusions To sum up, in this paper, we examined the vehicle routing problem with simultaneous pickups and G.D. Konstantakopoulos et al. / Delivering and picking goods under time window restrictions 5331 Table 2 Solomon’s Benchmark Instances with Long Scheduling Horizon and Wide Time Windows Problem Instance C201 C202 C203 C204 C205 C206 C207 C208 R201 R202 R203 R204 R205 R206 R207 R208 NV 3 3 3 3 3 3 3 3 4 5 – – – – – 4 5 3 4 5 – – 3 4 – 3 4 5 3 4 5 – 3 – – 3 MOEA TD 591.56 591.56 591.56 590.6 588.88 588.5 588.5 588.32 1290.75 1202.7 – – – – – 1085.64 1014.96 1026.22 902.25 891.03 – – 751.79 746.01 – 1048.74 1021.15 1004.27 970.22 897.25 892.18 – 854.95 – – 731.84 NV 3 3 3 3 3 3 3 3 4 5 6 7 8 9 3 4 5 3 4 5 6 2 3 4 5 3 4 5 3 4 5 2 3 4 2 3 Best-Published TD 589.1 589.1 591.17 590.6 586.4 586 585.8 585.8 1252.37 1193.29 1171.2 1173.75 1150.92 1148.48 1191.7 1079.39 1041.1 939.5 901.2 890.5 874.87 825.52 749.42 743.23 735.86 994.43 959.74 954.16 906.14 889.39 879.89 890.61 812.76 797.99 725.75 706.86 Deviation (%) Problem Instance 0.42 0.42 0.07 0.00 0.42 0.43 0.46 0.43 3.06 0.79 – – – – – 0.58 –2.51 9.23 0.12 0.06 – – 0.32 0.37 – 5.46 6.40 5.25 7.07 0.88 1.40 – 5.19 – – 3.53 R209 deliveries and time windows, aiming to find an effective solution to the problem by proposing an evolutionary algorithm that solves the multiobjective VRPSPDTW. The first step to solving this problem was the application of an improved TONN construction algorithm for generating the initial population of solutions. Consequently, these solutions were integrated into the proposed MOEA in order to find the best routes plan, that minimizes the two objectives: the number of vehicles and the total distance traveled. These two objectives may be contradictory and this is the reason that some instances of the problem may have multiple possible solutions. Pareto-optimality concept was used in order to balance the results for the different objectives and find the best overall solution to the problem. Besides addressing the VRPSPDTW R210 R211 RC201 RC202 RC203 RC204 RC205 RC206 RC207 RC208 NV 3 4 5 – 4 – – – 3 4 4 5 7 8 – 4 5 6 – 4 5 3 – 4 5 6 – 3 4 5 6 – 4 – – 3 4 MOEA TD 956.00 881.64 875.63 – 920.13 – – – 838.85 770.54 1473.09 1329.59 1284.48 1282.64 – 1200.07 1129.46 1125.22 – 958.55 938.04 801.18 – 1340.53 1304.35 1210.00 – 1301.87 1121.53 1094.2 1087.27 – 1023.02 – – 859.52 805.66 NV 3 4 5 3 4 5 6 2 3 4 4 5 7 8 3 4 5 8 3 4 5 3 4 4 5 6 7 3 4 5 7 3 4 5 6 3 4 Best-Published TD 909.16 864.15 859.39 938.58 924.79 922.30 912.53 885.71 767.82 755.82 1406.91 1279.65 1273.51 1272.28 1365.65 1162.54 1118.66 1099.54 1049.62 945.08 926.82 798.41 788.66 1297.19 1236.78 1187.98 1161.81 1146.32 1081.83 1068.77 1054.61 1061.14 1001.85 982.58 966.37 828.14 783.035 Deviation (%) 5.15 2.02 1.89 – –0.50 – – – 9.25 1.95 4.70 3.90 0.86 0.81 – 3.23 0.97 – – 1.43 1.21 0.35 – 3.34 5.46 1.85 – 13.57 3.67 2.38 – – 2.11 – – 3.79 2.89 as a multiobjective problem, another contribution of the paper was proven to be the newly developed crossover operator (Sequential Crossover) which significantly affects the efficiency of the results obtained from the MOEA. The algorithm’s efficiency was validated using the dataset of Solomon for the VRPTW and the dataset of Salhi and Nagy (1999) for the VRPSPD, and the outcomes obtained were compared to the best-published results, indicating the high efficiency of the algorithm in terms of solution’s quality. The next step of our research is to apply the algorithm in real-life cases, in which even 1000 customers must be served. In order to be able to solve large scale instances with up to 1000 customers, parameters of the algorithm such as the population size and the num- 5332 G.D. Konstantakopoulos et al. / Delivering and picking goods under time window restrictions Table 3 Comparison of results for the Salhi and Nagy dataset Problem CMT 1X 2X 3X 4X 5X 6X 7X 8X 9X 10X 11X 12X 13X 14X NV 3 6 7 5 7 10 5 9 8 9 12 13 14 15 17 5 6 11 10 MOEA NV 481.13 771.01 730.21 753.83 897.65 1130.28 606.33 1040.67 1036.52 955.21 1744.19 1741.36 1698.21 1354.51 1937.02 904.52 712.21 1757.99 918.25 3 – 7 5 7 10 6 11 467 – 676 703 847 1025 557 919 9 – – – 15 19 4 5 11 10 896 – – – 1215 1571 868 667 1560 826 ber of generations must also be studied so that the algorithm becomes functional and efficient in a reasonable computational time. Finally, for evaluating the efficiency of the algorithm in real-life cases, travel times and distances between nodes must be collected from online maps and consequently be exploited as inputs in the algorithm. Funding The present work was co-funded by the European Union and Greek national funds through the Operational Program “Competitiveness, Entrepreneurship and Innovation” (EPAnEK), under the call “RESEARCH-CREATEINNOVATE” (Project Code: T1EDK-00527 and Acronym: SMARTRANS). References [4] [5] [6] [7] [8] [9] [10] [11] [12] [1] [2] [3] Best-published TD TD T.J. Ai and V. Kachitvichyanukul, A particle swarm optimization for the vehicle routing problem with simultaneous pickup and delivery, Comput Oper Res 36 (2009), 1693–1702. doi:https://doi.org/10.1016/j.cor.2008.04.003 R. Baldacci, A. Mingozzi and R. Roberti, Recent exact algorithms for solving the vehicle routing problem under capacity and time window constraints, Eur J Oper Res 218 (2012), 1–6. doi:10.1016/j.ejor.2011.07.037 R. Baños, J. Ortega, C. Gil, A.L. Márquez and F. De Toro, A hybrid meta-heuristic for multi-objective Vehicle Routing Problems with Time Windows, Comput Ind Eng 65 (2013), 286–296. doi:10.1016/j.cie.2013.01.007 [13] [14] [15] Deviation (%) 3.03 – 8.02 7.23 5.98 10.27 – – – 6.61 – – – 11.48 – – – 12.69 11.17 J. Berger, M. Barkaoui and O. Bräysy, A Route-Directed Hybrid Genetic Approach For The Vehicle Routing Problem With Time Windows, INFOR Inf Syst Oper Res 41 (2003), 179–194. doi:10.1080/03155986.2003.11732675 D. Chen, E. Cao and W. Lai, A differential evolution algorithm for pickups and deliveries problem with fuzzy time windows, J Intell Fuzzy Syst 30 (2016), 267–277. doi:10.3233/IFS-151752 T.C. Chiang and W.H. Hsu, A knowledge-based evolutionary algorithm for the multiobjective vehicle routing problem with time windows, Comput Oper Res 45 (2014), 25–37. doi:10.1016/j.cor.2013.11.014 W.C. Chiang and R.A. Russell, A Reactive Tabu Search Metaheuristic for the Vehicle Routing Problem with Time Windows, INFORMS J Comput 9 (1997), 417–430. doi:doi:10.1287/ijoc.9.4.417 N. Christofides, A. Mingozzi and P. Toth, The vehicle routing problem, Wiley, Chichester, (1979). G. Clarke and J.W. Wright, Scheduling of Vehicles from a Central Depot to a Number of Delivery Points, Oper Res 12 (1964), 568–581. doi:10.1287/opre.12.4.568 Z.J. Czech and P. Czarnas, Parallel simulated annealing for the vehicle routing problem with time windows, in: 10th Euromicro Work. Parallel, Distrib. Network-Based Process., 2002 376–383. doi:10.1109/EMPDP.2002.994313 G.B. Dantzig and J.H. Ramser, The Truck Dispatching Problem, Manage Sci 6 (1959), 80–91. doi:10.1287/mnsc.6.1.80 K. Deb, A. Pratap, S. Agarwal and T. Meyarivan, A fast and elitist multiobjective genetic algorithm: NSGA-II, IEEE Trans Evol Comput 6 (2002), 182–197. doi:10.1109/4235.996017 J. Dethloff, Vehicle routing and reverse logistics: The vehicle routing problem with simultaneous delivery and pick-up, OR-Spektrum 23 (2001), 79–96. doi:10.1007/PL00013346 L.M. Gambardella, É. Taillard and G. Agazzi, Macsvrptw: A multiple colony system for vehicle routing problems with time windows, in: New Ideas Optim 1999 63–76. A. Garcia-Najera and J.A. Bullinaria, An improved multiobjective evolutionary algorithm for the vehicle routing G.D. Konstantakopoulos et al. / Delivering and picking goods under time window restrictions [16] [17] [18] [19] [20] [21] [22] [23] [24] problem with time windows, Comput Oper Res 38 (2011), 287–300. doi:10.1016/j.cor.2010.05.004 S.P. Gayialis and I.P. Tatsiopoulos, Design of an IT-driven decision support system for vehicle routing and scheduling, Eur J Oper Res 152 (2004), 382–398. doi:10.1016/S03772217(03)00031-6 S.P. Gayialis, G.D. Konstantakopoulos and I.P. Tatsiopoulos, Vehicle Routing Problem for Urban Freight Transportation: A Review of the Recent Literature, in: Oper. Res. Digit. Era–ICT Challenges, Springer P, Springer, 2019 89–104. K. Ghoseiri and S.F. Ghannadpour, Multi-objective vehicle routing problem with time windows using goal programming and genetic algorithm, Appl Soft Comput 10 (2010), 1096–1107. doi:10.1016/j.asoc.2010.04.001 M.G. Giaglis, I. Minis, A. Tatarakis and V. Zeimpekis, Minimizing logistics risk through real-time vehicle routing and mobile technologies, Int J Phys Distrib Logist Manag 34 (2004), 749–764. doi:10.1108/09600030410567504 B.E. Gillett and L.R. Miller, A Heuristic Algorithm for the Vehicle-Dispatch Problem, Oper Res 22 (1974), 340–349. doi:10.1287/opre.22.2.340 G. Gong, Q. Deng, X. Gong, L. Zhang, H. Wang and H. Xie, A Bee Evolutionary Algorithm for Multiobjective Vehicle Routing Problem with Simultaneous Pickup and Delivery, Math Probl Eng 2018 (2018), 2571380. doi:10.1155/2018/2571380 Y.J. Gong, J. Zhang, O. Liu and C.H.S. Hung, Optimizing the Vehicle Routing Problem With Time Windows: A Discrete Particle Swarm Optimization Approach, IEEE Trans Syst Man Cybern Part C Appl Rev 42 (2012), 224–267. doi:10.1109/TSMCC.2011.2148712 K. Govindan, H. Soleimani and D. Kannan, Reverse logistics and closed-loop supply chain: A comprehensive review to explore the future, Eur J Oper Res 240 (2015), 603–626. doi:10.1016/j.ejor.2014.07.012 R.P. Hornstra, A. Silva, K.J. Roodbergen and L.C. Coelho, The vehicle routing problem with simultaneous pickup and delivery and handling costs, Comput Oper Res 115 (2020), 104858. doi:https://doi.org/10.1016/j.cor.2019.104858 [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] 5333 G.D. Konstantakopoulos, S.P. Gayialis and E.P. Kechagias, Vehicle routing problem and related algorithms for logistics distribution: a literature review and classification, Oper Res Int J (2020). doi:10.1007/s12351-020-00600-7 G.D. Konstantakopoulos, S.P. Gayialis, E.P. Kechagias, G.A. Papadopoulos and I.P. Tatsiopoulos, A Multiobjective Large Neighborhood Search Metaheuristic for the Vehicle Routing Problem with Time Windows, Algorithms 13 (2020). doi:10.3390/a13100243 N. Labadie, C. Prins and C. Prodhon, Metaheuristics for Vehicle Routing Problems, John Wiley & Sons (2016). G. Nagy and S. Salhi, Heuristic algorithms for single and multiple depot vehicle routing problems with pickups and deliveries, Eur J Oper Res 162 (2005), 126–141. doi:https://doi.org/10.1016/j.ejor.2002.11.003 B. Ombuki, B.J. Ross and F. Hanshar, Multi-objective genetic algorithms for vehicle routing problem with time windows, Appl Intell 24 (2006) 17–30. doi:10.1007/s10489006-6926-z S. Salhi and G. Nagy, A cluster insertion heuristic for single and multiple depot vehicle routing problems with backhauling, J Oper Res Soc 50 (1999), 1034–1042. doi:10.1057/palgrave.jors.2600808 M.M. Solomon, Algorithms for the vehicle routing and scheduling problems with time window constraints, Oper Res 35 (1987), 254–265. K.C. Tan, Y.H. Chew and L.H. Lee, A hybrid multiobjective evolutionary algorithm for solving vehicle routing problem with time windows, Comput Optim Appl 34 (2006), 115. M. Woch and P. Łebkowski, Sequential Simulated Annealing for the Vehicle Routing Problem with Time Windows, Decis Mak Manuf Serv 3 (2009), 87–100. M. Yousefikhoshbakht, F. Didehvar and F. Rahmati, A combination of modified tabu search and elite ant system to solve the vehicle routing problem with simultaneous pickup and delivery, J Ind Prod Eng 31 (2014), 65–75. doi:10.1080/21681015.2014.893928 5334 G.D. Konstantakopoulos et al. / Delivering and picking goods under time window restrictions Appendix The new solutions proposed in Solomon’s benchmark instances are: R202: Number of vehicles = 5, Total distance traveled = 1014.96 Vehicle 1: 0 −→ 69 −→ 1 −→ 30 −→ 90 −→ 10 −→ 32 −→ 70 −→ 31 −→ 52 −→ 0 Vehicle 2: 0 −→ 45 −→ 47 −→ 36 −→ 63 −→ 64 −→ 11 −→ 19 −→ 62 −→ 88 −→ 7 −→ 18 −→ 6 −→ 99 −→ 96 −→ 95 −→ 97 −→ 43 −→ 2 −→ 13 −→ 58 −→ 0 Vehicle 3: 0 −→ 92 −→ 37 −→ 42 −→ 15 −→ 14 −→ 38 −→ 44 −→ 16 −→ 61 −→ 86 −→ 84 −→ 83 −→ 8 −→ 82 −→ 48 −→ 49 −→ 46 −→ 17 −→ 60 −→ 5 −→ 93 −→ 85 −→ 91 −→ 100 −→ 98 −→ 59 −→ 94 −→ 89 −→ 0 Vehicle 4: 0 −→ 27 −→ 50 −→ 33 −→ 65 −→ 71 −→ 29 −→ 76 −→ 3 −→ 79 −→ 78 −→ 81 −→ 9 −→ 51 −→ 20 −→ 66 −→ 35 −→ 34 −→ 68 −→ 24 −→ 80 −→ 77 −→ 12 −→ 0 Vehicle 5: 0 −→ 28 −→ 26 −→ 39 −→ 67 −→ 23 −→ 72 −→ 73 −→ 21 −→ 40 −→ 53 −→ 87 −→ 57 −→ 41 −→ 22 −→ 75 −→ 56 −→ 4 −→ 0 R210: Number of vehicles = 4, Total distance traveled = 920.13 Vehicle 1: 0 −→ 2 −→ 57 −→ 15 −→ 42 −→ 14 −→ 44 −→ 38 −→ 86 −→ 16 −→ 61 −→ 99 −→ 59 −→ 87 −→ 43 −→ 41 −→ 22 −→ 74 −→ 56 −→ 4 −→ 55 −→ 25 −→ 54 −→ 26 −→ 58 −→ 0 Vehicle 2: 0 −→ 95 −→ 92 −→ 98 −→ 85 −→ 5 −→ 45 −→ 36 −→ 47 −→ 48 −→ 82 −→ 7 −→ 88 −→ 62 −→ 19 −→ 11 −→ 64 −→ 49 −→ 46 −→ 8 −→ 84 −→ 17 −→ 83 −→ 60 −→ 94 −→ 13 −→ 97 −→ 37 −→ 100 −→ 91 −→ 93 −→ 96 −→ 0 Vehicle 3: 0 −→ 27 −→ 69 −→ 1 −→ 30 −→ 65 −→ 71 −→ 33 −→ 50 −→ 76 −→ 3 −→ 79 −→ 81 −→ 9 −→ 34 −→ 78 −→ 29 −→ 24 −→ 80 −→ 68 −→ 77 −→ 0 Vehicle 4: 0 −→ 28 −→ 12 −→ 39 −→ 67 −→ 23 −→ 75 −→ 72 −→ 73 −→ 21 −→ 40 −→ 53 −→ 6 −→ 89 −→ 18 −→ 52 −→ 31 −→ 10 −→ 63 −→ 90 −→ 20 −→ 51 −→ 35 −→ 0 The new solutions proposed in Salhi and Nagy’s benchmark instances are: CMT2X: Number of vehicles = 6, Total distance traveled = 771.01 Vehicle 1: 0 −→ 8 −→ 35 −→ 53 −→ 14 −→ 19 −→ 54 −→ 13 −→ 57 −→ 15 −→ 5 −→ 37 −→ 20 −→ 70 −→ 60 −→ 71 −→ 36 −→ 69 −→ 61 −→ 22 −→ 0 Vehicle 2: 0 −→ 58 −→ 10 −→ 38 −→ 65 −→ 11 −→ 66 −→ 59 −→ 0 Vehicle 3: 0 −→ 26 −→ 67 −→ 34 −→ 68 −→ 73 −→ 62 −→ 28 −→ 74 −→ 21 −→ 47 −→ 48 −→ 30 −→ 0 Vehicle 4: 0 −→ 4 −→ 29 −→ 45 −→ 27 −→ 52 −→ 46 −→ 7 −→ 72 −→ 39 −→ 9 −→ 12 −→ 0 Vehicle 5: 0 −→ 2 −→ 33 −→ 63 −→ 1 −→ 43 −→ 42 −→ 64 −→ 41 −→ 56 −→ 23 −→ 24 −→ 49 −→ 16 −→ 0 Vehicle 6: 0 −→ 75 −→ 6 −→ 51 −→ 17 −→ 40 −→ 3 −→ 44 −→ 32 −→ 50 −→ 18 −→ 25 −→ 55 −→ 31 −→ 0 CMT5X: Number of vehicles = 5, Total distance traveled = 606.33 Vehicle 1: 0 −→ 46 −→ 11 −→ 2 −→ 20 −→ 35 −→ 36 −→ 3 −→ 28 −→ 22 −→ 0 Vehicle 2: 0 −→ 45 −→ 33 −→ 39 −→ 10 −→ 30 −→ 34 −→ 50 −→ 9 −→ 49 −→ 0 Vehicle 3: 0 −→ 5 −→ 38 −→ 16 −→ 29 −→ 21 −→ 31 −→ 26 −→ 7 −→ 23 −→ 6 −→ 0 Vehicle 4: 0 −→ 32 −→ 1 −→ 27 −→ 48 −→ 8 −→ 43 −→ 24 −→ 14 −→ 25 −→ 13 −→ 18 −→ 0 Vehicle 5: 0 −→ 12 −→ 47 −→ 17 −→ 37 −→ 15 −→ 44 −→ 42 −→ 19 −→ 40 −→ 41 −→ 4 −→ 0 CMT7X: Number of vehicles = 9, Total distance traveled = 1040.67 Vehicle 1: 0 −→ 75 −→ 4 −→ 67 −→ 34 −→ 46 −→ 52 −→ 27 −→ 13 −→ 0 Vehicle 2: 0 −→ 26 −→ 12 −→ 40 −→ 17 −→ 51 −→ 6 −→ 68 −→ 2 −→ 0 Vehicle 3: 0 −→ 7 −→ 35 −→ 8 −→ 54 −→ 19 −→ 14 −→ 53 −→ 11 −→ 0 Vehicle 4: 0 −→ 45 −→ 29 −→ 48 −→ 70 −→ 47 −→ 21 −→ 74 −→ 28 −→ 30 −→ 0 Vehicle 5: 0 −→ 33 −→ 73 −→ 1 −→ 43 −→ 41 −→ 42 −→ 22 −→ 62 −→ 0 Vehicle 6: 0 −→ 16 −→ 63 −→ 23 −→ 56 −→ 49 −→ 24 −→ 31 −→ 10 −→ 0 Vehicle 7: 0 −→ 38 −→ 65 −→ 66 −→ 59 −→ 58 −→ 25 −→ 55 −→ 18 −→ 0 Vehicle 8: 0 −→ 3 −→ 44 −→ 32 −→ 50 −→ 9 −→ 39 −→ 72 −→ 71 −→ 60 −→ 20 −→ 0 Vehicle 9: 0 −→ 57 −→ 15 −→ 5 −→ 37 −→ 36 −→ 69 −→ 61 −→ 64 −→ 0 G.D. Konstantakopoulos et al. / Delivering and picking goods under time window restrictions CMT8X: Number of vehicles = 8, Total distance traveled = 1036.52 Vehicle 1: 0 −→ 94 −→ 59 −→ 85 −→ 93 −→ 95 −→ 13 −→ 87 −→ 97 −→ 100 −→ 98 −→ 37 −→ 92 −→ 91 −→ 0 Vehicle 2: 0 −→ 27 −→ 28 −→ 68 −→ 79 −→ 81 −→ 9 −→ 71 −→ 66 −→ 65 −→ 51 −→ 53 −→ 58 −→ 0 Vehicle 3: 0 −→ 40 −→ 26 −→ 12 −→ 76 −→ 50 −→ 77 −→ 3 −→ 33 −→ 34 −→ 78 −→ 89 −→ 5 −→ 0 Vehicle 4: 0 −→ 96 −→ 99 −→ 61 −→ 16 −→ 44 −→ 86 −→ 17 −→ 84 −→ 83 −→ 18 −→ 30 −→ 32 −→ 90 −→ 10 −→ 62 −→ 52 −→ 0 Vehicle 5: 0 −→ 28 −→ 26 −→ 39 −→ 67 −→ 23 −→ 72 −→ 73 −→ 21 −→ 40 −→ 53 −→ 87 −→ 57 −→ 41 −→ 22 −→ 75 −→ 56 −→ 4 −→ 0 Vehicle 6: 0 −→ 2 −→ 57 −→ 42 −→ 15 −→ 14 −→ 38 −→ 43 −→ 41 −→ 22 −→ 23 −→ 75 −→ 72 −→ 0 Vehicle 7: 0 −→ 73 −→ 74 −→ 21 −→ 56 −→ 39 −→ 67 −→ 25 −→ 55 −→ 80 −→ 88 −→ 63 −→ 64 −→ 11 −→ 0 Vehicle 8: 0 −→ 82 −→ 48 −→ 47 −→ 49 −→ 36 −→ 46 −→ 19 −→ 7 −→ 60 −→ 8 −→ 45 −→ 0 CMT9X: Number of vehicles = 12, Total distance traveled = 1744.19 Vehicle 1: 0 −→ 112 −→ 147 −→ 6 −→ 94 −→ 95 −→ 59 −→ 93 −→ 85 −→ 98 −→ 37 −→ 92 −→ 00 −→ 75 −→ 4 −→ 67 −→ 34 −→ 46 −→ 52 −→ 27 −→ 13 −→ 0 Vehicle 2: 0 −→ 97 −→ 117 −→ 53 −→ 105 −→ 26 −→ 149 −→ 109 −→ 12 −→ 132 −→ 69 −→ 1 −→ 30 −→ 62 −→ 0 Vehicle 3: 0 −→ 27 −→ 146 −→ 52 −→ 127 −→ 31 −→ 88 −→ 148 −→ 10 −→ 108 −→ 90 −→ 32 −→ 111 −→ 58 −→ 40 −→ 0 Vehicle 4: 0 −→ 21 −→ 73 −→ 72 −→ 74 −→ 133 −→ 22 −→ 75 −→ 56 −→ 139 −→ 110 −→ 28 −→ 89 −→ 18 −→ 0 Vehicle 5: 0 −→ 118 −→ 60 −→ 5 −→ 84 −→ 8 −→ 17 −→ 113 −→ 86 −→ 141 −→ 13 −→ 137 −→ 87 −→ 144 −→ 57 −→ 115 −→ 0 Vehicle 6: 0 −→ 2 −→ 145 −→ 41 −→ 15 −→ 96 −→ 99 −→ 104 −→ 100 −→ 138 −→ 0 Vehicle 7: 0 −→ 119 −→ 44 −→ 16 −→ 14 −→ 142 −→ 42 −→ 43 −→ 116 −→ 77 −→ 79 −→ 129 −→ 76 −→ 0 Vehicle 8: 0 −→ 33 −→ 81 −→ 102 −→ 50 −→ 68 −→ 101 −→ 70 −→ 122 −→ 20 −→ 51 −→ 9 −→ 120 −→ 0 Vehicle 9: 0 −→ 135 −→ 35 −→ 103 −→ 106 −→ 7 −→ 82 −→ 48 −→ 124 −→ 47 −→ 36 −→ 143 −→ 49 −→ 0 Vehicle 10: 0 −→ 150 −→ 80 −→ 134 −→ 24 −→ 29 −→ 121 −→ 34 −→ 78 −→ 3 −→ 54 −→ 83 −→ 114 −→ 46 −→ 123 −→ 19 −→ 107 −→ 0 Vehicle 11: 0 −→ 130 −→ 55 −→ 25 −→ 39 −→ 23 −→ 67 −→ 4 −→ 91 −→ 61 −→ 45 −→ 0 Vehicle 12: 0 −→ 38 −→ 140 −→ 125 −→ 11 −→ 63 −→ 126 −→ 64 −→ 131 −→ 128 −→ 71 −→ 136 −→ 65 −→ 66 −→ 0 CMT9X: Number of vehicles = 13, Total distance traveled = 1741.36 Vehicle 1: 0 −→ 112 −→ 147 −→ 94 −→ 95 −→ 59 −→ 93 −→ 85 −→ 98 −→ 37 −→ 92 −→ 97 −→ 0 Vehicle 2: 0 −→ 89 −→ 117 −→ 53 −→ 105 −→ 26 −→ 149 −→ 109 −→ 12 −→ 0 Vehicle 3: 0 −→ 132 −→ 69 −→ 1 −→ 30 −→ 62 −→ 52 −→ 127 −→ 31 −→ 88 −→ 148 −→ 10 −→ 108 −→ 90 −→ 32 −→ 111 −→ 0 Vehicle 4: 0 −→ 58 −→ 40 −→ 21 −→ 73 −→ 72 −→ 74 −→ 133 −→ 22 −→ 75 −→ 56 −→ 139 −→ 110 −→ 0 Vehicle 5: 0 −→ 28 −→ 27 −→ 146 −→ 18 −→ 118 −→ 60 −→ 5 −→ 84 −→ 8 −→ 6 −→ 0 Vehicle 6: 0 −→ 17 −→ 113 −→ 86 −→ 141 −→ 13 −→ 137 −→ 87 −→ 144 −→ 57 −→ 115 −→ 0 Vehicle 7: 0 −→ 2 −→ 145 −→ 41 −→ 15 −→ 96 −→ 99 −→ 104 −→ 100 −→ 138 −→ 0 Vehicle 8: 0 −→ 119 −→ 44 −→ 16 −→ 14 −→ 142 −→ 42 −→ 43 −→ 116 −→ 77 −→ 79 −→ 129 −→ 76 −→ 0 Vehicle 9: 0 −→ 33 −→ 81 −→ 102 −→ 50 −→ 68 −→ 101 −→ 70 −→ 122 −→ 20 −→ 51 −→ 9 −→ 120 −→ 0 Vehicle 10: 0 −→ 135 −→ 35 −→ 103 −→ 106 −→ 7 −→ 82 −→ 48 −→ 124 −→ 47 −→ 36 −→ 143 −→ 49 −→ 0 Vehicle 11: 0 −→ 150 −→ 80 −→ 134 −→ 24 −→ 29 −→ 121 −→ 34 −→ 78 −→ 3 −→ 54 −→ 83 −→ 114 −→ 46 −→ 123 −→ 19 −→ 107 −→ 0 Vehicle 12: 0 −→ 130 −→ 55 −→ 25 −→ 39 −→ 23 −→ 67 −→ 4 −→ 91 −→ 61 −→ 45 −→ 0 Vehicle 13: 0 −→ 38 −→ 140 −→ 125 −→ 11 −→ 63 −→ 126 −→ 64 −→ 131 −→ 128 −→ 71 −→ 136 −→ 65 −→ 66 −→ 0 5335 5336 G.D. Konstantakopoulos et al. / Delivering and picking goods under time window restrictions CMT9X: Number of vehicles = 14, Total distance traveled = 1698.21 Vehicle 1: 0 −→ 112 −→ 94 −→ 95 −→ 59 −→ 85 −→ 93 −→ 98 −→ 100 −→ 37 −→ 92 −→ 0 Vehicle 2: 0 −→ 97 −→ 117 −→ 137 −→ 53 −→ 105 −→ 26 −→ 149 −→ 12 −→ 109 −→ 68 −→ 150 −→ 80 −→ 116 −→ 0 Vehicle 3: 0 −→ 40 −→ 76 −→ 77 −→ 102 −→ 27 −→ 146 −→ 0 Vehicle 4: 0 −→ 89 −→ 147 −→ 6 −→ 96 −→ 99 −→ 104 −→ 118 −→ 5 −→ 84 −→ 61 −→ 28 −→ 111 −→ 138 −→ 0 Vehicle 5: 0 −→ 50 −→ 1 −→ 132 −→ 69 −→ 101 −→ 32 −→ 90 −→ 31 −→ 127 −→ 52 −→ 0 Vehicle 6: 0 −→ 13 −→ 87 −→ 144 −→ 57 −→ 115 −→ 2 −→ 145 −→ 41 −→ 22 −→ 133 −→ 0 Vehicle 7: 0 −→ 21 −→ 73 −→ 72 −→ 74 −→ 75 −→ 56 −→ 39 −→ 139 −→ 4 −→ 110 −→ 58 −→ 18 −→ 106 −→ 0 Vehicle 8: 0 −→ 7 −→ 82 −→ 124 −→ 47 −→ 123 −→ 19 −→ 107 −→ 48 −→ 60 −→ 83 −→ 0 Vehicle 9: 0 −→ 114 −→ 8 −→ 125 −→ 45 −→ 17 −→ 113 −→ 16 −→ 141 −→ 88 −→ 148 −→ 62 −→ 10 −→ 108 −→ 0 Vehicle 10: 0 −→ 131 −→ 128 −→ 20 −→ 30 −→ 79 −→ 129 −→ 120 −→ 81 −→ 3 −→ 0 Vehicle 11: 0 −→ 9 −→ 103 −→ 71 −→ 135 −→ 33 −→ 70 −→ 122 −→ 51 −→ 66 −→ 65 −→ 0 Vehicle 12: 0 −→ 136 −→ 35 −→ 78 −→ 54 −→ 130 −→ 134 −→ 24 −→ 29 −→ 121 −→ 34 −→ 0 Vehicle 13: 0 −→ 42 −→ 142 −→ 14 −→ 119 −→ 44 −→ 91 −→ 86 −→ 15 −→ 43 −→ 38 −→ 140 −→ 46 −→ 0 Vehicle 14: 0 −→ 55 −→ 25 −→ 67 −→ 23 −→ 126 −→ 63 −→ 11 −→ 64 −→ 49 −→ 143 −→ 36 −→ 0 CMT9X: Number of vehicles = 17, Total distance traveled = 1937.02 Vehicle 1: 0 −→ 112 −→ 156 −→ 183 −→ 94 −→ 95 −→ 59 −→ 85 −→ 93 −→ 98 −→ 92 −→ 91 −→ 0 Vehicle 2: 0 −→ 27 −→ 167 −→ 190 −→ 31 −→ 162 −→ 101 −→ 176 −→ 102 −→ 157 −→ 81 −→ 120 −→ 0 Vehicle 3: 0 −→ 53 −→ 105 −→ 28 −→ 111 −→ 196 −→ 68 −→ 150 −→ 80 −→ 177 −→ 170 −→ 12 −→ 184 −→ 154 −→ 138 −→ 0 Vehicle 4: 0 −→ 152 −→ 58 −→ 40 −→ 13 −→ 87 −→ 97 −→ 151 −→ 100 −→ 193 −→ 141 −→ 44 −→ 119 −→ 142 −→ 15 −→ 147 −→ 0 Vehicle 5: 0 −→ 89 −→ 166 −→ 118 −→ 5 −→ 84 −→ 173 −→ 61 −→ 16 −→ 191 −→ 192 −→ 37 −→ 0 Vehicle 6: 0 −→ 146 −→ 52 −→ 127 −→ 88 −→ 182 −→ 148 −→ 159 −→ 62 −→ 10 −→ 189 −→ 108 −→ 0 Vehicle 7: 0 −→ 180 −→ 149 −→ 26 −→ 195 −→ 130 −→ 134 −→ 163 −→ 24 −→ 132 −→ 69 −→ 1 −→ 0 Vehicle 8: 0 −→ 50 −→ 76 −→ 116 −→ 77 −→ 158 −→ 3 −→ 79 −→ 129 −→ 169 −→ 55 −→ 109 −→ 0 Vehicle 9: 0 −→ 6 −→ 96 −→ 99 −→ 104 −→ 117 −→ 137 −→ 178 −→ 115 −→ 2 −→ 144 −→ 172 −→ 42 −→ 0 Vehicle 10: 0 −→ 18 −→ 153 −→ 106 −→ 194 −→ 7 −→ 82 −→ 48 −→ 123 −→ 19 −→ 107 −→ 175 −→ 0 Vehicle 11: 0 −→ 198 −→ 21 −→ 72 −→ 197 −→ 75 −→ 133 −→ 22 −→ 171 −→ 74 −→ 73 −→ 110 −→ 179 −→ 0 Vehicle 12: 0 −→ 155 −→ 4 −→ 139 −→ 39 −→ 187 −→ 165 −→ 60 −→ 83 −→ 199 −→ 114 −→ 8 −→ 174 −→ 125 −→ 45 −→ 17 −→ 113 −→ 0 Vehicle 13: 0 −→ 70 −→ 30 −→ 160 −→ 128 −→ 188 −→ 161 −→ 103 −→ 9 −→ 164 −→ 34 −→ 33 −→ 0 Vehicle 14: 0 −→ 185 −→ 78 −→ 135 −→ 35 −→ 136 −→ 71 −→ 66 −→ 20 −→ 122 −→ 51 −→ 0 Vehicle 15: 0 −→ 32 −→ 131 −→ 181 −→ 63 −→ 126 −→ 90 −→ 57 −→ 145 −→ 41 −→ 186 −→ 56 −→ 23 −→ 67 −→ 0 Vehicle 16: 0 −→ 121 −→ 29 −→ 25 −→ 54 −→ 65 −→ 11 −→ 124 −→ 47 −→ 168 −→ 36 −→ 143 −→ 49 −→ 64 −→ 0 Vehicle 17: 0 −→ 43 −→ 14 −→ 38 −→ 140 −→ 86 −→ 46 −→ 0