a tabu search heuristic for the undirected selective travelling salesman problem

7
EUROPEAN JOURNAL OF OPERATIONAL RESEARCH European Journal of Operational Research 106 (1998) 539-545 A tabu search heuristic for the undirected selective travelling salesman problem Michel Gendreau a3b, Gilbert Laporte ‘**, FrkdCric Semet ‘A Centre de recherche SW les transports. UniwrsitC de Montrkal, C. P. 6128, succursalr Cmtrr-villa. Mont&i. Cunuda H3C 357 h DtGppur~~mmt d’ i~fbrmatiqw et de rrchrrchr op&-ationnelle. Uniurrsitt! de Montkd, C. P. 6128. .succursc& C~~ntrcville, Mont&l, Canada H3C 3J7 D+wtement d’Administrution de Iu Sank Unirersitt! de Montrkd, C. P. 612X. succursulr~ Cmtrr-rilic. Montrkl. Cunudr H3C 3J7 Received I May 1996: received in revised form I April 1997 Abstract The undirected Selective Travelling Salesman Problem (STSP) is defined on a graph G= ( V, E) with positive profits associated with vertices, and distances associated with edges. The STSP consists of determining a maximal profit Ham- iltonian cycle over a subset of V whose length does not exceed a preset limit L. We describe a tabu search (TS) heuristic for this problem. The algorithm iteratively inserts clusters of vertices in the current tour or removes a chain of vertices. Tests performed on randomly generated instances with up to 300 vertices show that the algorithm consistently yields near-optimal solutions. 0 1998 Elsevier Science B.V. All rights reserved. Keywor& Selective travelling salesman problem; Tabu search heuristic 1. Introduction The undirected Selective Travelling Salesman Problem (STSP) is defined on a graph G = ( V, E) where V = {v~,v~,...,v,} is a vertex set and E = {(vi, ui): vi, vi E V, i < ,j} is an edge set. Ver- tex IJOrepresents a depot. With each vertex vi of V \ { vn} is associated a positive profit pi. We as- sume the STSP is defined in an m-dimensional space and each vertex t)i is represented by its coor- *Corresponding author. Fax: +I-514-343-7121: e-mail: gil- [email protected]. dinates. A distance matrix D is associated with E and dij is defined as the Euclidean distance be- tween vi and vi. In what follows, dij must be inter- preted as d’ /i whenever j < i. The STSP consists of determining a Hamiltonian tour over a subset of V including the depot and having a length not ex- ceeding a preset constant L. A tour T will be de- noted by an ordered set {vg? . , pt. CO} and its length by P(T). The STSP is often called the Orienteering Proh- lem due to its connection with orienteering, a trea- sure-hunt game in which players must collect scores in a preset time frame by visiting control points (see, e.g., Hayes and Norman, 1984; 0377-2217/98/$19.00 0 1998 Elsevier Science B.V. All rights reserved. PIISO377-22 17(97)00289-O

Upload: michel-gendreau

Post on 04-Jul-2016

220 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: A tabu search heuristic for the undirected selective travelling salesman problem

EUROPEAN JOURNAL

OF OPERATIONAL RESEARCH

European Journal of Operational Research 106 (1998) 539-545

A tabu search heuristic for the undirected selective travelling salesman problem

Michel Gendreau a3b, Gilbert Laporte ‘**, FrkdCric Semet ‘A ” Centre de recherche SW les transports. UniwrsitC de Montrkal, C. P. 6128, succursalr Cmtrr-villa. Mont&i. Cunuda H3C 357

h DtGppur~~mmt d’i~fbrmatiqw et de rrchrrchr op&-ationnelle. Uniurrsitt! de Montkd, C. P. 6128. .succursc& C~~ntrcville, Mont&l,

Canada H3C 3J7

’ D+wtement d’Administrution de Iu Sank Unirersitt! de Montrkd, C. P. 612X. succursulr~ Cmtrr-rilic. Montrkl. Cunudr H3C 3J7

Received I May 1996: received in revised form I April 1997

Abstract

The undirected Selective Travelling Salesman Problem (STSP) is defined on a graph G= ( V, E) with positive profits associated with vertices, and distances associated with edges. The STSP consists of determining a maximal profit Ham- iltonian cycle over a subset of V whose length does not exceed a preset limit L. We describe a tabu search (TS) heuristic for this problem. The algorithm iteratively inserts clusters of vertices in the current tour or removes a chain of vertices. Tests performed on randomly generated instances with up to 300 vertices show that the algorithm consistently yields near-optimal solutions. 0 1998 Elsevier Science B.V. All rights reserved.

Keywor& Selective travelling salesman problem; Tabu search heuristic

1. Introduction

The undirected Selective Travelling Salesman Problem (STSP) is defined on a graph G = ( V, E) where V = {v~,v~,...,v,} is a vertex set and E = {(vi, ui): vi, vi E V, i < ,j} is an edge set. Ver- tex IJO represents a depot. With each vertex vi of V \ { vn} is associated a positive profit pi. We as- sume the STSP is defined in an m-dimensional space and each vertex t)i is represented by its coor-

*Corresponding author. Fax: +I-514-343-7121: e-mail: gil- [email protected].

dinates. A distance matrix D is associated with E and dij is defined as the Euclidean distance be- tween vi and vi. In what follows, dij must be inter- preted as d’/i whenever j < i. The STSP consists of determining a Hamiltonian tour over a subset of V including the depot and having a length not ex- ceeding a preset constant L. A tour T will be de- noted by an ordered set {vg? . , pt. CO} and its length by P(T).

The STSP is often called the Orienteering Proh- lem due to its connection with orienteering, a trea- sure-hunt game in which players must collect scores in a preset time frame by visiting control points (see, e.g., Hayes and Norman, 1984;

0377-2217/98/$19.00 0 1998 Elsevier Science B.V. All rights reserved. PIISO377-22 17(97)00289-O

Page 2: A tabu search heuristic for the undirected selective travelling salesman problem

540 M. Gendreau et al. I European Journal of’ Operational Research 106 (1998) 539-545

Tsiligirides, 1984). An application of the STSP to the delivery of home-heating oil is provided in Golden et al. (1987).

The STSP is an NP-hard combinatorial optimi- zation problem (see, e.g., Laporte and Martello, 1990). Exact algorithms have been provided by Laporte and Martello (1990) Ramesh et al. (1992), and Gendreau et al. (1995). The latter algo- rithm appears to be the best and can solve to opti- mality instances involving up to 300 vertices. A number of heuristics have also been proposed by various authors, see, e.g., Hayes and Norman (1984), Tsiligirides (1984), Golden et al. (1987, 1988) Keller (1989) Laporte and Martello (1990) Ramesh and Brown (1991) Chao (1993) and Wang et al. (1995). All these heuristics have tested on a limited set of small size problems (n < 33) and the last three are comparable in qual- ity. Recently, Gendreau et al. (1995) have devel- oped two new heuristics called Hl and H2. In Hl, an STSP solution is gradually constructed by inserting a pair of vertices, or a single vertex, into the current tour. Periodic reoptimizations of the tour are performed using the postoptimization phase of GENIUS. Once a solution has been de- termined, an attempt is made to improve it by re- moving in turn two of its vertices, and proceeding as in the construction phase. A full description of GENIUS can be found in Gendreau et al. (1992). Briefly, GENIUS contains a tour construc- tion phase, called GENI, and a postoptimization phase, called US. Starting with three arbitrary ver- tices, GENI inserts at each iteration an unrouted vertex between two of its p closest neighbours on the partially constructed tour, where p is a user controlled parameter. While making an insertion, GENI performs a local reoptimization of the tour. Once a complete tour has been obtained, the US postoptimization procedure is repeatedly applied to the tour until no further improvement is possi- ble. Here vertices are successively removed from the tour, and reinserted, using the same rules as in the tour construction phase. Heuristic H2 con- structs a first tour having a cost not exceeding 0.8L, first using all vertices, and gradually remov- ing some of them. Vertex insertions are then per- formed as in Hl. An attempt to improve the current solution is then made, by swapping verti-

ces between the current vertex set and its comple- ment. Both heuristics have been applied to instances involving between 20 and 300 vertices. Heuristic Hl is usually better than H2. In most cases, the solution is less than 10% from the opti- mum, but there are a few cases where the gap is 16% or 17%.

In spite of the apparent simplicity of the STSP, it is rather difficult to devise consistently good heu- ristics for this problem. Part of the trouble lies in the fact that profits and distances are independent and a good solution with respect to one criterion is often unsatisfactory with respect to the other. It is usually hard to accurately select the vertices that are a part of the solution. Thus, if L is relatively small and few vertices are on the optimal tour, a wrong choice of vertices may translate into a large profit difference. At the other extreme, if most ver- tices belong to the solution, then the STSP is sim- ilar to a Travelling Salesman Problem (TSP), but this does not make the problem any easier since it is complicated to pinpoint the few vertices that are excluded from the solution.

All heuristics suggested so far in the literature are based on simple construction and improve- ment techniques similar to those used for the TSP. Typically as we will see, the direct applica- tion of these techniques to the STSP may cause the algorithm to move in undesirable directions. Moreover, while these methods are in general rath- er quick, they fail to explore a larger portion of the solution space and do not correct previous wrong decisions. With the possible exception of the neu- ral network based heuristic of Wang et al. (1995), these methods use classical local ascent schemes and tend to become trapped in local op- tima. Our goal is to devise a tabu search (TS) heu- ristic for the STSP that will perform a more thorough search and circumvent these difficulties. Our computational results indicate that solutions produced by our method are always near-optimal.

The remainder of this paper is organized as fol- lows. In Section 2, we describe and discuss a sim- ple heuristic used as a starting point for the TS algorithm. The main components of the TS heuris- tic are presented in Section 3, followed by a step by step description in Section 4. Computational results are provided in Section 5.

Page 3: A tabu search heuristic for the undirected selective travelling salesman problem

hf. Gendreuu et ul. I Europeun Journul c~f Operutionul Reseurd 106 (19%‘) 539 545 541

2. A simple heuristic

We first describe a simple heuristic, called Insert und Shake, used as a starting point for our TS al- gorithm. It combines the TSP tour extension heu- ristic described in Rosenkrantz et al. (1977), and GENIUS. It gradually extends a tour T until no further vertex can be introduced without violating the distance limit L. Then an attempt to obtain a shorter tour on the vertices of T is made by apply- ing GENIUS. If this fails to produce a better tour, the algorithm terminates. Otherwise more vertex insertions are attempted and the same process is repeated.

Step 1 (InitiLd tour): Set 6 := 0 and T := { o,j. UO}. Determine uj E V \ T having the minimal ratio (l&i + djo)/pj and such that do, + d,(, < L. If no such c’, exists, the STSP is infea- sible: stop. Otherwise, set T := (~0, u,, uo}.

Step 2 (hsert): If T= V, stop. Determine t‘, @ T and two consecutive vertices u, and CA of T such that (dfj + cl,k - dik)/p, is minimal and 4’(T) + d,, + d,a - d,k < L. If no such v, exists, go to Step 3 if fi = 0 or stop if 6 = 1. Otherwise, in- sert I’j between ~1; and CA, set (S = 0, and repeat this step.

Stq 3 (Shke): Attempt to determine a shorter tour by applying GENIUS to T. If this fails, stop. Otherwise, set rS := 1 and go to Step 2.

The first two steps of this algorithm corres- pond to heuristic H2 of Laporte and Martello (1990). Executing Step 3 will often enable the process to include more vertices in the tour. The myopic insertion criterion used in Step 2 may sometimes lead to a wrong choice. Indeed this rule may lead to the selection of a vertex Cj very far from the current tour, but having a relatively large profit pi. This vertex may have been preferred to another vertex Us with a smaller profit pV. However, selecting L’,. could be prefera- ble to selecting l:, in cases where a third vertex L’, is very close to I’~ and P,. fp, > pi. This is why some heuristics (see, e.g., Ramesh and Brown. 1991; Gendreau et al., 1995) consider the possibility of inserting two vertices at a time. In our TS algorithm, we extend this idea further by inserting clusters of vertices of any car- dinality.

3. Main features of the tabu search algorithm

Before proceeding to the step by step descrip- tion of the algorithm, we outline its main features. In what follows, a solution T is an ordered set {co.. . . c,, Q} whose total length may possibly ex- ceed L. In other words, infeasible solutions are considered during the search process.

3.1. Proximit~~ measure cmd clustrrs

The proposed TS heuristic moves from one so- lution to another by operating on clusters of verti- ces rather than exclusively on single vertices, so as to allow the insertion or removal of several vertices at a time during the search process. To constitute clusters of vertices candidates for insertion moves, we first define the dispersion index of a non-empty subset R of V as

if lR\ > 1.

if /RI = 1.

and the prcuimity meclsure between two non-empty subsets R and S of V as

r,cs

Note that if R = {q} and S = {c,}, then A(R,S) = d,,. This proximity measure was intro- duced in the context of hierarchical classification by the two statisticians Tricot and Donegani (1989) to account for the compactness of R and S when measuring the proximity of these two sets. Thus in the example of Fig. 1, R is closer to S than it is to S’.

Using this proximity measure, we define several partitions of V \ { u,~} within a preprocessing step of the algorithm. Each of these partitions contains several clusters of vertices. The algorithm will op- erate on these partitions. To define the partitions, we proceed as follows. Let P,. = { C,.X} denote a partition of V \ { ~0) into clusters C,. 1~ Cr.?, . .

Step 1 (First partition): Set r := 1 and P? := {{U,}. , {L?,,}}.

Page 4: A tabu search heuristic for the undirected selective travelling salesman problem

542 M. Gendreau et al. I European Journal of Operational Research 106 (1998) 539-545

R S a) S has a large dispersion

R s b) S’ has a small dispersion

Fig. 1. Proximity of R with two sets having different disper- sions.

Step 2 (Next partitions): If r = n, stop. Other- wise, define P,.+I from P, by merging the two clus- ters C,.? and C,.k. of P, yielding min+{A( C,, C,.k)}, set r := r + 1 and repeat this step.

Note that JP,( = n + 1 - r and all clusters C,.F for which e # i* and e # k” are included in P,+l . We only retain partitions P, corresponding to r = 1, [n/2], [2n/31, [3n/4], . . . , [9n/lOl. One rea- son for keeping at most 10 partitions is to save memory. Moreover, removing partitions that are very similar to one another will create a diversifica- tion effect in the search process. This will become clearer later on.

Clusters of vertices candidate for removal from a solution are defined as sets Hij where ai and Uj are the two end vertices of a (possibly degenerate) chain on the current tour T = (~0, . . , v,, . . . , Uj, ...I 00).

3.2. Neighbourhood structure

The neighbours of a solution T = {VO, . . . , vt, vg} are other solutions obtained either by re- moving a cluster HU from T or by inserting a clus- ter C,, into T. Removing Hij from T is straightforward. The resulting tour T \ Hij is ob- tained by taking away the ordered subset of verti- ces {Vi,. . . , Vi} from T and by connecting the predecessor of ai to the successor of Uj. Inserting a cluster is more involved. First observe that a tabu status will be attributed to individual vertices in the course of the algorithm, as explained in Sec- tion 3.5. To insert a cluster C,.k into T, first remove all tabu vertices from C,.k, and all vertices of C,k al- ready belonging to T to obtain CLk. Assuming Cik # 0 a neighbour of T is obtained by applying

the TSP heuristic US with p = 4 (Gendreau et al., 1992) to the vertices of T U CLk.

3.3. Candidate moves

The sets of vertices Hij candidate for removal are defined as follows. Consider a solution T = {VO,

. 1 Vjo 7 Vi, I ’ . . 1 Vjl 1 Viz, . . . ) uj;.-l , Vi0 7 . 1 VO}t where (Vjo, vil), . . 3 @j,-l> vio) are the J longest edges of the tour and 2 is an input parameter randomly se- lected in the interval [3, J/2], and 6 is the maximum between 6 and the number of vertices appearing on the initial tour. Then the sets Hij are simply K,jj 1.. . ,Hi,-lj,-l*

The sets of vertices C& candidate for inclusion are Cii . , Cl,,, and Cl, Cs2.. . , where s is ran- domly selected in {[n/21,. . . , [9n/lOl}, according to a discrete uniform distribution.

3.4. Evaluation of candidate moves

The value of a move associated with the remov- al of a chain Hij is measured by the ratio of saved distance over lost profit, and is computed as

f(Kj) = de(T) - e(T \ Hij)] I C Pkl P. EM,

where a is a parameter dynamically adjusted throughout the algorithm (see Section 3.6).

We now compute the value of a move associat- ed with the insertion of a cluster Cik. Denote by T U {uk} the tour obtained by inserting vk into T in its best position. In what follows, we use l(T U {ok}) - f?(T) in the denominator of some ex- pressions. If this denominator is zero, then the ex- pression is set equal to an arbitrary large value. The value of an insertion is measured by the ratio of added profit over added distance. We distin- guish two cases. (1) If r = 1, vertex Uk is inserted into T where the smallest distance increase is ob- tained. The value of the corresponding move is then

&k) =pk/[a(e(T ” {Vk)) - e(T))1.

Page 5: A tabu search heuristic for the undirected selective travelling salesman problem

M. Gendreau et al. I European Journal qf Operational Research 106 (1998) 539-545 543

(2) If Y = s > 1, the gravity centre i7k of C:, is first computed for all clusters of P, and a preliminary move evaluation is made according to the formula

The cluster Ci.P corresponding to maxk {g(C$ } is then selected, and the US algorithm is applied to T u C,& to yield a tour of length .!(T U Cl,,). The exact move evaluation associated with Cik. is

The cluster to be removed or inserted corresponds to

The computational complexity of the chain remov- al evaluation is easily determined as O(n’). The complexity of the chain insertion evaluation is the same as that of US: each application can be ex- ecuted in O(np” + n2) time (see Gendreau et al., 1992), but the maximum number of applications cannot be expressed as a function of n.

3.5. Tabu status and aspiration criterion

When a vertex is removed from the current tour it is assigned a tabu status for t!I iterations, where 8 is randomly selected in the interval [5,25] accord- ing to a discrete uniform distribution. No tabu sta- tus is assigned to a vertex when it is included in the solution, This was tested and found to be ineffi- cient: it is better to allow trial insertions of vertices in the tour even if these are of short duration.

We use the following aspiration criterion. If re- moving vertices from the current tour or adding new vertices to it yields a feasible tour T, then an attempt is made to insert in vertex not belonging to T, irrespective of its tabu status. We select the vertex Up yielding max,,,i&k/[QT U {ok}) -e(r)]}, where w = {Vk $! T: [(Z-U {IQ}) <L}. The US algorithm (with p=4) is then applied to T U {VA. } and this operation is repeated as long

as W is non-empty. In practice this procedure al- lows for the possible insertion of some tabu verti- ces of C.&’ \ C.& whenever s > 1.

3.6. Parameter cI

The parameter c( reflects the relative importance attributed to length and profit of a tour. Initially, CI is equal to 0.0 1. At every iteration, CI is modified as follows. If e(r) > L, set, ~1 := c(p, where p is ran- domly selected in [ 1.5,2] according to a continuous uniform distribution. If P(T) < L, set CI := LX/~.

4. Step by step description of the algorithm

We can now proceed to the step by step descrip- tion of the TS algorithm.

Step 1 (Initial solution): Construct an initial tour T by means of Insert and Shake heuristic de- scribed in Section 2. Let z( 7’) be the profit of T and e(T) its length. Record the best tour T’ := T. Set c( := 0.01 and 6 = max(6, IT]}.

Step 2 (Partitions): Construct all partitions C,k by means of the procedure described in Sec- tion 3.2, and retain 10 of these partitions as ex- plained previously.

Repeat Steps 3-7 jbr 1000 iterations. Step 3 (Best move determination): Select

s E {m/2], . . , [9n/lO]} and 1 E [3, a/2]. Consid- er all moves producing a neighbour of T by inclu- sion of vertices of a cluster of PI or P,,, or by exclusion of vertices of a chain Hii of T. Determine the best move as described in Section 3.5 and im- plement it. If the best move consists of removing from T a chain Hij, declare all vertices of H;j tabu for 0 iterations, where 0 E [5,25].

Step 4 (Aspiration move): If l(T) < L, attempt to insert the vertices of W = {vk $! T: P( TU {ck}) < L}, as described in Section 3.5.

Step 5 (a update): Select p E [1.5,2]. If e(T) > L, set CI := czp”; if e(T) < L, set r := c(/p.

Step 6 (Tour improvement): If the iteration count is a multiple of 5, apply GENIUS to T.

Step 7 (Best solution update): If k’(T) <L and .z( T) > z( T*), set T* := T.

Page 6: A tabu search heuristic for the undirected selective travelling salesman problem

544 M. Genrireou et (II. I European Journul of’ Operrrtiond Reserrrch 106 (I998) 539-545

5. Computational results

Our algorithm was tested on randomly generat- ed instances. First, n vertices ui were generated in the [0, lOOI square according to a continuous uni- form distribution, and each d;j was set equal to the Euclidean distance between vi and vj. An integer profit was assigned to each vertex of V \ {ug} ac- cording to a discrete uniform distribution on [l,lOO]. To determine L, we first solved a TSP to optimality on G and we then set L := Pt*, where t* is the length of the optimal TSP tour, and, B is a tightness parameter 0 < p 6 1. A small value of p, means that few vertices will appear in the final solution. Conversely, a large value of B implies that few vertices will be excluded.

The program was coded in C and run on a Sun Sparcstation 1000. We only attempted those in- stances for which an exact solution was determined by means of the exact algorithm of Gendreau et al. (1995). In these, /? took the values 0.1, 0.3,0.5, 0.7, 0.9, and IZ took the values 20,40, . . ,300. Up to five instances were considered for each combination of j? and n, but the number of instances that could be solved to optimality varied between one and five for each combination. In what follows, all statistics are average values over the number of instances out of five that could be solved optimally.

We provide computational results on our TS heuristic, as well as comparison with the HI heu- ristic presented in Gendreau et al. (1995) and with the Insert and Shake heuristic described in Sec- tion 2, and used as a starting point for the TS al- gorithm. Our computational results are summarized in Table 1. The meanings of the col- umn headings are as follows:

n N

Hl

IS

tightness parameter influencing the number of vertices in the solution number of vertices excluding the depot number of instances for which an optimal solution is available average ratio of the heuristic solution value over the optimum for the Hl heuristic average ratio of the heuristic solution value over the optimum for the Insert and Shake heuristic

TS average ratio of the TS heuristic over the optimum for the TS heuristic

Seconds CPU time in seconds to run the TS heuristic

Table 1 Summarv of Comoutational results

/J n N Hl IS TS Seconds

0. I 20 5 40 5 60 5 80 5

100 5 120 5 140 5 160 5 180 5 200 5 220 5 240 5 260 4 280 3 300 1

0.3 20 5 40 5 60 5 80 5

100 5 120 4 140 3 160 3

0.5 20 5 40 5 60 5 80 5

100 5 120 4 140 3 160 1

0.7 20 5 40 5 60 5 80 5

100 5 120 3 140 I

0.9 20 5 40 5 60 5 80 4

100 1

1.000 0.945 I .ooo 1.000 0.905 1.000 0.959 0.880 1.000 0.894 0.945 1.000 0.980 0.933 0.998 0.877 0.874 0.998 0.916 0.841 0.994 0.900 0.823 0.983 0.880 0.804 0.998 0.916 0.806 0.998 0.929 0.807 0.999 0.875 0.786 0.975 0.846 0.793 0.995 0.884 0.828 1.000 0.824 0.755 0.977

0.951 0.923 1.000 0.937 0.938 0.994 0.918 0.863 0.996 0.906 0.849 0.989 0.940 0.893 0.994 0.902 0.855 0.991 0.891 0.868 0.979 0.805 0.789 0.971

0.955 0.918 I.000 0.914 0.866 0.993 0.873 0.873 0.991 0.930 0.849 0.982 0.938 0.888 0.994 0.927 0.855 0.974 0.906 0.857 0.964 0.898 0.894 0.977

0.946 0.879 1.000 0.976 0.873 0.997 0.965 0.922 0.996 0.968 0.885 0.994 0.935 0.884 0.981 0.939 0.894 0.993 0.939 0.836 0.980

0.998 0.981 0.998 0.986 0.962 I .ooo 0.983 0.949 0.997 0.989 0.972 0.995

1 2

15 33 57 78 92

117 124 142 160 201 222 252 298

14 64

116 183 267 308 426 493

18 96

197 338 505 638 864

1125

17 120 310 559 752

1192 1373

12 48

149 441

0.974 0.917 0.982 978

Page 7: A tabu search heuristic for the undirected selective travelling salesman problem

M. Gendreau et al. I European Journal oj’ Operational Reseurch 106 (1998) 539-545 545

Our results indicate that our TS heuristics al- ways yields optimal or near-optimal solutions. The gap between the optimum and the heuristic value is typically less than 1% for all combinations of, [j and n that were attempted. Our results are better and more stable than those observed for less sophisticated insertions heuristics such as Hl, IS, and the two Laporte and Martello (1990) heuris- tics. The values in the Hl column were obtained in the course of experiments carried out in another context (Gendreau et al., 1995). Computation times are not always available as Hl was some- times followed by H2, but it is safe to say that HI takes about just as much time as our TS heu- ristic. This is why we did not use it as a starting point for our method, but we preferred the faster IS procedure instead. In any case, our TS heuristic is so robust that it performs well even if it is initi- ated from a poor solution. Direct comparisons with other heuristics described in the literature are not possible since these heuristics were tested on the problem of determining a chain of maximal profit, and these heuristics were tested on very small instances (typically n < 30) for which our al- gorithm always obtains quasi-optimal solutions.

Acknowledgements

This work was partially supported by the Nat- ural Sciences and Engineering Research Council of Canada (NSERC) under grants OGP0038816, 0GP0039682 and 0GP0005392. Frederic Semet also benefitted from an NSERC International postdoctoral fellowship and was partially funded by Strategic grant STR0149269.

References

Chao, L-M., 1993. Algorithms and Solutions to Multi-Level Vehicle Routing Problems. Ph.D. Dissertation, University of Maryland, College Park, MD.

Gendreau. M.. Hertz, A., Laporte, G., 1992. New insertion and postoptimization procedures for the traveling salesman problem. Operations Research 40, 10861094.

Gendreau, M.. Laporte. G., Semet. F., 1995. A Branch-and-cut algorithm for the undirected selective traveling salesman problem. Publication CRT-95-80, Centre de recherche sur les transports, Montreal.

Golden, B.L., Levy. L., Vohra. R.. 1987. The orienteering problem. Naval Research Logistics 34, 307-3 18.

Golden, B.L.. Wang, Q., Liu. L.. 1988. A multi-faceted heuristic for the orienteering problem. Naval Research Logistics 35. 359-366.

Hayes, M., Norman, J.M.. 1984. Dynamic programming in orienteering: Route choice and siting of controls. Journal of the Operational Research Society 35, 791-796.

Keller, C.P., 1989. Algorithms to solve the orienteering problem: A comparison. European Journal of Operational Research 4 I. 22423 I

Laporte, G.. Martello, S.. 1990. The selective traveling sales- man problem. Discrete Applied Mathematics 26, 1933207.

Ramesh, P.. Brown, K.M., 1991. An efficient four-phase heuristic for the generalized orienteering problem. Comput- ers and Operations Research 18. 151ll65.

Ramesh, R., Yong-Seok, Y.. Karwan, M.H.. 1992. An optimal algorithm for the orienteering tour problem. ORSA Journal on Computing 4, 1555165.

Rosenkrantz. D.J.. Stearns, R.E.. Lewis II., P.M.. 1977. An analysis of several heuristics for the traveling salesman problem. SIAM Jounral on Computing 6, 563-58 I.

Tricot. M.L.. Donegani, M.. 1989. Formules de reactualisation pour une famille d”indices de proximite inter-classe en classification hicrarchique. RAIRO Recherche Operation- nelle 23. 1655192.

Tsiligirides. T.. 1984. Heuristic methods applied to orienteering. Journal of the Operational Research Society 35, 797-809.

Wang, Q.. Sun, X.. Golden. B.L., Jia, J.. 1995. Using artificial neural networks to solve the orienteering problem. Annals of Operations Research 61, I I I-120.