A heuristic for the pickup and delivery traveling salesman problem
Introduction
The Traveling Salesman Problem (TSP) has received considerable attention over the last two decades. This led to the development of continuously improving optimal solution methods [1], [2] capable of handling small problems as well as some efficient heuristics [3], [4], [5] to handle larger problems. But, as pointed out by Savelsbergh and Sol [6], much less attention has been devoted to Traveling Salesman Problems with Precedence Constraints (TSP-PC) like the Dial-A-Ride Problem (DARP), the Traveling Salesman Problem with Backhaul (TSPB) or the Pickup and Delivery Traveling Salesman Problem (PDTSP).
The Dial-A-Ride Problem is a TSP with precedence relations where a vehicle should transport a number of passengers. Each passenger should be transported from a given location (origin) to a given destination. The DARP is encountered frequently in the transportation of handicapped persons. In this case, as we transport human beings, the objective should no longer be to minimize the traveled distance but to minimize a function of the waiting time of the transported persons or a function measuring the overall client inconvenience [6]. Also, the DARP is a capacitated problem since only a limited number of passengers can be transported by the vehicle. Both the static DARP (where all transportation requests are known in advance) and the dynamic DARP (where some of the requests are transmitted to the vehicle driver on the road) have been considered [7]. Small problems can be solved to optimality by using dynamic programming while heuristic approaches are the only efficient approaches to deal with larger problems. Psaraftis [8] presents a worst-case analysis of the following two-phase heuristic for solving the static single-vehicle DARP. The first phase of the basic version of this heuristic consists of constructing a tour through all vertices by duplicating the minimum spanning tree. Thus, the resulting tour visits some vertices once and other vertices will be visited more than once. In the second phase, we move on the tour clockwise, beginning at the start location, while skipping any vertex that has been visited before or any destination whose origin has not been previously visited, until a feasible solution is obtained. The solution is then improved by performing a sequence of local interchanges.
The Traveling Salesman Problem with Backhaul is also a TSP with precedence relations. Given a set of linehaul customers and a set of backhaul customers, the TSPB consists of determining a least-cost tour such that all linehaul customers are visited before visiting any backhaul customer and each customer is visited exactly once. Gendreau et al. [9] presented some heuristics for the TSPB as well as a lower bound on the optimal tour length. On problems having up to 300 vertices they reported that the solutions obtained by the first version of their Double Cycle heuristic are, on average, within 0.5% of the lower bound.
The Pickup and Delivery Traveling Salesman Problem which will be addressed in this paper is another TSP with precedence relations and can be defined as follow. Let be a graph where is the vertex set and is the edge set. The vertex set is partitioned into three subsets: , where the vertex 1 is the starting point or the depot, P is the set of pickup customers and D is the set of delivery customers. With E is associated a cost matrix C=(cij) representing travel costs, travel distances or travel times. To each pickup customer i∈P is associated one and only one delivery customer, denoted d(i), and to each delivery customer j∈D is associated one and only one pickup customer, denoted . Thus |P|=|D| and n is odd. The problem is to find the least-cost Hamiltonian cycle on G such that each pickup customer is visited before its associated delivery customer. The PDTSP is different from the DARP as the objective of the PDTSP is simply to minimize the total traveling cost without any capacity restriction. Also, we notice that the PDTSP could be transformed into a TSPB if we add the restriction that all pickup customers should be visited before visiting any delivery customer. Consequently, the TSPB can be seen as a special case of the PDTSP.
Few papers have addressed the PDTSP. Kalantari et al. [10] proposed a branch and bound algorithm to deal with pickup and delivery constraints but this approach can only handle very small instances (less than 40 vertices). Savelsberg [11] investigated the implementation of the k-exchange improvement procedures to solve routing problems with precedence constraints and particularly to solve the PDTSP. He proposed implementations of the 2-exchange, Or-exchange and 3-exchange procedures that allow to reduce their processing time. Healy and Moll [12] proposed an improvement heuristic, called the sacrificing algorithm, and used it to solve the PDTSP. This algorithm can be seen as an augmentation of the 2-opt heuristic, and as thus it produced superior results. However, it was clearly less efficient than the 3-opt heuristic.
In this paper we propose a new heuristic to solve the PDTSP and compare its performance to a number of other heuristics. The paper is organized as follows. In 2 Extending some traveling salesman heuristics, 3 Using TSPB heuristics to solve the PDTSP we show how to extend some TSP and TSPB algorithms to solve the PDTSP. In Section 4 we give the details of the proposed heuristic. The description of our comparative study and the computational results obtained are given in 5 Test problems, 6 Computational results, respectively. Finally, our conclusions follow in Section 7.
Section snippets
Extending some traveling salesman heuristics
Several heuristics designed to solve the basic TSP can be extended to handle the PDTSP. Mainly, we have to modify these heuristics in order to make sure that no delivery customer is visited before its associated pickup customer. For example, to extend any insertion heuristic, we have to make sure that delivery customers are inserted only in the tour portion following their corresponding pickup customers. Improvement heuristics based on arc exchanges can also be extended to handle the PDTSP. The
Using TSPB heuristics to solve the PDTSP
The PDTSP can be transformed into a TSPB by considering pickup customers as linehaul customers and delivery customers as backhaul customers (consequently all pickup customers will be visited before visiting any delivery customer) and thus can be solved as a TSPB. Obviously, the TSPB solution satisfies the original PDTSP constraints as each pickup customer will be visited before its associated delivery customer. As mentioned above, the Double Cycle heuristic [9] and particularly its version
The proposed heuristic
The algorithm we propose is composed of two phases. The first phase, called the Double Insertion heuristic (DI), inserts each delivery customer simultaneously with its associated pickup customer. The second phase, called the Deletion and Re-Insertion heuristic, is an improvement procedure that uses the 4-Opt improvement heuristic [5].
Test problems
As there are no benchmark problems available to evaluate the performance of the proposed heuristic, we generated a set of 108 problem instances divided into 3 subsets (called A, B, and C) of 36 problems each. These problems were derived from 36 TSPLIB problems [15] having up to 441 vertices. All the 108 problems are Euclidean and the distances between the vertices were rounded to the nearest integer. These test problems can be obtained from the authors upon request.
The derived problems are
Computational results
To evaluate its performance, the Double Insertion heuristic (DI) was compared to four other heuristics: the Double Cycle 1 (DC1), the cheapest insertion, the farthest insertion and Psaraftis’ algorithm [8]. Each of the 108 test-problems was solved by applying the double insertion heuristic with 30 different combinations of α and and ) as well as by the other four heuristics (a total of 34 heuristics) followed by the 2-opt, the 3-opt, the 4-Opt and the
Conclusion
This paper presented a new and efficient two-phase heuristic to solve the pickup and delivery traveling salesman problem. In both the first phase, a construction phase called the Double Insertion heuristic, and the second phase, an improvement phase called the Deletion and Re-Insertion heuristic, a pickup customer is inserted or deleted at the same time as the associated delivery customer. To evaluate its performance, the proposed heuristic was compared to 4 other heuristics and our
Acknowledgements
This work was partially supported by grants OPG0036509 and OGP0172633 from the Canadian Natural Sciences and Engineering Research Council (NSERC). This support is gratefully acknowledged. The authors also thank the referees for their valuable comments and suggestions.
Jacques Renaud is Professor at Télé-université, Quebec city. His research interests include vehicle routing and distribution problems.
References (15)
Analysis of an O(N2) heuristic for the single vehicle many-to-many euclidean dial-a-ride problem
Transportation Research
(1983)- et al.
The traveling salesman problem with backhauls
Computers and Operations Research
(1996) - et al.
An algorithm for the traveling salesman problem with pickup and delivery customers
European Journal of Operational Research
(1985) An efficient implementation of local search algorithms for constrained routing problems
European Journal of Operational Research
(1990)- et al.
A new extension of local search applied to the dial-a-ride problem
European Journal of Operational Research
(1995) k-interchange procedure for local search in a precedence-constrained routing problem
European Journal of Operational Research
(1983)- et al.
A branch-and-cut algorithm for the resolution of large-scale symmetric traveling salesman problem
SIAM Review
(1991)
Cited by (102)
Collaborative multicenter reverse logistics network design with dynamic customer demands
2022, Expert Systems with ApplicationsKnowledge-guided two-stage memetic search for the pickup and delivery traveling salesman problem with FIFO loading
2022, Knowledge-Based SystemsAn XGBoost-enhanced fast constructive algorithm for food delivery route planning problem
2021, Computers and Industrial EngineeringPushing frontiers in auction-based transport collaborations
2020, Omega (United Kingdom)Human behaviour in the Euclidean Travelling Salesperson Problem: Computational modelling of heuristics and figural effects
2018, Cognitive Systems Research
Jacques Renaud is Professor at Télé-université, Quebec city. His research interests include vehicle routing and distribution problems.
Fayez F. Boctor is Professor at the Faculty of Administrative Sciences, Université Laval. His research interests include production and logistics management.
Jamal Ouenniche is an associate member of the Network Organization Technology Research Center. His research interests include production and logistics management.