REACTIVE TABU SEARCH WITH PATH RELINKING FOR THE STEINER PROBLEM IN GRAPHS

MARCELO P. BASTOSy AND CELSO C. RIBEIROz

Abstract. Given an undirected graph with weights associated with its edges, the Steiner tree problem consists in nding a minimum weight subgraph spanning a given subset of nodes (terminals) of the original graph. We describe a reactive tabu search with path relinking algorithm for the Steiner problem in graphs, based on the extension of a previously developed tabu search algorithm using a neighborhood de ned by insertions and eliminations of Steiner nodes. Computational experiments on benchmark problems are reported, comparing the reactive tabu search with other metaheuristic implementations. The reactive tabu search algorithm outperforms other algorithms, obtaining better or comparably good solutions. We also describe a robust parallel implementation based on an independent multiple path strategy and report improved computational results on a 32-processor cluster running under Linux. Key words. Combinatorial optimization, Steiner problem, graphs, metaheuristics, tabu search, reactive tabu search, path relinking, parallel algorithm

1. Introduction. Let G = (V; E ) be a connected undirected graph, where V is the set of nodes and E denotes the set of edges. Given a non-negative weight function w : E ! IR+ associated with its edges and a subset X V of terminal nodes, the Steiner problem SPG(V; E; w; X ) consists in nding a minimum weighted connected subtree of G spanning all terminal nodes in X . The solution of SPG(V; E; w; X ) is a Steiner minimum tree. The non-terminal nodes that end up in the Steiner minimum tree are called Steiner nodes. The Steiner problem in graphs is a classic combinatorial optimization problem, see e.g. Hwang, Richards, and Winter 14], Maculan 19], and Winter 32]. Karp 15] showed that its decision version is NP-complete in the general case. Applications can be found in many areas, such as telecommunication network design, VLSI design, and computational biology, among others. Heuristics are reviewed e.g. by Duin and Voss 7], Hwang, Richards, and Winter 14] and Voss 31]. Constructive methods have been proposed e.g. by Choukmane 4], Kou et al. 18], and Takahashi and Matsuyama 28]. Improvement heuristics based on the insertion of Steiner nodes have been proposed by Minoux 24] and Voss 30]. Among the most e cient approximate algorithms, we nd implementations of metaheuristics such as genetic algorithms (Esbensen 8] and Kapsalis, Rayward-Smith, and Smith 16]), tabu search (Duin and Voss 7], Xu, Chiu, and Glover 33, 34]), GRASP (Martins, Ribeiro, and Souza 20] and Martins et al. 21, 22]), and simulated annealing (Dowsland 5]). Xu, Chiu, and Glover 33, 34] described a tabu search heuristic for the Steiner tree-star problem, based on a neighborhood de ned by Steiner node insertions, eliminations, and exchanges. More recently, Ribeiro and Souza 25] proposed a tabu search heuristic, based on the same type of neighborhood. Move value estimations, eliminations
of Computer Science, Catholic University of Rio de Janeiro, Rio de Janeiro, RJ 22453-900, Brazil. E-mail: mbastos@inf.puc-rio.br z Department of Computer Science, Catholic University of Rio de Janeiro, Rio de Janeiro, RJ 22453-900, Brazil. E-mail: celso@inf.puc-rio.br 1
y Department

July 5, 2000

A greedy randomized algorithm is used for diversi cation. Moreover. Each solution is characterized by its set of Steiner nodes. Concluding remarks are made in Section 7. Section 3 describes the reactive tabu search procedure in details. which produces high quality solutions. the search for a Steiner minimum tree amounts to the search for an optimal set S of Steiner nodes. Special mechanisms are used for the evaluation of insertion and elimination moves. and two types of moves are de ned: insertion moves and elimination moves. Ribeiro and Souza 25] proposed a very fast linear time scheme to compute estimations ^(:) which are upper bounds to the value of insertion moves. which further improves the results reported in the latter. Given the current solution characterized by its set S of Steiner nodes. the Steiner minimum tree T (S ) is also a minimum spanning tree of the graph induced in G by the node set S X . E. we summarize the neighborhood structure and the associated local search procedure. A parallel implementation based on an independent multiple path strategy is described in Section 6 and computational results on a 32-processor cluster running under Linux are reported. such that w(S ) = minS V nX fw(S )g. Accordingly. w. The only move value which is exactly computed is (s0) = w(T (S fsg)) ? w(T (S )). Given any set S V n X of Steiner nodes. instead of performing exact move evaluations. s 2 S ) is given by (s) = w(T (S fsg)) ? w(T (S )) (resp. Let S be the set of Steiner nodes in the optimal solution of SPG(V.2 tests. elimination) of node s into (resp. we present a reactive tabu search algorithm based on the same neighborhood de nition and acceleration techniques described in Ribeiro and Souza 25]. from) S . and neighborhood reduction techniques are used to speedup the local search and lead to a very fast implementation. 2. Then. together with some comparisons with other literature algorithms. For any non terminal node s 2 S (resp. Let S be a set of Steiner nodes and T (S ) be its associated Steiner tree. The move value associated with the insertion (resp. The same scheme is used in our reactive tabu search approach. in order to speedup the local search. including the tabu tenure adjustment mechanism. The construction of initial solutions and the diversi cation procedure are also described in this section. (s) = = w(T (S n fsg)) ? w(T (S ))). The classical aspiration criterion is used: a tabu node may be selected for insertion . as the result of the insertion (resp. The neighbors of solution T (S ) are de ned by all sets of Steiner nodes which can be obtained either by adding to S a new non terminal node (insertion moves) or by eliminating from S one of its Steiner nodes (elimination moves). In this paper. let w(S ) be the weight of T (S ). we denote by T (S fsg) (resp. associated with the insertion of s0 into S . let s0 = argmins2V n(X S) f ^(s) : s is not tabug be the candidate node to insertion with the best estimation among all non-tabu nodes. Neighborhood Structure and Local Search. The path relinking procedure and the construction of the pool of elite solutions are described in Section 4. it can be associated with a Steiner tree T (S ) corresponding to a minimum spanning tree of the graph induced in G by S X . s 2 S ). while path relinking is used for intensi cation. given by the sum of its edge weights. elimination) of a non terminal node s 2 S (resp. (S n fsg) X ). In the next section. X ). Computational experiments on benchmark problems are reported in Section 5. T (S n fsg)) a minimum = spanning tree of the graph induced in G by (S fsg) X (resp.

E.1. Pseudo-code of the local search procedure whenever it improves the weight of the current best solution. is used to speedup the search for improving elimination moves. In case the best insertion move improves the current solution. best neighbor value w(T (S n fsg)) 11 end-for /* Best among all eliminations and non-improving insertions */ 12 return s0 end Local Search Fig. A linear time neighborhood reduction strategy. For each non terminal tabu node s 2 S . as far as the evaluation of elimination moves is the most time consuming phase of this procedure. also proposed in 25] and based on the computation of lower bounds (s) to the exact move values. . best neighbor valueg do: 9 if (w(T (S n fsg)) < best neighbor value and s is not tabu) or (w(T (S n fsg)) < w(T (S )) and s is tabu) 10 then s0 s. This strategy strongly reduces the computation times involved in the neighborhood search. 2. w. S ) S : Steiner nodes in the current solution T (S ): current solution S : current best set of Steiner nodes /* Determination of the best insertion among nontabu nodes */ 1 s0 argmins2V n(X S) f ^(s) : s is not tabug /* Determination of the best insertion among tabu nodes */ 2 s00 argmins2V n(X S) fw(T (S s)) : s is tabug /* Determination of the best node to be inserted */ 3 if w(T (S fs00g)) < w(T (S )) and w(T (S fs00g)) < w(T (S 0)) 4 then return s00 5 else if w(T (S fs0 g)) < w(T (S )) 6 then return s0 7 best neighbor value w(T (S fs0g)) /* Evaluation of Steiner nodes eliminations */ 8 for each s 2 S : lower bound (s) < minf0. already used by Ribeiro and Souza 25]. S. it is selected and made e ective by the local search procedure. the evaluation of (s) = w(T (S fsg)) ? w(T (S )) involves the = computation of a minimum spanning tree of the graph induced in G by (S fsg) X . A move is considered to be forbidden whenever the current tabu tenure plus the index of the most recent iteration in which the associated node was involved in a move is greater than the current iteration counter.3 procedure Local Search(V. The local search procedure. applied to the current solution at each iteration of the reactive tabu search algorithm is summarized in Figure 2. Elimination moves are evaluated and compared with the best insertion move only in case the latter is non-improving. X.1.

Tabu search is a metaheuristic for combinatorial optimization problems. whenever the same solution is visited by the search a certain number max repetitions of times (in our implementation. the tabu tenure is divided by 1. set SPHk+1 by appending to SPHk all nodes in the shortest path from sk to SPHk. we enforce a diversi cation step whenever the same solution is visited more than a certain number of times. Then. The initial solution heuristic stops as soon as all terminal nodes have been spanned. The loop from lines 4 to 44 is performed until max iter without improvement have been performed without improvement in . A fundamental parameter in tabu search implementations is the tabu tenure. is to avoid that the search be con ned within small regions of the solution space. There is a counter rep(S ) associated with each solution S . The pseudo-code of the reactive tabu search algorithm is given in Figure 3. The tabu tenure is multiplied by a factor larger than one (we have used 1. Its most characteristic feature is the possibility of checking for cycling and. 11. let sk 2 X n Sk be a non-spanned terminal node randomly selected from this list. 13]. using any randomly selected node s0 2 V as the root. A hashing table is used to speedup the access to solutions previously visited and stored. Second.1. Reactive Tabu Search. Too small tabu tenure values may not be e ective to avoid cycling. Diversi cation steps are performed in two situations. Initializations are performed in lines 1 to 3. after each sequence of max iter for diversification iterations without improvement in the best solution found since the last diversi cation step. First.4 3. Initial solutions are computed by a randomized version of the shortest path heuristic (SPH) of Takahashi and Matsuyama 28].1 after each group of ten iterations). The same procedure described above for the construction of initial solutions is used to compute a new solution to restart the search at a diversi cation step. in consequence. while too large values may lead to the premature stop of the search at low quality solutions. which makes use of dynamic memory structures to guide a subordinate heuristic even in the absence of improving moves 10. in order to make the search less restrictive in regions less subjected to cycling (in our implementation. which determines the number of iterations along which a move is considered as forbidden. with SPH0 = fs0 g. let Sk be the set of terminal nodes already spanned by the current tree SPHk . which stores forbidden move attributes. taking decisions which allow dynamic changes in the value of the tabu tenure. Then. representing the number of times the latter was visited. The tabu tenure is also gradually and periodically reduced. whenever the counter rep(S ) attains the value eight for some solution S ). Another advantage of keeping track of all visited solutions and using the reactive scheme. At each iteration k of the shortest path heuristic. reactive tabu search also keeps track of the whole set of visited solutions throughout the search. The updated set Sk+1 of already spanned terminal nodes is obtained by inserting into Sk the terminal nodes in the shortest path from sk to SPHk. Besides handling the short term memory. The reactive tabu search technique has been proposed by Battiti and Tecchiolli 1]. To overcome this ine ective behavior. The tabu tenure is divided by this same factor whenever all moves turn out to be forbidden.3 in our implementation) whenever the move selected by local search at some iteration leads to a solution previously visited. which is done in almost constant time in the average.

iter for diversification 0 32 else iter for diversification iter for diversification + 1 33 end-if 34 Evaluate S for insertion in the pool of elite solutions 35 if iter for diversification < max iter for diversification 36 then S S /* move to best neighbor */ /* diversi cation step */ 37 else S Randomized SPH(V. X ) S : Steiner nodes in the current solution T (S ) L: list of non-terminal tabu nodes R: list of already visited solutions S : current best set of Steiner nodes S d : best set of Steiner nodes since last diversi cation 1 Compute an initial solution: S Randomized SPH(V. S. w. tabu tenure=1:1g 41 end-if 42 end-if 43 iterations iterations + 1 44 end-while 45 return S end Reactive Tabu Search for SPG Fig. iter without improvement 0 28 else iter without improvement iter without improvement + 1 29 end-if 30 if w(T (S)) < w(T (S d)) /* best solution since last diversi cation? */ 31 then S d S . rep(:) 0. S d S 12 rep(S ) 0. Pseudo-code of the reactive tabu search procedure for the Steiner problem in graphs . iter for diversification 0 /* stop criterion */ 4 while (iter without improvement < max iter without improvement) do 5 if S 2 R 6 then /* solution already visited */ 7 rep(S ) rep(S ) + 1 /* tabu tenure increase */ 8 tabu tenure 1:3 tabu tenure 9 if rep(S ) = max repetitions 10 then /* enforce a diversi cation move */ 11 S Randomized SPH(V. 3. S ) /* best neighbor */ 19 if all moves are forbidden 20 then tabu tenure maxf2. S d S . d S S . E.5 procedure Reactive Tabu Search for SPG(V. X ). w. E.1. w. X ) 2 S . L. E. E. iter for diversification 0 38 end-if 39 if iterations = 0 mod(10) /* tabu tenure reduction */ 40 then tabu tenure maxf2. tabu tenure 10 3 iter without improvement. E.. X ). w. w. X. tabu tenure=1:3g = 21 else if s 2 S 22 then S S fsg 23 else S S n fsg 24 end-if 25 Update the iteration associated with the last move involving node s /* best solution found? */ 26 if w(T (S)) < w(T (S )) 27 then S S . iter for diversification 0 13 end-if 14 else 15 R R fS g 16 rep(S ) 1 17 end-if 18 s Local Search(V. iterations 1. R .

the reactive tabu search algorithm handles a pool with a xed number pool size of elite solutions. (2) Quality: A solution S quali es to be inserted into the pool with respect to this criterion if its weight is smaller than that of the worst solution currently in the pool. In line 25. Lines 5 to 17 implement the reactive mechanism of the reactive tabu search algorithm. a diversi cation step is performed and a new initial solution is recomputed in line 37 through the application of the randomized version of the shortest path heuristic SPH. for every elite solution S e currently in the pool. respectively. The best solution found since the last diversi cation and the related iteration counter are updated in lines 30-33. For each pair of elite solutions (initial and guiding) in the pool. A solution S is eligible to be inserted into the pool of elite solutions if the ratio n(S S e )=minimumfn(S ). the iteration counter is updated in line 43. The best neighbor solution S is constructed in lines 21-24. The new solution found is evaluated for insertion in the pool of elite solutions (see Section 4) in line 34. The rationale for this criterion is to ensure diversi cation among the solutions in the pool. Otherwise. Starting from the rst. Elite Solutions and Path Relinking. whose cost is arti cially made equal to in nity. Path relinking may then be viewed as a strategy that seeks to incorporate attributes of high quality solutions (elite solutions). This set de nes the moves which should be applied to the initial solution until the guiding solution is attained. the set of all nodes which are Steiner nodes in one of them. but not in the other. the number of Steiner nodes in solution S and the number of Steiner nodes in the symmetric di erence of solutions S1 and S2. The path relinking approach generates new solutions by exploring trajectories that connect elite solutions 12. the current solution is set to the best neighbor S in lines 35-36. The best solution found and the related iteration counter are updated in lines 26-29. The Local Search procedure described in Section 2 is applied in line 18 to nd the node s associated with the best move from the current solution S . Finally. 4. To implement an intensi cation strategy based on path relinking for the Steiner problem in graphs. we always perform the best (most decreasing or least increasing) remaining move still . paths in the solution space leading towards other elite solutions are generated and explored in the search for better solutions..e. The pool is initialized with \null" solutions. by favoring these attributes in the selected moves. we rst compute their symmetric di erence. Starting from one or more of these solutions. Any solution visited during the search is considered as an elite solution and replaces the current worst in the pool if it satis es two criteria: (1) Distance: Let n(S ) and n(S1 S2 ) denote. the tabu tenure reduction mechanism is applied in lines 39-40. n(S e)g is larger than a certain threshold distance. This is accomplished by selecting moves that introduce attributes contained in the guiding solutions. we update the iteration counter associated with the most recent iteration in which node s was involved. and a new iteration starts. In case max iter for diversification iterations without improvement in the best solution found since the last diversi cation have not yet been performed. the tabu tenure reduction mechanism is activated in lines 19-20 and a new iteration starts. 13]. i.6 the best solution found. In case all moves are forbidden. depending on whether the best move was a node insertion or a node elimination.

non-terminal nodes with degree two and its two adjacent edges are contracted into a single edge. The computational experiments have been performed on two sets of test problems: OR-Library instances: This set is formed by the 20 instances from each of the series C. The original graphs have been submitted to reduction procedures.29 of the g++ compiler with the optimization ag set to -o3. combining di erent densities of terminal nodes and edges.1 after each sequence of 10 iterations. and 320 (instances DV-320) vertices. Incidence instances: Those are the instances of type incidence problems described by Duin and Voss 7]. we investigate di erent settings for the following parameters using the OR-Library instances: diversi cation criterion. organized in series of 100 test problems characterized by their number of nodes jV j = 80. Computational experiments have been performed on a Pentium II machine with a 400 MHz clock. while the nearest special vertex test contracts edges which necessarily belong to every optimal solution. Next. and E of problems available from the OR-Library 2]. D. until the latter is attained.36. First. 20 classes of problems were generated. Whenever the best solution found along this trajectory improves the best solution found so far and satis es the distance criterion above described.0. it replaces the worst solution currently in the pool and is submitted itself to the path relinking procedure. Function hash from library libelf (available by anonymous ftp from ftp://sunsite. and 320. and the stopping criterion is de ned by 3000 iterations without improvement in the best solution found.edu/pub/Linux/libs) version 0. . Finally. In this section. we present numerical results obtained with the application of the reactive tabu search with path relinking algorithm described in the previous sections. with 80 (instances DV-80).unc. de ned by the number of iterations without improvement in the best solution found since the last diversi cation (max iter for diversification). the size of the pool of elite solutions is set at 20. There are ve problems in each class and a total of 300 instances. All numerical results have been obtained with the following parameters: tabu tenure initially set equal to 10.3 whenever the local search procedure leads to a previously visited solution.6. tabu tenure multiplied by 1. The algorithm was implemented in C++. 5. The graphs in these series have not been submitted to the reduction procedures. the special distance test and the nearest special vertex test of Duin 6] are applied until no further reductions are possible.7 in this list. as con rmed by Koch and Martin 17]. using version 2. All above steps are repeated. The random number generator of Schrage 27] is used. 160 (instances DV160).90. Computational Results. Path relinking is applied as an intensi cation-based post-optimization strategy to the set of elite solutions identi ed by algorithm Reactive Tabu Search for SPG. To illustrate the behavior of the reactive tabu search with path relinking. 160. until no further reductions can be identi ed. all non-terminal nodes with degree one in the partially reduced graph are also eliminated. They were generated so as to make the reduction tests ine ective.3 whenever all moves are tabu and divided by 1.4 was used for string hashing. The list of already visited solutions is stored in a hash table with 10000 entries. In each case. tabu tenure divided by 1. The special distance test eliminates edges which may not belong to an optimal solution. running under the operating system Linux 2.

The overall results show that the smallest average errors are attained with max iter for diversification = 20.1 the results obtained by the reactive tabu search algorithm (with and without path relinking) for the OR-Library instances with the above parameter settings. we display in Figure 5. D. Computation times increase with the threshold distance. and the average computation time in seconds. and the improvement in solution value obtained by path relinking with respect to the solution found without it (computed over the instances for which the reactive tabu search algorithm itself has not found the optimal solution).3 the evolution of the tabu tenure parameter along the iterations of the execution of problem E12. D. in a total of 200 runs for each series. although at the cost of a strong augmentation in computation times. Each of those algorithms was run once for each problem. the number of runs for which the optimal solution was found. For each instance. the number of optimal solutions. Computational results over the problems in each series and over all 60 test problems are depicted in Figure 5. the reactive tabu search algorithm without path relinking found the optimal solutions in 435 out of the 600 runs. To further illustrate the e ectiveness of the reactive tabu search algorithm on the OR-Library instances. we give the average and the maximum percentual errors with respect to the optimal value. 10. 60. Globally. keeping its value within reasonable limits most of the time. while the number of optimal solutions and the average computation times do not seem to be too much a ected by this parameter.2 the results obtained by di erent tabu-search based algorithms for the OR-Library instances. 20. the average computation time in seconds. and 100. and E.09%. The algorithm was run ten times for each of the 20 instances in series C. 30.2: the number of optimal solutions. We summarize in Table 5. and E. with di erent seeds for the pseudo-random number generator.8 and the threshold used as the acceptance criterion for a solution to be included in the pool of elite solutions (distance). To further illustrate the behavior of the reactive tabu search algorithm. For each value of max iter diversification = 5. and the number of runs for which the percentual error was less than 1% and less than 5%. We next report results illustrating the in uence of the threshold distance used as the acceptance criterion for a solution to be included in the pool of elite solutions.36% to 0. Overall results are also presented. 40. since the length of the relinking paths increase with the diversity of the elite solutions. 10%. For each series C. 25%.1: the average percentual error with respect to the optimal value. with di erent seeds for the pseudo-random number generator. We rst investigate the behavior of algorithm Reactive Tabu Search for SPG with respect to the parameter involved in the diversi cation criterion. For each series. Path relinking also reduced the average relative error with respect to the optimal value from 0. the algorithm is applied 10 times to each OR-Library instance. we ran the reactive tabu search with path relinking once for each value of the parameter distance = 1%. We notice that the mechanisms of increasing and reduction of the tabu tenure are often activated. Best overall results in terms of the average solution improvement were obtained with distance = 25%. the average computation time in seconds. Computational results over the problems in each series and over all 60 test problems are depicted in Figure 5. and 50%. 5%. Path relinking lead to optimal solutions in 66 additional runs. we give in Table 5. the .

2 Average percentual error 0.1. Variation of the diversi cation parameter max iter for diversification .25 Series C Series D Series E Total 0.15 0.05 0 0 550 500 450 400 Optimal solutions 350 300 250 200 150 100 0 200 180 160 140 Computation time 120 100 80 60 40 20 0 0 10 20 30 40 50 60 70 80 90 100 10 20 30 40 50 60 70 80 Series C Series D Series E Total 90 100 10 20 30 40 50 60 70 80 Series C Series D Series E Total 90 100 Fig. 5.1 0.9 0.

5.10 180 160 140 120 Computation time 100 80 60 40 20 0 1% 50 Series C Series D Series E Total 5% 10% 25% 50% 45 40 Series C Series D Series E Total Optimal solutions 35 30 25 20 15 10 1% 1.4 Series C Series D Series E Total 5% 10% 25% 50% 1.4 0.2 1 Solution improvement 0. Variation of the threshold distance .2 0 1% 5% 10% 25% 50% Fig.8 0.2.6 0.

err.17 1.45 501 57. The next column (F-Tabu) displays the same information for the tabu search algorithm of Gendreau et al 9]. < 5% C 0.18 186 200 Total 0. (%) Max. Reactive tabu search with path relinking strongly outperforms the other tabu search strategies.53 197 200 E 0. Computation times cannot be directly compared.09 3. < 5% C 0.11 25 20 tabu tenure (insertions) 15 10 5 0 600 800 1000 iterations 1200 1400 Fig.65 177 2. .55 531 590 Reactive tabu search with path relinking Series Avg.96 200 200 D 0. < 1% Err.1 second column (TS) in this table displays the average relative error observed with the tabu search algorithm of Ribeiro and Souza 25]. Behavior of the tabu tenure along the reactive tabu search iterations Reactive tabu search without path relinking Series Avg.13 2. < 1% Err.21 435 9.36 4. Time Err. since the results have been obtained in di erent machines.3.33 178 200 E 0.36 6.10 3. (%) Max. Time Err.77 136 157. (%) Opt.59 6.01 0. 5.88 198 2.err.33 165 190 Total 0.45 167 12.55 583 600 Run statistics for tabu search with path relinking for OR-Library instances Table 5.err.00 188 200 D 0.04 142 5. The results obtained with the tabu search algorithm without and with path relinking are given in the columns denoted respectively with RTS and RTS-PR.21 116 21.err. (%) Opt.

02 0.3 the results obtained by the reactive tabu search algorithm (with and without path relinking) for the incidence instances.15 0. our parallelization strategy follows an independent multiple path strategy.36 0.10 E 0. We also report the same statistics for the tabu search algorithm of Ribeiro and Souza 25] (obtained on the same Sun UltraSPARC 1 machine) and for procedure Svertex+reBuild from Duin and Voss 7] (obtained on a Pentium with a 90MHz clock). in terms of both the average and the maximum relative error with respect to the optimal value.44% to 0. which is used for path relinking once all processors . path relinking improved the results obtained by the pure reactive tabu search algorithm.13 0.16%. which have been obtained through the exact computation of the minimum distance matrix. DV-160. For each series. and DV-320. in the case of the instances in series DV-320 for which the optimal value is not known). with the average relative error with respect to the optimal value being not greater than 0.36 0. The reactive tabu search with path relinking found at least 244 optimal solutions out of the 300 instances in series DV-80. summing up the times in column sec1 of Rebuild with those in column sec2 of Svertex+reBuild in Table III.16%. and DV-320. Proven optimal solutions are available for all problems in series DV-80 and DV-160. using the approximate computation of the distance matrix. with the goal of improving the solutions found by the latter. It also improved the solutions found by the tabu search algorithm. The algorithm was run once for each of the 100 instances in series DV-80. The master processor keeps a pool of elite solutions. due to the smaller complexity of the initialization steps. Once again.59 0. Results from the latter are presented in two versions.31 0. but this time at a very small additional cost in terms of computation time. but for only 91 out of the 100 instances in series DV-320. with the same parameter settings.2 Next. Parallelization.26 0.09 Average relative errors with di erent tabu search strategies Table 5.17 Total 0. Computation times are quite smaller in the second case. The rst version corresponds to results extracted from Table II of 7]. we reproduce the results from Table III of 7]. Computational results in this experiment have been obtained on a Sun UltraSPARC 1 machine. we summarize in Table 5. 6. and the average computation time in seconds. in which each slave processor explores a di erent variant of the reactive tabu search algorithm described in Section 3.11 0.71 0. DV-160. the number of instances for which the optimal solution was found.60 0. In the second version.01 D 0. Processing times in the rst case were obtained from 7].82 0. According with the classi cation discussed in 29]. nding 58 additional optimal solutions and reducing the average relative error from 0.12 Series TS 25] F-Tabu 9] RTS RTS-PR C 0. Overall results are also presented. In this section we describe a parallel implementation of the reactive tabu search algorithm with pattern relinking described in Sections 3 and 4. we give the average and the maximum percentual errors with respect to the optimal value (with respect to a lower bound. The reactive tabu search with path relinking obtained much better results than both versions of Svertex+reBuild.

35 2. As for the sequential algorithm. The master processor keeps track of the total number of iterations performed by the slaves.47 11. error (%) Optima DV-80 1.4 not available Total 1.2 29. error (%) Max.7 14.2 50.01 0.3 12.21 73 DV-320 0.7 89 DV-160 0.Version 1 Series Avg. di erent initial solution. error (%) Max.1 162.08 1. each of the (p ? 2) slave processors independently performs the reactive tabu search algorithm.5 Time 6.2 not available DV-320 1. error (%) Max.1 Time 3.3 39 Total 0.45 244 Tabu search 25] Series Avg. using the randomized shortestpath heuristic of Takahashi and Matsuyama 28].34 4.13 Reactive tabu search without path relinking Series Avg. each slave constructs its own.6 0.90 7. We denote by p the total number of processors involved in the parallelization.02 0.56 225 Reactive tabu search with path relinking Series Avg.03 11.2 0.5 22. Each processor uses a di erent parameter setting. error (%) Optima DV-80 0.56 56 Total 0.2 not available DV-320 1.8 not available Svertex+reBuild 7] .07 11.3 186 Svertex+reBuild 7] .66 96 DV-160 0. error (%) Max. The two phases of the parallel implementation are described next.16 4.6 65. it requires a new solution to the constructor processor.45 64 Total 0.20 6.66 99 DV-160 0.8 not available DV-160 0.9 not available Total 1. error (%) Optima DV-80 1. error (%) Optima DV-80 0. error (%) Max.12 3. The pool of elite solutions is formed .26 5.21 81 DV-320 0.3 Time 5. and maintains a centralized pool of elite solutions. The latter continuously runs the randomized version of the shortest-path heuristic.44 6.4 2.23 5.9 58 DV-320 0.0 Time 0. Whenever a slave has to perform a diversi cation step.8 not available DV-160 1.8 Run statistics for tabu search with path relinking for incidence instances have nished their searches.98 6. Independent multiple-path reactive tabu search: In this rst phase.0 Time 0.8 28. error (%) Optima DV-80 0. controls the application of the stopping criterion (total number of iterations performed by all processors).89 6.9 168.8 not available Table 5.24 11.8 6.Version 2 Series Avg.19 3.5 1.1 68. keeping a list of solutions which are sent to the slaves on request.48 5.

29 of the g++ compiler and the LAM implementation of the Message Passing Interface (MPI) standard 23] for communication. the parallel algorithm found 15 additional optimal solutions than the sequential one and reduced the average relative error from 0. This parallelization strategy was also implemented in C++ using version 2.21%. Computational results obtained for OR-Library and incidence instances are reported in Table 6. we have set the total number of tabu search iterations set at 90.0. the parallel implementation found 18 additional optimal solutions and reduced the average error from 0.3.01%.91% and 0. The maximum and the average relative errors with respecto to the optimum among all instances of this type were respectively 3.14 by locally optimal solutions found by the slaves.34% to 0.2. solutions whose best neighbor identi ed by the local search procedure described in Section 2 is a non-improving one. The maximum and the average relative errors with respect to the optimum among all instances of this type were respectively 0. We also give a summary of the results obtained over all instances of each type.06%.14% and 0. For those with 320 nodes.1. and for respectively 18 and 14 out of the 20 instances in each of series D and E. For each series of test instances. We also inform the average elapsed time in seconds including the two phases.12% to 0.e. but not among themselves.90. 000 and the size of the pool of elite solutions at 100. The latter distributes pairs of elite solutions to the slaves upon their request. 1. and respectively 96 and 82 optimal solutions out of each set of 100 instances with 160 and 320 nodes. The 30 slave processors running the sequential reactive tabu search algorithm use di erent combinations of the following parameters: tabu tenure increase factor equal to 1. The computational experiments have been performed on a cluster of 32 Pentium II-400 processors.9. Distributed path relinking: In this second phase. we give the following statistics at the end of each algorithm phase: average and maximum percentual errors with respect to the optimal value. maximum number of repetitions of the same solution before diversi cation equal to 8 and 11. Such improvements can be better observed for the largest instances.6. We note that the slave processors asynchronously communicate only with the master and with the constructor processors. The parallel implementation found optimal solutions for all OR-Library instances in series C.1 and 5. number of iterations without improvement before diversi cation ranging from 10 to 80. The comparison of the results obtained by the parallel implementation with those reported for the original sequential algorithm in Tables 5. this strategy found optimal solutions for all instances with 80 nodes. 1.36. In our implementation.3 shows that the former found improved results for all problem series and sizes. (p ? 1) slave processors perform the path relinking algorithm described in Section 4 over all pairs of elite solutions kept in the centralized pool by the master processor. we also note that path relinking strongly contributed to improve the solutions found by tabu . each having 32 Mbytes of RAM and running under the operating system Linux 2. and 1. As for the sequential algorithm. For the incidence problems. For the incidence problems with 160 nodes. Locally optimal solutions found by the slaves are included in the pool of elite solutions only if they satisfy both criteria described in Section 4. i. and the number of instances for each an optimal solution was found. The other parameter values are those set and used along the computational experiments reported in Section 5.07%.

REFERENCES 1] R. Conclusions.07 3.30 4.64 75 0.44 4.33 96 10.02 0. \The reactive tabu search". (%) err. tabu search 9. time C 0. We have also described a parallel implementation of the reactive tabu search with path relinking algorithm.00 100 6.24 3.85 DV-160 0. As already noticed by Roucairol and Cung 26].61 51 0.00 0.45 18 14.11 4. The reactive tabu search algorithm outperforms other approximate algorithms and metaheuristics.23 4.64 264 0. but mainly to its robustness. Average Maximum Opt.68 Incidence instances Reactive tabu search phase Path relinking phase Avg. (%) sols. based on an independent multiple path strategy.00 0.1 search. (%) err. and GRASP 21. Computational experiments on benchmark problems are reported. (%) err.14 DV-320 0.14 1. elapsed Series err. As already observed in 3] for the prize-collecting version of the Steiner problem in graphs.15 OR-Library instances Reactive tabu search phase Path relinking phase Avg. (%) sols. time DV-80 0. Tecchiolli. 22]. Path relinking is based on the use of a pool of elite solutions visited during the search.35 D 0.14 18 0.00 20 0. we note that path relinking used as an intensi cation strategy strongly contributed to improve the solutions found by tabu search for all test problem types and sizes.42 52 25.00 0.61 13 0.01 0. obtaining better solutions than recent implementations of path and vertex exchange algorithms 7]. 126-140. 25]. based on the extension of a previously developed tabu search algorithm using a neighborhood de ned by insertions and eliminations of Steiner nodes. A randomization strategy is also used to further increase the diversi cation of the initial solutions constructed. the main advantage of the parallel implementation is not only due to solution improvements. ORSA Journal on Computing 6 (1994).91 278 18. 7.42 14 55. since high quality solutions are obtained without almost any e ort in parameter tuning.04 0. err. We presented in this work a reactive tabu search with path relinking algorithm for the Steiner problem in graphs. Average Maximum Opt. Average Maximum Opt. Average Maximum Opt.63 90 0.00 20 7.51 Total 0.21 3.83 Run statistics with the parallel implementation Table 6. (%) err.05 E 0. elapsed Series err.14 99 0.91 82 42. comparing the reactive tabu search with path relinking with other heuristics from the literature. (%) sols. Battiti and G. in particular for the largest and more di cult test instances.06 1.00 0. err. . (%) sols. The parallel implementation found still better results than the sequential algorithm.65 Total 0.

North-Holland. 129{167. 32] P. 397{406. Karp. 24] M. Minoux. V. \A tabu search heuristic for the Steiner tree problem".G. 1992. \An approximate solution for the Steiner problem in graphs". 133-146. Amsterdam. Takahashi and A. Berman. editors). \Tabu search for the Steiner problem in graphs".H. Laporte. Souza. GERAD. Networks 36 (2000). 20] S. \A Parallel GRASP for the Steiner Problem in Graphs". Acta Informatica 15 (1981). Larochelle. 28] H. Sanso. 207{212. Voss. Engineering Optimization 17 (1991). Esbensen. 21] S. 1997. Plenum Press.C. Ribeiro. Cung. in Surveys in Combinatorial Optimization (S.L. \Computing near-optimal solutions to the Steiner problem in a graph using a genetic algorithm". \Parallel local search". Beasley. and P. Martin. 43-65.W. Laguna. Glover. Pardalos. and C. 1996. M. Verhoeven and E.C. \The Steiner problem in graphs". 141{145. \Greedy Randomized Adaptive Search Procedures for the Steiner Problem in Graphs".C. \Solving Steiner tree problems in graphs to optimality". Ribeiro. 9] M. Aarts. Japonica 24 (1980). Martello. Schrage.E. in Complexity of Computer Computations (E.M. \Steiner's problem in graphs: Heuristic methods". 89{105. 1998. Journal of Global Optimization.). Duin. and L. ORSA Journal on Computing 2 (1990). 25] C. Networks 29 (1997). 29] M. \Reducibility among combinatorial problems".Advances. New York. Richards. 1995. Ribeiro and M. \Steiner's problem in graphs: Approximation. Kapsalis.A.L. University of Colorado. Journal of Heuristics 1 (1995). eds.Part I". Dowsland. 22] S. Winter. Les Cahiers du GERAD G-98-01. 2000. reduction. \A more portable Fortran random number generator". to appear. Journal of the Operational Research Society 41 (1990). Resende. Miller and J. Networks 26 (1995). Matsuyama. Martins. 1994. Math. Choukmane. Markowsky. \Tabu Search . Pirlot. Networks 32 (1998). Kluwer. 573{577. RAIRO Recherche Operationnelle 12 (1978). Voss. \Local Search with Perturbations for the Prize-Collecting Steiner Tree Problem". applications and challenges".G. 6] C. 221{233. Hwang. 2000. 207-232. \E cient greedy heuristics for Steiner tree problems using reoptimization and supermodularity". \MPI: A Message Psssing Interface Standard". INFOR 28 (1990). submitted for publication. \Implementations parallles des metaheuristiques". and C.L.C. 173{185. P. \A fast algorithm for Steiner trees". Winter. Herms. Resende. variation".L. P. 5] K. Gendreau. Ribeiro. Boston. M. Teghem and M.K. Institute of Actuarial Science and Economics. 27] L.Part II".C. 17] T. 26] C. Rayward-Smith. G. G. to appear. .W. Roucairol and V. Glover.16 2] J.C. Journal of the Operational Research Society 44 (1993).-D. \Tabu Search .C. 10] F. Ribeiro. 13] F. and C. J. Canuto. 30] S. 12] F. ORSA Journal on Computing 1 (1989). M. \Hill-climbing. Martins. University of Amsterdam. 15] R. C. Voss. Annals of Discrete Mathematics 31 (1987). and G. Networks 17 (1987). 3] S. \Steiner problem in networks: A survey". 8] H. 2000. 11] F. Discrete Applied Mathematics 40 (1992). Martins. \A Parallel GRASP for the Steiner Tree Problem in Graphs Using a Hybrid Local Search Strategy". Anton Hain. eds. Maculan. Glover and M. 19] N. 85{103. and B. 45{72. Kou. 16] A. 4{32.D.-F. ACM Transactions on Mathematical Software 5 (1979) 132{138. Montreal. 1069{1072. The Steiner tree problem. Ribiero.\ Solving the graphical Steiner tree problem using genetic algorithms". DIMACS Series in Discrete Mathematics and Theoretical Computer Science 43 (1999). Steiner-Probleme in Graphen. Doctorate Dissertation. Duin and S. and M. Frankfurt (1990).A. \E cient path and vertex exchange in Steiner tree algorithms". \OR-Library: Distributing test problems by electronic mail". 23] Message Passing Interface Forum. Tabu Search. 18] L. Minoux. 7] C. M. \Tabu search and adaptive memory programing . 190{206.G. Smith. Souza.S. simulated annealing and the Steiner problem in graphs". Thatcher. to appear.C.W.). 14] F. 91{107.T. Koch and A. 31] S.C. 1972.G. \Une heuristique pour le probleme de l'arbre de Steiner".-A. D.A. 185{212.J. Pardalos. Glover. in Metaheuristiques et outils nouveaux en Recherche Opeationnelle (J. Lecture Notes in Computer Science 1457 (1998). 285{297. Resende. 4] E. and C.

Combinatorial Optimization: Theory and Practice 1 (1997) 69{94. and F. Chiu. Telecommunication Systems 6 (1996) 117{125. S. 34] J. and F. Glover. Xu. \Probabilistic tabu search for telecommunications network design".17 33] J. Glover. Chiu.Y. \Using tabu search to solve the Steiner tree-star problem in telecommunications network design".Y. Xu. S. .

Sign up to vote on this title
UsefulNot useful