Professional Documents
Culture Documents
Tabu Search Heuristics For The Vehicle Routing Problem
Tabu Search Heuristics For The Vehicle Routing Problem
Tabu Search Heuristics For The Vehicle Routing Problem
Jean-François Cordeau
Gilbert Laporte
Canada Research Chair in Distribution Management and GERAD
HEC Montréal
3000, chemin de la Côte-Sainte-Catherine
Montréal, Canada H3T 2A7
{cordeau;gilbert}@crt.umontreal.ca
Abstract This article reviews some of the most important tabu search heuristics
for the vehicle routing problem. Some of the main tabu search features
are first described: neighbourhood structures, short term memory, long
term memory, intensification. The tabu search algorithms are then de-
scribed, followed by computational results and the conclusion.
1. Introduction
The classical Vehicle Routing Problem (VRP) is defined on an undi-
rected graph G = (V, E) where V = {v0 , v1 , . . . , vn } is a vertex set and
E = {(vi , vj ) : vi , vj ∈ V, i < j} is an edge set. Vertex v0 represents a
depot at which are based m identical vehicles of capacity Q, while the
remaining vertices are cities or customers. A non-negative cost, distance
or travel time matrix C = (cij ) is defined on E. Each customer vi has
a non-negative demand qi and a non-negative service time si . The VRP
consists of determining a set of m vehicle routes i) of minimum total cost;
ii) starting and ending at the depot; and such that iii) each customer
is visited exactly once by exactly one vehicle; iv) the total demand of
any route does not exceed Q; v) the total duration of any route does
2
where c(x) is the routing cost of solution x, Q(x) and D(x) measure
the total excess demand and total excess duration of all routes, respec-
tively, and α and β are self-adjusting parameters. Initially set equal
to 1, these parameters are periodically reduced (increased) if the last
µ solutions were all feasible (all infeasible), and µ is a user-controlled
parameter. The advantage of considering infeasible moves is greater in
contexts where simple neighbourhood structures are used, such as (1, 0)
moves. When sophisticated neighbourhood schemes are employed, like
ejection chains, the search process may be able to proceed from xt to
xt+2 directly, without going through the infeasible solution xt+1 .
idea was first proposed by Glover (1989) and later fine tuned by Taillard
(1992, 1993, 1994) and by Gendreau, Hertz, and Laporte (1994).
2.4 Intensification
Intensification consists of accentuating the search in promising re-
gions. Periodic route improvements by means of TSP algorithms may be
classified as intensification techniques. Another way of performing inten-
sification is to conduct a search using a wider neighbourhood structure
around some of the best known solutions.
The concept of Adaptive Memory is probably the most powerful in-
tensification tool for TS. An adaptive memory is a population of good
solutions encountered during the search procedure. It was applied to
the VRP for the first time by Rochat and Taillard (1995). Similar to
what is done in genetic algorithms, these authors combine solution el-
ements from the population to construct new solutions. If their value
is less than those of some solutions in the population, they are retained
and the worst solutions are discarded from the population. In the VRP
context, a new solution is initialized from a number of non-overlapping
routes extracted from good solutions. Typically these routes do not
cover all vertices for otherwise there would be overlaps. The search is
then initiated from the selected routes and the unrouted vertices.
3. An overview of TS algorithms
We now present an overview of some of the most popular TS algo-
rithms for the VRP, with an emphasis on the most innovative features
of each algorithm.
s t
m
m
n
Level 1 Level 2 Level 3 Level 4
Figure 1.1. Network flow problem for the Xu and Kelly algorithm.
...
1 2 3
Figure 1.2. An -level ejection chain. Three vertices are shown for each route. The
middle one is ejected.
more than once in the solution, but routes that violate capacity or du-
10
a) Transforming a b) Transforming a
blossom into a stem blossom into a blossom
by removing an edge and a stem by deleting
incident to the depot. an edge and introducing
another one.
Figure 1.3. Two ejection chain rules in the Flower algorithm. In both cases the
depot is represented by the black vertex.
this process, the number of active vehicle routes may vary. Candidate
solutions consisting only of blossoms are obtained by performing ejec-
tion moves that maintain the flower structures. This is done by suitably
deleting edges from the structure and inserting new ones. This process is
embedded within a TS mechanism by declaring tabu the reintroduction
of an edge that has just been deleted. As in some of the previous al-
gorithms, variable tabu tenures are used and a long-term diversification
strategy based on move frequencies is applied. Here, the penalty√ term
is randomly generated in an interval whose length is related to n.
Tabu Search Heuristics for theVehicle Routing Problem 11
Acknowledgements
This research was partly funded by the Canadian Natural Sciences
and Engineering Research Council (NSERC) under grants 227837–00
and OGP0039682, and by the Fonds pour la Formation de chercheurs et
l’aide à la recherche (FCAR) under grant 2002–ER–73080. This support
is gratefully acknowledged. Thanks are due to Cesar Rego and to a
referee for their valuable comments.
Table 1.1. Summary of computational results
Osman Taburoute Taillard Rochat and Taillard
Instance n Type1 Value2 Deviation Minutes3 Value4 Deviation Minutes5 Value Deviation Minutes6 Value Deviation Minutes7
1 50 C 524.61 0.00 1.90 524.61 0.00 6.00 524.61 0.00 0.82 524.61 0.00 0.18
2 75 C 844.00 1.05 0.84 835.77 0.06 53.80 835.26 0.00 0.88 835.26 0.00 1.13
3 100 C 838.00 1.44 25.72 829.45 0.40 18.40 826.14 0.00 9.67 826.14 0.00 15.00
4 150 C 1044.35 1.55 59.33 1036.16 0.75 58.80 1028.42 0.00 63.33 1028.42 0.00 30.00
5 199 C 1334.55 3.35 54.10 1322.65 2.43 90.90 1298.79 0.58 50.00 1291.45 0.01 —
6 50 C,D 555.43 0.00 2.88 555.43 0.00 13.50 555.43 0.00 0.28 555.43 0.00 —
7 75 C,D 911.00 0.15 17.61 931.23 2.37 54.60 909.68 0.00 0.85 909.68 0.00 —
8 100 C,D 878.00 1.39 49.99 865.94 0.00 25.60 865.94 0.00 18.33 865.94 0.00 —
9 150 C,D 1184.00 1.85 76.26 1177.76 1.31 71.00 1162.55 0.00 18.33 1162.55 0.00 —
10 199 C,D 1441.00 3.23 76.02 1418.51 1.62 99.50 1397.94 0.15 — 1395.85 0.00 —
11 120 C 1043.00 0.09 24.07 1073.47 3.01 22.20 1042.11 0.00 — 1042.11 0.00 45.00
12 100 C 819.59 0.00 14.87 819.56 0.00 16.00 819.56 0.00 5.67 819.56 0.00 5.83
13 120 C,D 1547.00 0.38 47.23 1547.93 0.44 59.20 1541.14 0.00 65.00 1541.14 0.00 —
14 100 C,D 866.37 0.00 19.60 866.37 0.00 65.70 866.37 0.00 25.00 866.37 0.00 —
Average % deviation
from best and time
• for all instances 1.03 33,60 0.89 46.80 0.05 21.51 0.00 16.19
• for C instances 1.07 25.83 0.95 38.01 0.08 21.73 0.00 16.19
• for C,D instances 1.00 41.37 0.82 55.59 0.02 21.30 0.00 —
1. C: Capacity restrictions; D: Duration restrictions.
2. FBA version.
3. Minutes on a VAX 8600 computer.
4. Standard algorithm with one set of parameters.
5. Silicon Graphics Workstation (36 MHz, 57 MFlops).
6. Silicon Graphics 4D/35. Time required to reach a solution within 1% of the best known.
7. Silicon Graphics Indigo (100 MHz). Time required to reach a solution within 1% of the best known.
14
Table 1.1. (continued). Summary of computational results
Xu and Kelly Tabuchain (sequential) Tabuchain (parallel) Flower
Instance n Type Value Deviation Minutes8 Value Deviation Minutes9 Value Deviation Minutes9 Value Deviation Minutes10
1 50 C 524.61 0.00 4.89 524.61 0.00 0.85 524.61 0.00 1.05 524.81 0.04 0.17
2 75 C 835.26 0.00 37.94 837.50 0.27 16.80 835.32 0.01 43.38 847.00 1.41 0.38
3 100 C 826.14 0.00 47.45 827.53 0.17 33.90 827.53 0.17 36.72 832.04 0.71 0.93
4 150 C 1029.56 0.11 100.81 1054.29 2.52 27.20 1044.35 1.55 48.47 1047.21 1.83 1.91
5 199 C 1298.58 0.56 207.80 1338.49 3.66 16.25 1334.55 3.35 77.07 1351.18 4.64 7.06
6 50 C,D — — — 555.43 0.00 3.17 555.43 0.00 2.38 559.25 0.69 0.06
7 75 C,D — — — 909.68 0.00 23.10 909.68 0.00 82.95 922.21 1.38 0.50
8 100 C,D — — — 868.29 0.27 8.60 866.75 0.09 18.93 876.97 1.27 1.41
9 150 C,D — — — 1178.84 1.40 15.55 1164.12 0.14 29.85 1191.30 2.47 6.07
10 199 C,D — — — 1420.84 1.79 52.02 1420.84 1.79 42.72 1460.83 4.66 5.06
11 120 C 1042.11 0.00 2.80 1043.54 0.14 6.30 1042.11 0.00 11.23 1052.04 0.95 3.96
12 100 C 819.56 0.00 5.61 819.56 0.00 1.22 819.56 0.00 1.57 821.63 0.25 0.54
13 120 C,D — — — 1550.17 0.59 2.00 1550.17 0.59 1.95 1558.06 1.10 3.69
14 100 C,D — — — 866.53 0.02 9.42 866.37 0.00 24.65 867.79 0.16 0.75
Average % deviation
from best and time
— 0.55 0.77 1.54
Tabu Search Heuristics for theVehicle Routing Problem
References
E.K. Barker. Evolution of Microcomputer-Based Vehicle Routing Soft-
ware: Case Studies in United States. In The Vehicle Routing Problem,
P. Toth and D. Vigo (eds), SIAM Monographs on Discrete Mathe-
matics and Applications, Philadelphia, 353–362, 2002.
B. Bozkaya, E. Erkut and G. Laporte. A Tabu Search Heuristic and
Adaptive Memory Procedure for Political Districting. European Jour-
nal of Operational Research, 144:12–26, 2003.
N. Christofides, A. Mingozzi, and P. Toth. The Vehicle Routing Prob-
lem. In Combinatorial Optimization, N. Christofides, A. Mingozzi and
P. Toth (eds), Wiley, Chichester, 315–338, 1979.
G. Clarke and J.W. Wright. Scheduling of Vehicles from a Central Depot
to a Number of Delivery Points. Operations Research, 12:568–581,
1964.
J.-F. Cordeau, M. Gendreau, and G. Laporte. A Tabu Search Heuristic
for Periodic and Multi-Depot Vehicle Routing Problems. Networks,
30:105–119, 1997.
J.-F. Cordeau, M. Gendreau, G. Laporte, J.-Y. Potvin, and F. Semet.
A Guide to Vehicle Routing Heuristics. Journal of the Operational
Research Society, 53:512–522, 2002.
J.-F. Cordeau and G. Laporte. A Tabu Search Algorithm for the Site
Dependent Vehicle Routing Problem with Time Windows. INFOR,
39:292–298, 2001.
J.-F. Cordeau, G. Laporte and A. Mercier. A Unified Tabu Search Heuris-
tic for Vehicle Routing Problems with Time Windows. Journal of the
Operational Research Society, 52:928–936, 2001.
G.A. Croes. A Method for Solving Traveling-Salesman Problems. Oper-
ations Research, 6:791–812, 1958.
G.B. Dantzig and J.H. Ramser. The Truck Dispatching Problem. Man-
agement Science, 6:80–91, 1959.
J.J. Dongarra. Performance of Various Computers Using Standard Lin-
ear Equations Software. Technical Report CS–89–85. Computer Sci-
ence Department, University of Tennessee, 2004.
R. Fahrion and M. Wrede. On a Principle of Chain-Exchange for Vehicle-
Routeing Problems (1-VRP). Journal of the Operational Research So-
ciety, 41:821–827, 1990.
M.L. Fisher and R. Jaikumar. A Generalized Assignment Heuristic for
the Vehicle Routing Problem. Networks, 11:109–124, 1981.
M. Gendreau. An Introduction to Tabu Search. In Handbook of Meta-
heuristics, F. Glover and G.A. Kochenberger (eds), Kluwer, Boston,
37–54, 2003.
18
P.M. Thompson and H.N. Psaraftis. Cyclic Transfer Algorithms for Multi-
Vehicle Routing and Scheduling Problems. Operations Research, 41:935–
946, 1993.
P. Toth and D. Vigo. The Granular Tabu Search and its Application
to the Vehicle Routing Problems. INFORMS Journal on Computing,
15:333–346, 2003.
P. Toth and D. Vigo. An Overview of Vehicle Routing Problems. In The
Vehicle Routing Problem, P. Toth and D. Vigo (eds), SIAM Mono-
graphs on Discrete Mathematics and Applications, Philadelphia, 1–
26, 2002.
A. Van Breedam. An Analysis of the Behavior of Heuristics for the Vehi-
cle Routing Problem for a Selection of Problems with Vehicle-Related,
Customer-Related, and Time-Related Constraints. Ph.D. Disserta-
tion, University of Antwerp, 1994.
A. Volgenant and R. Jonker. The Symmetric Traveling Salesman Prob-
lem and Edge Exchanges in Minimal 1-Tree. European Journal of Op-
erational Research, 12:394–403, 1983.
J. Xu and J.P. Kelly. A Network Flow-Based Tabu Search Heuristic
for the Vehicle Routing Problem. Transportation Science, 30:379–393,
1996.