A heuristic for the pickup and delivery traveling salesman problem

https://doi.org/10.1016/S0305-0548(99)00066-0Get rights and content

Abstract

This paper deals with the pickup and delivery traveling salesman problem. First we show how to adapt some classical traveling salesman heuristics to solve this problem, then we propose a new and efficient composite heuristic. The proposed heuristic is composed of two phases: a solution construction phase including a local optimization component and a deletion and re-insertion improvement phase. To evaluate its performance, the proposed heuristic was compared to the only available heuristic specially designed to solve this problem, to an adaptation of the most efficient heuristic designed to solve the traveling salesman problem with backhaul, to an adaptation of the farthest as well as to an adaptation of the cheapest insertion methods. Each of these heuristics was followed by our deletion and re-insertion procedure which considerably improved their performance. Results based on a new set of test problems show that the proposed heuristic outperforms all these reinforced heuristics.

Scope and purpose

In several physical distribution problems, goods must be picked at an origin and delivered to a destination. Examples include the transportation of handicapped persons, the pickup and delivery of fast courier, of some medical supplies, etc. This problem differs from classical transportation problems because we have to deal with precedence constraints between the customers to be visited. This article describes a powerful heuristic for this difficult 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 G=(V,E) be a graph where V={1,…,n} is the vertex set and E={(i,j):i≠j,i,j∈V} is the edge set. The vertex set is partitioned into three subsets: {1},P,D, 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 iP is associated one and only one delivery customer, denoted d(i), and to each delivery customer jD is associated one and only one pickup customer, denoted p(j). 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 r(α=0.5,0.75,1,1.25,1.5 and r=3,4,5,6,7,8) 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)

There are more references available in the full text version of this article.

Cited by (102)

View all citing articles on Scopus

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.

View full text