Laporte - TSP Review PDF
Laporte - TSP Review PDF
Laporte - TSP Review PDF
North-Holland
Invited Review
Abstract: In this paper, some of the main known algorithms for the traveling salesman problem are
surveyed. The p a p e r is organized as follows: 1) definition; 2) applications; 3) complexity analysis; 4) exact
algorithms; 5) heuristic algorithms; 6) conclusion.
but in this case a number of side constraints to 20. Players throw darts at target points on the
usually come into play (see Laporte, 1992). Sev- board. In the most common version of the game,
eral interesting permutation problems not di- the objective is to reduce an initial value of 301 to
rectly associated with routing can also be de- zero by substracting scores. The game rewards
scribed as TSPs. H e r e are some selected exam- accuracy in the throw and it is often more impor-
pies. tant to hit one's target that to merely register a
1. C o m p u t e r wiring (Lenstra and Rinnooy Kan, large score. A natural objective for designing a
1975). Some computer systems can be described dartboard is therefore to position the 20 numbers
as modules with pins attached to them. It is often around the board so as to maximize players' risk.
desired to link these pins by means of wires, so For fairly accurate players, it is reasonable to
that exactly two wires are attached to each pin assume that the sector that is hit is always the
and total wire length is minimized. targeted sector or its neighbour. Let ~ - =
2. Wallpaper cutting (Garfinkel, 1977). Here, n (rr(1) . . . . . ¢r(20)) be any permutation of the num-
sheets must be cut from a roll of wallpaper on bers 1. . . . . 20. In what follows, ~-(k) must be
which a pattern of length 1 is repeated. For sheet interpreted as ~-(k mod 20) whenever k < 1 or
i, denote by a i and b i the starting and ending k > 20. Consider a player aiming at ~-(k) and
points on the pattern, where 0 ~<a i ~< 1 and 0 ~< b i hitting 7r(k + 1) with probability p, and 7r(k)
1. Then cutting sheet j immediately after sheet with probability 1 - 2p. For this player, the ex-
i results in a waste of pected deviation from the aimed score is equal to
p [ ~ r ( k - 1) - 7r(k)] +p[Tr(k + 1) - or(k)]. A pos-
aj - b i if b i <~aj, sible objective is to maximize the expected sum of
cij = ~ 1 + a t - b i if b i > a j . (1) square deviations, i.e. Y'.2°a{p[~-(k - 1) - 7r(k)] 2
+ p [ T r ( k + 1)-Tr(k)]2}. Since p is a constant,
The objective is to order the n sheets so as to this is equivalent to solving a TSP with cii = (i -
minimize total waste. In order to define the prob- j)2.
lem as a TSP, consider a dummy sheet n + 1 with 6. C r y s t a l l o g r a p h y (Bland and Shallcross,
C i , n + 1 = 0 and cn+ 1,~'= 0 for all i , j = 1 . . . . . n. A l - 1989). In crystallography, some experiments con-
ternatively, define bn+ 1 as the end of the roll sist of taking a large number of X-ray intensity
position at the start of cutting and assume that measurements on crystals by means of a detector.
after the last sheet, a final cut must be made to Each m e a s u r e m e n t requires that a sample of the
restore the row to its original position. Then crystal be mounted on an apparatus and that the
an+ 1 = b , + l , and cij can be defined as in (1) for detector be positioned appropriately. The order
all i , j = 1 . . . . . n + 1. in which the various measurements on a given
3. Hole p u n c h i n g (Reinelt, 1989). In several crystal are made can be seen as the solution of a
manufacturing contexts, it is necessary to punch TSP. In practice, these problems are of large
holes on boards or metallic sheets. The problem scale and obtaining good TSP solutions can re-
consists of determining a minimum-time punch- duce considerably the time needed to carry out
ing sequence. Such a problem occurs frequently all measurements.
in metallic sheet manufacturing and in the con-
struction of circuit boards. These problems are
often of large scale and must be solved in real- 3. Complexity
time.
In order to study the complexity of the travel-
4. Job sequencing. Suppose n jobs must be
ing salesman problem first consider the following
performed sequentially on a single machine and
well-known decision problem:
that cij is the change-over time if job j is exe-
cuted immediately after job i. Then again, by H A M I L T O N I A N C I R C U I T (HC)
introducting a dummy job, this problem can be Instance: A graph G = (V, A).
formulated as a TSP. Question: Does G contain a Hamiltonian circuit?
5. D a r t b o a r d design (Eiselt and Laporte, 1991).
Dartboards are circular targets with concentric It is well known that H C is NP-complete (Garey
circles, and 20 sectors identified by the numbers 1 and Johnson, 1979, p. 47). We show that TSP is
G. Laporte / The traveling salesman problem: Overview of algorithms 233
NP-hard by using the following transformation. (i, j), equal to 1 if and only if (i, j) is used in the
Given any instance of H C relative to a graph optimal solution, i =~j. The DFJ formulation is
G h = ( V h, A h) with vertex set V h = {1 . . . . . n} and (DFJ)
arc set A h = {(i, j)}, define a TSP instance having
V = V h, A = { ( i , j ) : i , j = l , . . . , n , i4=j} and cii Minimize ~ cijxij (2)
= 1 if (i, j) ~ A h and cir = m, otherwise. Then G i4=j
contains a Hamiltonian circuit if and only if the subject to ~_~ xij = 1, i = 1 . . . . , n, (3)
optimal value of the TSP instance is equal to n. j=l
n
A number of special cases of TSP are, how-
ever, solvable in polynomial time (see, for exam- ~ X i j = 1, j = 1 . . . . . n, (4)
ple, Gilmore, Lawler and Shmoys, 1985). Exam- i-1
ples of such problems include: £ Xij< I S I - 1 ,
1. TSPs where C = (cij) is an upper triangular i,j~s
matrix, i.e. cij = 0 for all i > j ; ScV, 2 ~ IS] ~ < n - 2 , (5)
2. The wallpaper cutting problem described in
Section 2;
xij ~ {0, 1},
3. A class of job sequencing problems defined i, j = 1 . . . . . n, i :~j. (6)
by Gilmore and G o m o r y (1964). In this problem,
In this formulation, the objective function
there are n - 1 jobs to be processed sequentially
clearly describes the cost of the optimal tour.
in a kiln. Job i requires a starting t e m p e r a t u r e of
Constraints (3) and (4) are degree constraints:
a i and must be finished at t e m p e r a t u r e b i. Fur-
they specify that every vertex is entered exactly
ther assume that the initial kiln t e m p e r a t u r e is a n
once (3) and left exactly once (4). Constraints (5)
and that the final t e m p e r a t u r e must be b n. Then
are subtour elimination constraints: they prohibit
the problem can be formulated as a TSP with
the formation of subtours, i.e. tours on subsets of
less than n vertices. If there was such a subtour
on a subset S of vertices, this subtour would
cij contain I S I arcs and as many vertices. Constraint
ifa <.bi (5) would then be violated for this subset since its
-¢1i left-hand side would be equal to I S[ and its
right-hand side equal to IS I - 1. Because of de-
where f and g are cost density functions and gree constraints, subtours over one vertex (and
f ( x ) + g ( x ) > 0 for all x since otherwise, it would hence, over n - 1 vertices) cannot occur. There-
be profitable to keep changing the kiln tempera- fore it is valid to define constraints (5) for 2 ~<
ture. I S I ~< n - 2 only. Finally, constraints (6) impose
binary conditions on the variables.
An alternative equivalent form of constraints
4. E x a c t a l g o r i t h m s (5) is
A large n u m b e r of exact algorithms have been £ £Xij>/1 ScV, 2 < ISl < n - 2 (5')
i~S j ~ 3
proposed for the TSP. These can be best under-
stood and explained in the context of integer where S = V \ S . Constraints (5') can be derived
linear programming (ILP). We examine in this from (5) by noting that every vertex i of S is the
section a number of ILP formulations and of origin of one arc to another vertex of S or to a
algorithms derived from these formulations. vertex of S. Since there are [SI vertices, I S[ =
~i,j~sXij at- ~i~S~j~_~Xij, and the equivalence of
4.1. Integer linear programming formulations (5) and (5') follows trivially. The geometric inter-
pretation of connectivity constraints (5') is that in
One of the earliest formulations is due to every TSP solution, there must be at least one arc
Dantzig, Fulkerson and Johnson (DFJ) (1954). It pointing from S to its complement, in other
associates one binary variable x/j to every arc words, S cannot be disconnected.
234 G. Laporte / The traveling salesman problem: Overview of algorithms
This formulation contains n ( n - 1) binary vari- - if xji = 0, then (10) is satisfied for any aji;
ables, 2n degree constraints and 2 n - 2n - 2 sub- - ifxji=l, thenxij=0(forn>2) anduj+l
tour elimination constraints. Even for moderate = u i, so that aji <~n - 3.
values of n, it is unrealistic to solve DFJ directly In spite of its relative compactness, the M T Z
by means of an ILP code. The model is usually formulation is weaker than the DFJ formula-
relaxed, and solved by means of specialized algo- tion in the following sense. D e n o t e by
rithms. z '(DFJ)[ z'(MTZ)] the optimal value of the linear
Miller, Tucker and Zemlin (MTZ) (1960) have relaxation of DFJ [MTZ], i.e. the relaxation ob-
proposed an alternative formulation that reduces tained by dropping integrality conditions. Then
the number of subtour elimination constraints at z ' ( M T Z ) ~<z ' ( D F J ) ( W o n g , 1980). This result has
the expense of extra variables u i (i = 2 . . . . . n). not been proved for the modified M T Z formula-
The M T Z subtour elimination constraints can be tion using constraints (9), but it is known that
expressed as there exist cases where it produces a weaker
linear relaxation than DFJ (Desrochers and La-
Ui -- Uj + ( n - 1 ) x i j <~n - 2
porte, 1991).
i, j = 2 . . . . , n , i 4:j, (7) Finally, a number of alternative formulations
l<~ui<~n-1 i = 2 . . . . . n. (8) have been proposed and compared, but none of
these seems to have a stronger linear relaxation
Constraints (7) ensure that the solution con- than DFJ (Langevin, Soumis and Desrosiers,
tains no subtour on a set of vertices S c_ V\{1} 1990).
and hence, no subtour involving less than n ver-
tices. Constraints (8) ensure that the u i variables 4.2. The assignment lower b o u n d and related
are uniquely defined for any feasible tour. In b r a n c h - a n d - b o u n d algorithms
order to see how constraints (7) operate, suppose
there was a subtour (il, i 2 . . . . . i k , il) with k < n. Branch-and-bound (BB) algorithms are com-
Writing constraints (7) for every arc of that sub- monly used for the solution of TSPs. In the
tour gives context of mathematical programming, they can
Uil--Ui2+ ( n - 1) ~<n - 2 , best be viewed as initially relaxing some of the
problem constraints, and then regaining feasibil-
l,li2--Ui3+ ( n -- 1) -<<n - 2, ity through an enumerative process. The quality
of a BB algorithm is directly related to the quality
of the bound provided by the relaxation.
u i k - ui, + ( n - 1) ~ n - 2. For the TSP, an initial lower bound can be
obtained from the DFJ formulation by relaxing
Summing up these constraints yields k ( n - 1) ~<
constraints (5). The resulting problem is an as-
k ( n - 2), a contradiction.
signment problem (AP) which can be solved in
It has been observed recently (Desrochers and
O ( n 3) time (see Carpaneto, Martello and Toth,
Laporte, 1991) that constraints (7) can be
1988). Thus, a valid lower bound on the value of
strengthened by introducing an extra term in
the optimal TSP solution is the AP bound de-
their left-hand side to yield
fined by (2)-(4) and the nonnegativity require-
U i -- Uj @ ( n - 1)Xij + ( n - 3)Xji <~n -- 2 ments on the variables.
i,j=Z,...,n, i~j. (9) Several authors have proposed BB algorithms
for the TSP, based on the AP relaxation. These
The validity of constraints (9) can be estab- include Eastman (1958), Little et al. (1963),
lished as follows. Rewrite constraints (7) as Shapiro (1966), Murty (1968), Bellmore and Mal-
u i - uj + ( n - 1)Xij + oljiXji ~ n - 2 (10) one (1971), Garfinkel (1973), Smith, Srinivasan
and Thompson (1977), Carpaneto and Toth
where currently o Q i = O. We seek the largest pos- (1980), Balas and Christofides (1981) and Miller
sible value of aji so that (10) remains a valid and Pekny (1991). We briefly describe the last
inequality. In the optimal solution, xji can take three algorithms which are probably the best
only two values: available.
G. Laporte / The traveling salesman problem." Overview of algorithms 235
In the Carpaneto and Toth algorithm, the Execute Step 4-6 for r = 1,..., s.
problem solved at a generic node of the search Step 4. (Bounding.) Compute a lower bound
tree is a modified assignment problem (i.e. x , is Zhr on Zhr by row and column reduction of the
fixed at 0 for all i) in which s o m e x i j variables cost matrix. If Zhr < Z *, proceed to Step 5. Other-
are fixed at 0 or at 1. If the AP solution consists wise, consider the next r and repeat Step 4.
of a unique tour over all vertices, it is then Step 5. (Subproblem solution.) Solve the sub-
feasible for the TSP. Otherwise, it consists of a problem associated with node h r (a modified A P
number of subtours. One of these subtours is restricted by Ih, and Ehr). If Zh~>Z*, consider
selected and broken by creating subproblems in the next r and proceed to Step 4.
which all arcs of the subtour are in turn prohib- Step 6. (Feasibility check). Check whether the
ited. We will use the following notation: current solution contains subtours. If it does,
z*: the cost of the best TSP solution so far insert node h r in the queue. Otherwise, set z* :=
identified; Zhr and store the tour, if z* = z h, go to Step 2.
zh: the value of the objeiztive function of the
modified AP at node h of the search tree; Using their algorithm, Carpaneto and Toth
Zh: a lower bound on Zh; have consistently solved randomly generated
Ih: the set of included arcs (x~j variables fixed 240-vertex TSPs in less than one minute on a
at 1) at node h of the search tree; C D C 6600. The main limitation of this algorithm
Eh: the set of excluded arcs (xij variables fixed appears to be computed memory rather than
at O) at node h of the search tree. CPU time.
The Balas and Christofides algorithm uses a
s t r o n g e r relaxation than the AP relaxation. Its
Step 1. (Initialization.) Obtain a first value for
description and the computational effort required
z * by means of a suitdble heuristic. Create node
for the lower-bound computations are much more
1 of the search tree: set I 1 := E 1 := ~, and obtain
involved, but the resulting search trees are smaller
z~ by solving the associated modified AP. If z~ >/
and the procedure is overall more powerful. Due
z*, stop: the heuristic solution is optimal. If the
to its complexity, it will only be sketched here.
solution contains no illegal subtours, it consti-
Interested readers are referred to the Balas and
tutes the optimal tour: stop. Otherwise, insert
Christofides (1981) paper. In addition to con-
node 1 in a queue.
straints (3), (4) and (6), subtour elimination con-
Step 2. (Node selection.) If the queue is empty,
straints (5), connectivity constraints (5') and some
stop. Otherwise, select the next node (node h)
positive linear combinations of these are consid-
from the queue: here we use a breadth first rule,
ered, and introduced into the objective function
i.e. branching is always done on the pendant
in a Lagrangean fashion. Let T be the set of all
node having the lowest z h.
such constraints and t a given constraint. Their
Step 3. (Subproblem partitioning.) The solution
generic expression can be written as
obtained at node h is illegal and must be elimi-
nated by partitioning the current subproblem into y' ,
aijxij ~ ao, t ~ T.
descendant subproblems hr characterized by sets i,j~ V
Ihr and Eh; In order to create these subproblems,
The Lagrangean objective is then
consider a subtour having the least number s of
arcs not belonging to I h. Let these arcs be
(i 1, j~) . . . . . (i,, j~), in the order in which they L( A):min( E c i j x i j - E A,
x
a p p e a r in the subtours. Then create s subprob- i,j~V t~T
lems with
exponential, the required maximum is not deter- The authors prove the following proposition
mined by Lagrangean relaxation. Instead, a lower which they use as a basis for their algorithm: an
bound on its value is obtained by restricting A to optimal solution for TSP' is optimal for TSP if
lie in the set {A > 0: Zlu,v ~ ~n, such that u~ + v/
+ S , t ~ r A t a~j=cij if (i, j) belongs to the AP z*(TSP') -z*(AP) ~<A + 1 - u ; - V ' ~ x (16)
solution; u~ + v/+ E t ~ r A t a~j > c~j, otherwise}.
Balas and Christofides propose an approximation and
procedure for computing A. At a given node of
! r
the search tree, the procedure solves an AP with a + 1- u i - Uma x ~ 0 (17)
dual values given by u and v. It then computes A.
A lower bound on the value of the TSP tour for i = 1. . . . ,n, where u' and v' are optimal
associated to that node of the search tree is given solutions to DAP', and V'ax is the maximum
by element of v'. The quantity A + 1 - u~ - Vmax un-
derestimates the smallest reduced cost of any
Eui + E vj+ EAt a°. (12) discarded variable. The algorithm is then:
i~V j~V t~T Step 1 (Initialization). Choose A.
Step 2 (TSP' solution). Construct (ci~) and solve
The authors then show how (12) can be com- TSP'.
puted for three particular classes of constraints Step 3 (Termination check). If (16) and (17) hold,
(11). Using this procedure, Balas and Christofides then z * ( T S P ' ) = z * ( T S P ) : stop. Other-
report optimal solutions to randomly generated wise, double A and go to Step 2.
325-vertex problems in less than one minute on a
CDC 7600.
More recently, Miller and Pekny have pro- The authors report that if A is suitably chosen
posed a new powerful BB algorithm based on the in Step 1 (e.g., the largest arc cost in a heuristic
AP relaxation. Consider the dual AP: solution), there is rarely any need to perform a
(DAP) second iteration. To solve TSP', the authors have
developed a BB algorithm based on the AP relax-
n n
ation. They have applied this procedure to ran-
Maximize ~_, u s + ~., vj (13)
domly generated problems. Instances involving
i=1 j=l
up to 5000 vertices were solved within 40 seconds
subject to eij - u i - vj >~O on a Sun 4 / 3 3 0 computer. The largest problem
i,j=l,...,n, i~j. (14) reported solved by this approach contains 500000
vertices and required 12623 seconds of computing
Denote by z*(TSP) the optimal TSP solution time on a Cray 2 supercomputer.
value, by z * ( A P ) the optimal value of the AP Finally, it is worth mentioning that in a differ-
linear relaxation, and by z * ( D A P ) the optimal ent paper, Miller and Pekny (1989) describe a
value of the dual AP linear relaxation. Clearly parallel branch-and-bound algorithm based on
z * ( A P ) = z*(DAP). Moreover, note that z * ( A P ) the AP relaxation. These authors report that ran-
+ (c~j- u i - v j ) is a lower bound on the cost of domly generated asymmetrical TSPs involving up
an AP solution that includes arc (i, j). Miller and to 3000 vertices have been solved to optimality
Pekny make use of this in an algorithm that using this approach.
initially removes from consideration all x~j vari-
ables whose cost c~j exceeds a threshold value A.
Consider a modified problem TSP' with associ- 4.3. The shortest spanning arborescence bound and
ated linear assignment relaxation A P ' and its a related algorithm
dual DAP', obtained by redefining the costs ci~
as follows:
In a directed graph G = (F, A), an r-arbores-
cence is a partial graph in which the in-degree of
, [c~j ifc,y<A,
each vertex is exactly 1 and each vertex can be
Cij = (15)
otherwise. reached from the root vertex r. The shortest
G. Laporte / The travelingsalesman problem. Overviewof algorithms 237
spanning r-arborescence problem (r-SAP) can be on the type of problem considered. For the easi-
formulated as est problem type, the authors report having solved
(r-SAP) 2000-vertex problems in an average time of 8329
seconds on an H P 9000/840 computer.
Minimize cijxij (18)
i~j 4.4. The shortest spanning tree bound and related
algorithms
subject to ~ xij = 1, j = 1 . . . . . n, (19)
i=1 The AP-based algorithms described in the pre-
i~j
vious section are valid whether C is asymmetrical
E ~-,xij>>-l, S c V ; r ~ S , (20) or symmetrical. However, in the latter case, the
i~S j ~ ,
AP solutions will in general contain several sub-
xij>~O,i,j=l ..... n,i-~j. (21) tours containing only two vertices, resulting in
The problem of determining a minimum-cost excessive computing times for their elimination.
r-arborescence on G can be decomposed into two Symmetrical problems are better handled by spe-
independent subproblems: determining a mini- cialized algorithms that exploit their structure.
mum-cost arborescence rooted at vertex r, and We now describe an ILP formulation for symmet-
finding the minimum-cost arc entering vertex r. rical TSPs.
The first problem is easily solved in O(n 2) time Consider a TSP defined on G = (V, E ) where
(Tarjan, 1977). This relaxation can be used in E is an edge set. Let xij be a binary variable
conjunction with Lagrangian relaxation. How- equal to 1 if and only if edge (i, j) is used in the
optimal Solution. These variables are only defined
ever, on asymmetric problems, the AP relaxation
for i < j. The formulation is then
would a p p e a r empirically superior to the r-
(SYM)
arborescence relaxation (Balas and Toth, 1977).
An early reference to this lower bound is made Minimize ~ CijXij
by Held and Karp (1970). More recently, Fis- i<j
chetti and Toth (1991) have used it within a subject to ~ xik + ~ xkj = 2, (24)
so-called 'additive bounding procedure' that com- i<k j>k
bines five different bounds: k = 1 . . . . . n, (25)
- the AP bound,
E Xij• ISI-1,
- the shortest spanning 1-arborescence bound, ijEs (26)
- t h e shortest spanning 1-antiarborescence
bound 1 - SAAP; (r-SAAP is defined in a man- ScV, 3~[SI ~<n-3,
ner similar to r-SAP but now it is required that xij ~ {0, 1}, (27)
vertex r should be reached from every remaining i,j=l . . . . . n, i < j .
vertex),
In this formulation, constraints (25) specify
- for r = 1 . . . . . n, a bound r-SADP obtained
from r-SAP by adding the constraint that every vertex has a degree of 2. Constraints
(26) are subtour elimination constraints. They
xrj = 1, (22) need not be defined for I SI = 2 and n - 2 since
j~r constraints (25) and (27) combined prevent the
- for r = 1 , . . . , n, a bound r - S A A D P obtained formation of subtours involving 2 (and thus n - 2)
from r-SAAP by adding the constraint vertices. Constraints (27) impose binary condi-
tions on the variables.
E Xir = 1. (23) As for (DFJ), connectivity constraints equiva-
i¢r
lent to (26) can be derived. These can be written
The lower-bounding procedure described by as
Fischetti and Toth was e m b e d d e d within the
Carpaneto and Toth (1980) branch-and-bound al- ~_~ xij>~2 , ScV, 3~< ISI ~ < n - 3 .
gorithm on a variety of randomly generated prob- i~S,j~S
or j~S,i~'S
lems and on some problems described in the
literature. The success of the algorithm depends (26')
238 G. Laporte / The traveling salesman problem: Overview of algorithms
In order to show the equivalence of (26) and redundant) to impose (27) for these values of
(26'), consider D(S) = )'~k~S(Ei<kXik + ~'j>k IsI.
Xk), the sum of degrees of vertices of S. Every Christofides (1970) and Held and Karp (1971)
edge (i, j) for which i,j ~ S makes a contribution were among the first to propose a TSP algorithm
of 2 to D(S), whereas edges (i, j) with i ~ S, based on this relaxation. Improvements and re-
j ~ S or j ~ S, i ~ S contribute by only one unit. finements were later suggested by Helbig Hansen
Hence, and Krarup (1974), Smith and Thompson (1977),
Volgenant and Jonker (1982), Gavish and
o ( s) = 2 E x,j + E x j, Srikanth (1986), and Carpaneto, Fischetti and
i,jeS iES,j~'S Toth (1989). In the original Held and Karp algo-
orjeS,i~S
rithm, the 1-SST bound is reinforced by introduc-
and the equivalence follows. ing constraints (25) in the objective function to
A useful relaxation can be extracted from SYM yield the Lagrangean
by exploiting the following consideration. In any
feasible solution, the degree of vertex 1 must be L(A) = min E CijXij
equal to 2, while the remaining vertices must all x i <j
be connected. A valid lower bound on the opti-
mal TSP solution value is therefore the length of
the shortest 1-spanning tree (1-SST), i.e. the k~V "i<k j>k
shortest tree having vertex set V\{1}, together
with two distinct edges at vertex 1. Formally, = m i n { Y'. E(cij--}-Ai+Aj)xij)
determining a least cost 1-SST is achieved by x i~Vj>i
solving -- 2 )-'~ Ai,
(1-SST) i~v
However, in practice the 1-SST problem is Step 1 (initialization). Obtain a first value for
better solved by means of a specialized algorithm z* by means of a suitable heuristic. Create node
(see Aho, Hopcroft and Ullman, 1974). This for- 1 of the search tree: set 11 := E 1 := ¢. Obtain z 1
mulation is clearly a relaxation of SYM. Indeed, and h 1 by performing Lagrangean ascents, start-
constraint (29) is obtained by taking half the sum ing with h =(0). If Zl>iZ*, stop: the heuristic
of constraints (25); constraint (30) is constraint solution is optimal. If the solution consists of a
(25) for k = 1, and constraints (31) are a weaker tour, it is feasible and optimal: stop. Otherwise,
form of (26'). The fact that these constraints are insert node 1 in a queue.
also imposed for t S[ = l , 2 , n - 2 a n d n - 1 is of Step 2 (Node selection). If the queue is empty,
no concern since it would have been valid (and stop. Otherwise, select the next node (node h)
G, Laporte / The traveling salesman problem: Overview o f algorithms 239
from the queue on with to branch: select h with 4.5. The 2-matching lower bound and related algo-
the least lower bound z h. rithms
Step 3 (Subproblem partitioning). Rank the
edges e l , . . . , ep of E \ ( I h U E h) according to the The 2-matching relaxation of the TSP is ex-
amount by which z h would increase if the edge tracted from SYM by omitting constraints (26). It
was excluded. In other words, if h r w a s a node of provides a lower bound on the value of the opti-
the search tree with Ih, = I h and E h , = E h k.) {er} , mal TSP solution. This relaxation can then be
then z h >~z h >1 . . . >~z h . The sets of included
1 2 p • • •
embedded in an optimization algorithm by first
and excluded arcs in subproblems originating from solving the linear relaxation of the 2-matching
node h are problem, and by then gradually introducing vio-
lated subtour elimination constraints and inte-
grality constraints. The principles behind this
Ih~ = Ih, Eh~ = E h t_) {el} ,
method were first laid out in the seminal papers
Ih2 = I h U {el}, Eh2 = g h U {e2}, by Dantzig, Fulkerson and Johnson (1954, 1959).
Ih3=IhU{el, e2}, Eh3=EhU{e3}, This work was followed by that of Martin (1966)
and of Miliotis (1976, 1978). It was Miliotis who,
to our knowledge, developed the first completely
Ihs=Ih U { e l , . . . , e s _ l } , Ehs=Eh L)RiUR j
automatic procedure for solving symmetrical TSPs
using this relaxation. He proposed several algo-
rithms that differ in the order in which the vio-
where s ~<p is the smallest index for which there lated constraints are introduced and in the way
exists a vertex i such that Ih, does not contain integer solutions are reached. One of these is a
two edges incident to i, but Ih~+, does; there may pure cutting planes algorithm:
exist another vertex j possessing this property. R i
is the set of all edges incident to i and not in Ihs. Step 1 (First subproblem). Solve a first sub-
Execute Step 4 and 5 f o r r = 1. . . . . s. problem defined by (24), (25) and 0 ~<xii ~< 1 (i, j
Step 4 (Bounding). Compute Zh, starting with = 1 , . . . , n, i <j). If the solution is feasible, stop.
Ah. If zh < z * , proceed to Step 5. Otherwise, If the solution is infeasible but integer, go to Step
consider the next r and repeat Step 4. 3.
Step 5 (Feasibility check). If the solution ob- Step 2 (Reoptimization). Regain optimality by
tained at node h, is not a tour, insert node h r in introducing Gomory cutting planes (Gomory,
the queue. Othogwise, set z * := Zh, and store the 1963) and by reoptimizing. If the solution is feasi-
tour; if z* = z h, go to Step 2. ble, it is also optimal: stop.
Step 3 (Subtour elimination). Eliminate one or
several subtours by introducing the appropriate
Using this procedure, H e l d and Karp (1971) subtour elimination constraint(s). Reoptimize. If
have solved a number of classical TSPs with very the solution is not integer, go to Step 2. If the
limited branching. Helbig Hansen and Krarup solution is integer and contains subtours, repeat
(1974) have improved upon the original algorithm Step 3.
by a more judicious choice of parameters in the
ascent procedure. Volgenant and Jonker (1982) A variant of this problem consists of reaching
have experimented with a new ascent procedure, integrality by branch and bound. Subtour elimi-
upper-bound computations in the branch-and- nation constraints are then introduced in individ-
bound tree, and new branching schemes. Gavish ual subproblems through the branching process.
and Srikanth (1986) use fast sensitivity analysis These constraints remain, however, valid for the
techniques to increase the underlying graph spar- whole of the branch-and-bound tree.
sity and reduce the problem size. More recently, As indicated by Miliotis, the two steps that
Carpaneto, Fischetti and Toth (1989) have sug- consists of checking for integrality and then for
gested a number of further improvements to the violated subtour elimination constraints can be
Held and Karp lower bound by making use of an interverted, leading to a stronger algorithm. It
additive bounding procedure. must be observed that subtour elimination con-
240 G. Laporte / The travelingsalesmanproblem: Overviewof algorithms
1 2 1 2
of constraints. By incorporating these procedures
within an ILP code, these authors have solved to
optimality TSPs containing between 17 and 2392
vertices. At time of writing, the 2392-vertex prob-
lem is believed to be the largest nonrandom sym- 4- 5 6 4 5 6
metrical TSP ever solved to optimality.
7~8 8
5. H e u r i s t i c a l g o r i t h m s Figure 3. Optimal traversal of a graph using a shortest span-
ning tree
Simulated annealing has been applied to the Step 1 (C: convex hull). Define an initial (par-
TSP by a number of authors including Bonomi tial) tour by forming the convex hull of vertices.
and Lutton (1984), Rossier, Troyon and Liebling Step 2 (C: cheapest insertion). For each vertex
(1986), Golden and Skiscim (1986) and Nahar, k not yet contained in the tour, identify the two
Sahni and Shragowitz (1989), with apparently a adjacent vertices i k and jk on the tour such that
mixed degree of success. Cik k "~ Ck Jk -- Cik Jk is minimized.
(c) Tabu search (Glover 1977, 1988, 1989, 1990; 'Step 3" (A: largest angle). Select the vertex k *
Glover and McMillan, 1986). that maximizes the angle between edges (ik, k)
As in the previous two methods, successive and (k, j~) on the tour, and insert it between ik.
neighbours of a solution x are examined and, as and Jk*-
for simulated annealing, the objective is allowed Step 4 R e p e a t Steps 2 and 3 until a Hamilto-
to deteriorate in order to avoid local minima. In nian tour of all vertices is obtained.
order to prevent - cycling, solutions that have al- Step 5 (O: Or-opt). Apply the Or-opt proce-
ready been examined are forbidden and inserted dure to the tour and stop.
in a constantly updated ' t a b u list'. The method
can be summarized in three steps: The rationale behind Steps 2 and 3 is that by
selecting k * so as to maximize the angle it makes
Step 1. Consider an initial solution x of cost with the tour, the solution remains as close as
F(x). Set the tabu list T := ~. possible to the initial convex hull.
G. Laporte / The traveling salesman problem: Overview of algorithms 245
(b) The GENIUS algorithm (Gendreau, Hertz and search grant. An extended version of this paper
Laporte, 1992). will appear in Discrete Optimization Models, H.A.
One major drawback of the CCAO algorithm Eiselt and C.L. Sandblom (eds.), De Gruyter,
is that its insertion phase is myopic in the follow- Berlin, 1993. Permission to publish this paper in
ing sense: since insertions are executed sequen- E J O R is gratefully acknowledged. Finally, thanks
tially without much concern for global optimality, are due to Paolo Toth for his valuable comments
they may result in a succession of bad decisions on a preliminary version of this paper.
that the post-optimization phase will be unable to
undo. G E N I U S executes each insertion more
carefully, by performing a limited number of local
References
transformation of the tour, simultaneously with
the insertion itself. It consists of two parts: a
generalized insertion phase, followed by a post- Aho, A.V., Hopcroft, J.E., and Ullman, J.D. (1974), The
Design and Analysis of Computer Algorithms, Addison-
optimization phase that successively removes ver- Wesley, Reading, MA.
tices from the tour and reinserts them, using the Balas, E., Christofides, N. (1981), "A restricted lagrangean
generalized insertion rule. approach to the traveling salesman problem", Mathemati-
The algorithm has been extensively tested on cal Programming 21, 19-46.
randomly generated problems and on problems Balas, E., Toth, P. (1985), "Branch and bound methods", in:
E.L. Lawler, J.K. Lenstra, A.H.G. Rinnooy Kan and D.B.
taken from the literature; all these problems were Shmoys (eds.), The Traveling Salesman Problem. A Guided
symmetrical and Euclidean. Tests revealed that Tour of Combinatorial Optimization, Wiley, Chichester,
G E N I U S produces in shorter computing times 361-401.
better solutions than CCAO, itself superior to all Bellmore, M., and Malone, J.C. (1971), "Pathology of travel-
ing-salesman subtour-elimination algorithms", Operations
tour construction heuristics developed in this sec-
Research 19, 278-307.
tion. This algorithm also appears to compare Bland, R.G., and Shallcross, D.F. (1989), "Large traveling
favourably to tabu search and simulated anneal- salesman problems arising experiments in X-ray crystallog-
ing, although the number of comparisons was raphy: A preliminary report on computation", Operations
more limited in the case of these two methods. Research Letters 8, 125-128.
Bonomi, E., and Lutton, J.-L. (1984), "The N-city travelling
salesman problem: Statistical mechanics an the Metropolis
algorithm", SIAM Review 26, 551-568.
6. Conclusion Carpaneto, G., Fischetti, M., and Toth, P. (1989), "'New lower
bounds for the symmetric travelling salesman problem",
The TSP occupies a central place in Opera- Mathematical Programming 45,233-254.
tional Research. It underlies several practical ap- Carpaneto, G., Martello, S., and Toth, P. (1988), "Algorithms
and codes for the assignment problem", in: B. Simeone, P.
plications and its study over the last 35 years or Toth, G. Gallo, F. Maffioli, and S. Pallottino (eds.), FOR-
so has led to important theoretical developments. TRAN Codes for Network Optimization, Annals of Opera-
Problems involving a few hundred vertices can tions Research 13, 193-223.
now be solved routinely to optimality. Instances Carpaneto, G., and Toth, P. (1980), "Some new branching
involving more than 2000 vertices have also been and bounding criteria for the asymmetric travelling sales-
man problem", Management Science 26, 736-743.
solved exactly by means of constraint relaxation Christofides, N. (1970), "The shortest Hamiltonian chain of a
algorithms. A number of powerful heuristics have graph", SIAM Journal on Applied Mathematics 19, 689-696.
also been proposed: tabu search methods and Christofides, N. (1976), "Worst-case analysis of a new heuris-
generalized insertion algorithms appear to hold tic for the travelling salesman problem", Report 388,
Graduate School of Industrial Administration, Carnegie-
much potential.
Mellon University, Pittsburgh, PA.
Christofides, N., and Eilon, S. (1972). Algorithms for large-
scale travelling salesman problems, Operational Research
Acknowledgements Quarterly 23, 511-518.
Crowder, H., and Padberg, M.W. (1980), "Solving large-scale
symmetric travelling salesman problems to optimality",
This research was in part supported by the
Management Science 26, 495-509.
Canadian Natural Sciences and Engineering Re- Dantzig, G.B., Fulkerson, D.R., and Johnson, S.M. (1954),
search Council (grant OGP0039682), and by a "Solution of a large-scale traveling-salesman problem",
Q u e b e c - N e w - Brunswick interprovincial re- Operations Research 2, 393-410.
246 G. Laporte / The traveling salesman problem: Overview of algorithms
Dantzig, G.B., Fulkerson, D.R., and Johnson, S.M. (1954), Glover, F., and McMillan, C. (1986), "The general employee
"Solution of a large-scale traveling-salesman problem", scheduling problem: An integration of MS and AI", Com-
Operations Research 2, 393-410. puters & Operations Research 13, 563-573.
Dantzig, G.B., Fulkerson, D.R., and Johnson, S.M. (1959), Golden, B.L., and Skiscim, C.C. (1986), "Using simulated
"On a linear-programming combinatorial approach to the annealing to solve routing and location problems", Naval
traveling-salesman problem", Operations Research 7, 58- Research Logistics Quarterly 33, 261-280.
66. Golden, B.L., and Stewart, Jr., W.R. (1985), "Empirical analy-
Desrochers, M., and Laporte, G. (1991), "Improvements and sis of heuristics", in: E.L. Lawler, J.K. Lenstra, A.H.G.
extensions to the Miller-Tucker-Zemlin subtour elimina- Rinnooy Kan, and D.B. Shmoys (eds.), The Traveling
tion constraints", Operations Research Letters 10, 27-36. Salesman Problem. A Guided Tour of Combinatorial Opti-
Eastman, W.L. (1958), "Linear programming with pattern mization, Wiley, Chichester, 207-249.
constraints", Ph.D. Thesis, Harvard University, Cam- Gomory, R.E. (1963), "An algorithm for integer solutions to
bridge, MA. linear program", in: R.L. Graves, and P. Wolfe (eds).
Eiselt, H.A., and Laporte, G. (1991), "A combinatorial opti- Recent Advances in Mathematical Programming, McGraw-
mization problem arising in dartboard design", Journal of Hill, New York, 269-302.
the Operational Research Society 42, 113-118. Gomory, R.E., and Hu, T.C. (1961), "Multi-terminal network
Fiechter, C.-N. (1990), "A parallel tabu search algorithm for flows", SlAM Journal on Applied Mathematics 9, 551-556.
large scale traveling salesman problems", Working Paper Gr6tschel, M., and Holland, O. (1991), "Solution of large-scale
90/1, D~partement de Math~matiques, lEcole Polytech- symmetric travelling salesman problems", Mathematical
nique F6d6rale de Lausanne. Programming 51, 141-202.
Fischetti, M., and Toth, P. (1991), "An additive bounding Gr6tschel, M., and Padberg, M.W. (1985), "Polyhedral
procedure for the asymmetric travelling salesman theory", in: E.L. Lawler, J.K. Lenstra, A.H.G. Rinnooy
problem", Mathematical Programming, forthcoming. Kan, and D.B. Shmoys (eds.), The Traveling Salesman
Flood, M.M. (1956), "The traveling-salesman problem", Oper- Problem. A Guided Tour of Combinatorial Optimization,
ations Research 4, 61-75. Wiley, Chichester, 251-305.
Garey, M.R., and Johnson, D.S. (1979), "Computers and Helbig Hansen, K., and Krarup, J. (1974), "Improvements of
intractability: A guide to the theory of NP-completeness", the Held-Karp algorithm for the symmetric traveling-sales-
Freeman, San Francisco. man problem", Mathematical Programming 7, 87-96.
Garfinkel, R.S. (1973), "On partitioning the feasible set in a Held, M., and Karp., R.M. (1970), "The traveling salesman
branch-and-bound algorithm for the asymmetric problem and minimum spanning trees", Operations Re-
traveling-salesman problem", Operations Research 21, search 18, 1138-1162.
340-343. Held, M., and Karp, R.M. (1971), "The traveling salesman
Garfinkel, R.S. (1977), "Minimizing wallpaper waste, Part I: problem and minimum spaning trees: Part II", Mathemati-
A class of traveling salesman problems", Operations Re- cal Programming 1, 6-25.
search 25, 741-751. Johnson, D.S. (1990), "Local optimization and the traveling
Gavish, B., and Srikanth, K.N. (1986), "An optimal solution salesman problem", in: M.S. Paterson (ed.), Proceedings of
method for large-scale multiple traveling salesman prob- the 17th International Colloquium on Automata, Languages
lems", Operations Research 34, 698-717. and Programming, Lecture Notes in Computer Science,
Gendreau, M. Hertz, A., and Laporte, G. (1992), "New inser- Springer-Verlag, Berlin, 446-461.
tion and post-optimization procedures for the traveling Kanellakis, P.-C., and Papadimitriou, C.H. (1980), "Local
salesman problem", Operations Research, forthcoming. search for the asymmetric traveling salesman problem",
Gilmore, P.C., and Gomory, R.E. (1964), "Sequencing a one Operations Research 28, 1086-1099.
state-variable machine: A solvable case of the traveling Karp, R.M. (1979), "A patching algorithm for the nonsymmet-
salesman problem", Operations Research 12, 655-679. ric traveling-salesman problem", SIAM Journal on Com-
Gilmore, P.C., Lawler, E.L., and Shmoys, D.B. (1985), "Well- puting 8, 561-573.
solved special cases", in: E.L. Lawler, J.K. Lenstra, A.H.G. Kirkpatrick, S., Gelatt, Jr., C.D., and Vecchi, M.P. (1983),
Rinnooy Kan, and D.B. Shmoys (eds.), The Traveling "Optimization by simulated annealing", Science 220, 671-
Salesman Problem. A Guided Tour of Combinatorial Opti- 680.
mization, Wiley, Chichester, 87-143. Knox, J. (1988), "An application of TABU search to the
Glover, F. (1977), "Heuristic for integer programming using symmetric traveling salesman problem", Ph.D. Thesis,
surrogate constraints",Decision Sciences 8, 156-166. Center for Applied Artificial Intelligence (CAAI), Gradu-
Glover, F. (1988), "Tabu search", Report 88-3, Center for ate School of Business, University of Colorado.
Applied Artificial Intelligence (CAAI), Graduate School Langevin, A., Soumis, F., and Desrosiers, J. (1990), "Classifi-
of Business, University of Colorado. cation of travelling salesman problem formulations", Oper-
Glover, F. (1989), "Tabu search, Part I", ORSA Journal on ations Research Letters 9, 127-132.
Computing 1, 190-209. Laporte, G. (1992), "The vehicle routing problem: An overview
Glover, F. (1990), "Tabu search", Part II, ORSA Journal on of exact and approximate algorithms", European Journal
Computing 2, 4-32. of Operational Research, 59, 345-358 (to appear).
G. Laporte / The traveling salesman problem: Overview of algorithms 247
Lawler, E.L., Lenstra, J.K., Rinnooy Kan, A.H.G., and lems and their relation to the logistics of regional blood
Shmoys, D.B. (1985), The Traveling Salesman Problem. A banking", Ph.D. Dissertation, Northwestern University,
Guided Tour of Combinatorial Optimization, Wiley, Chich- Evanston, IL.
ester. Padberg, M.W., and Gr6tschel, M. (1985), "Polyhedral com-
Lenstra, J.K., Rinnooy Kan, A.H.G. (1975), "Some simple putations", in: E.L. Lawler, J.K. Lenstra, A.H.G. Rinnooy
applications of the travelling salesman problem", Opera- Kan, and D.B. Shmoys (eds.), The Traveling Salesman
tional Research Quarterly 26, 717-733. Problem. A Guided Tour of Combinatorial Optimization,
Lin, S. (1965), "Computer solutions of the traveling salesman Wiley, Chichester, 307-360.
problem", Bell System Computer Journal 44, 2245-2269. Padberg, M.W., and Hong, S. (1980), "On the symmetric
Lin, S., and Kernighan, B.W. (1973), "An effective heuristic traveling salesman problem: A computational study",
algorithm for the traveling-salesman problem", Operations Mathematical Programming Study 12, 78-107.
Research 21,498-516. Padberg, M.W., and Rinaldi, G. (1987), "Optimization of a
Little, J.D.C., Murty, K.G., Sweeney, D.W., and Karel, C. 532-city symmetric traveling salesman problem by branch
(1963), "An algorithm for the traveling salesman problem", and cut", Operations Research Letters 6, 1-7.
Operations Research 11, 972-989. Padberg, M.W., and Rinaldi, G. (1990), "Facet identification
Malek, M. (1988), "Search methods for traveling salesman for the symmetric traveling salesman problem", Mathemat-
problems", Working Paper, University of Texas, Austin, ical Programming 47, 219-257.
TX. Papadimitriou, C.H., and Steiglitz, K. (1982), Combinatorial
Martin, G.T. (1966), "Solving the traveling salesman problem Optimization: Algorithms and Complexity, Prentice-Hall,
by integer programming", Working Paper, CEIR, New Englewood Cliffs, NJ.
York. Reinelt, G. (1989), "Fast heuristics for large geometric travel-
Metropolis, N., Rosenbluth, A.W., Rosenbluth, M.N., Teller, ing salesman problems", Report No. 185, Institut fiir
A.H., and Teller, E. (1953), "Equation of state calcula- Mathematik, Universit~it Augsburg.
tions by fast computing machines", Journal of Chemical Rosenkrantz, D.J., Stearns, R.E., and Lewis, II, P.M. (1977),
Physics 21, 1087-1091. "An analysis of several heuristics for the traveling sales-
Miliotis, P. (1976), "Integer programming approaches to the man problem", SIAM Journal on Computing 6, 563-581.
travelling salesman problem", Mathematical Programming Rossier, Y., Troyon, M., and Liebling, T.M. (1986), "Prob-
10, 367-378. abilistic exchange algorithms and the Euclidian traveling
Miliotis, P. (1978), "Using cutting planes to solve the symmet- salesman problem", Operations Research Spektrum 8, 151-
ric salesman problem", Mathematical Programming 15, 164.
177-188. Shapiro, D.M. (1966), "Algorithms for the solution of the
Miller, D.L., and Pekny, J.F. (1989), "Results from a parallel optimal cost and bottleneck traveling salesman problems",
branch and bound algorithm for solving large asymmetric Sc.D. Thesis, Washington University, St. Louis, MO.
traveling salesman problems", Operations Research Letters Smith, T.H.C., Srinivasan, V., and Thompson, G.L. (1977),
8, 129-135. "Computational performance of three subtour elimination
Miller, D.L., and Pekny, J.F. (1991), "Exact solution of large algorithms for solving asymmetric traveling salesman prob-
asymmetric traveling salesman problems", Science 251, lems", Annals of Discrete Mathematics 1,495-506.
754-761. Smith, T.H.C., and Thompson, G.L. (1977), "A LIFO implicit
Miller, C.E., Tucker, A.W., and Zemlin, R.A. (1960), "Integer enumeration search algorithm for the symmetric traveling
programming formulations and traveling salesman prob- salesman problem using Held and Karp's 1-tree
lems", Journal of the Association for Computing Machinery relaxation", Annals of Discrete Mathematics 1, 479-493.
7, 326-329. Soriano, P. (1989), "l~tude de nouvelles avenues de recherche
Murty, K.G. (1968), "An algorithm for ranking all the assign- propos~es en optimisation combinatoire", Publication
ments in order of increasing cost", Operations Research 16, CRT-619, Centre de recherche sur les transports,
682-687. Montr6al.
Nahar, S., Sahni, S., and Shragowitz, E. (1989), "Simulated Stewart, Jr., W.R. (1977), "A computationally efficient heuris-
annealing and combinatorial optimization", International tic for the traveling salesman problem", Proceedings of the
Journal of Computer Aided VLSI Design 1, 1-23. 13th Annual Meetings of S.E. Tims, 75-85.
Norback, J., and Love, R. (1977), "Geometric approaches to Tarjan, R.E. (1977), "Finding optimum branchings", Net-
solving the traveling salesman problem", Management Sci- works 7, 25-35.
ence 23, 1208-1223. Volgenant, T., and Jonker, R. (1982), "A branch and bound
Norback, J., and Love, R. (1979), "Heuristic for the Hamilto- algorithm for the symmetric traveling salesman problem
nian path problem in Euclidean two space", Journal of the based on the 1-tree relaxation", European Journal of Oper-
Operational Research Society 30, 363-368. ational Research 9, 83-89.
Ong, H.L., and Huang, H.C. (1989), "Asymptotic expected Wong, R.T. (1980), "Integer programming formulations of the
performance of some TSP heuristics", European Journal of travelling salesman problem", Proceedings of the IEEE
Operational Research 43, 231-238. International Conference on Circuits and Computers, 149-
Or, I. (1976), "Traveling salesman-type combinatorial prob- 152.