Tabu Search for Generalized Minimum Spanning ... - Semantic Scholar

1 downloads 0 Views 130KB Size Report
Tabu Search for Generalized Minimum Spanning. Tree Problem. Zhenyu Wang1, Chan Hou Che2, and Andrew Lim1,2. 1. School of Computer Science & ...
Tabu Search for Generalized Minimum Spanning Tree Problem Zhenyu Wang1 , Chan Hou Che2 , and Andrew Lim1,2 1

School of Computer Science & Engineering South China University of Technology, Guang Dong, P.R. China 2 Dept of Industrial Engineering and Logistics Management Hong Kong Univ of Science and Technology, Clear Water Bay, Kowloon, Hong Kong [email protected], [email protected], [email protected]

Abstract. The Generalized Minimum Spanning Tree (GMST) problem requires spanning exactly one node from every cluster in an undirected graph. GMST problems are encountered in telecommunications network planning. A Tabu Search (TS) for the GMST problem is presented in this article. In our computational tests on 194 TSPLIB instances, TS found 152 optimal solutions. For those 42 unsolved instances, our algorithm has improved some previously best known solutions. Lower bounds of some unknown problems are improved by our heuristic relaxation algorithm.

1

Introduction

The Generalized Minimum Spanning Tree (GMST) problem is defined as follows: Given an undirected graph G = (V, E), where V is the node set partitioned into clusters Vk ,1 ≤ k ≤ m, Vi ∩ Vj = φ(i = j) and E = {(i, j)|i ∈ Vk , j ∈ Vl , k = l} is the Edge set, we need to find a minimum spanning tree including exactly one node from each cluster. The GMST problem is in telecommunications where local area networks (LAN) must be connected with each other [1]. The GMST problem is NP-hard as proved by Myung et al[1]. Feremans et al.[2] described eight formulations for the GMST problem. In Golden et al.[5], a local search and a Genetic Algorithm (GA) were developed to provide solutions for instances including up to 226 nodes. Pop et al. [8] proposed a relaxation model for GMST with up to 240 nodes. Another version of GMST which was required to span at least one node from each node cluster was studied by Dror et al.[4] and Feremans et al.[3]. Haouar et al.[9] proposed two stochastic heuristics and a Lagrangian based lower bound for this variant GMST problem. This paper proposes a Tabu Search (TS) for the GMST problem while we will implement the GA proposed by Golden et al.[5]. The computation results show that TS is more effective than the GA. In addition, we will develop a relaxation algorithm to estimate the lower bound (LB). The result is promising, in which the relaxation is able to find a better LB than previous results. The remainder of this paper is organized as follows. In Section 2, we introduce a Tabu Search. Then we describe a lower bounding heuristic method in Section 3. Q. Yang and G. Webb (Eds.): PRICAI 2006, LNAI 4099, pp. 918–922, 2006. c Springer-Verlag Berlin Heidelberg 2006 

Tabu Search for Generalized Minimum Spanning Tree Problem

919

The computation result is reported in Section 4 while our conclusions follow in Section 5.

2

Description of the Heuristic

The TS algorithm is implemented by three phases, Basic Tabu Search (BTS) phase, intensification phase and diversification phase. Algorithm 1 describes the BTS in pseudocode. The procedure will randomly generate a feasible solution S = (v1 , v2 , ...vm ), vi ∈ Vi , as initial solution. Then we will select a cluster Ri and replace all the nodes in selected cluster Ri to generate new solutions. Our heuristic approach uses a tabu queue list with fixed length l, which records the cluster visited by recent iterations. The algorithm will stop until the number of iterations in which the search progresses without any improvement is greater kmax .

Result: Solution S = (v1 , v2 , ...vm ) Data: G is the Graph Create initial feasible solution S; repeat Randomly choose Cluster Ri ; / T abu then if Ri ∈ foreach node v from ClusterRi do //vi represent ClusterRi in S ; S  ← S − vi + v ; //M ST (S) is the function that calculates the cost of solution S. if M ST (S  ) < M ST (S) then S ← S  ; end add Ri in the Tabu ; end until no improvement after kmax ; Algorithm 1. Basic Tabu Search

When designing the algorithm, we found some nodes always appeared in the local optimal solution. These nodes are more likely to appear in the global optimal solution than others. Therefore, we intend to develop a new searching space which is generated by a list of local optimal solutions; so-called “elite candidate list”. We restarted the BTS fifty times and selected the best five solutions as elite candidates. An intensive search space G = (V  , E  ), Vi ⊆ Vi , E  = {(vi , vj )|vi ∈ Vk , vj ∈ Vl , k = l} is generated by grouping these five solutions. To avoid solutions being trapped in local optimal, we applied a threshold strategy to increase diversity of the intensive search space, i.e. we multiplied a random value with the number of differences between the subcluster and old cluster. If the result is higher than the threshold, the subcluster will be replaced by the old cluster. Finally, the overall algorihtm is described in Algorithm 2.

920

Z. Wang, C.H. Che, and A. Lim

Result: Solution S Data: G is the Graph while i < 50 do S  = BT S(G); Add S  in to Candidate List i ← i + 1; end EliteList ← T op5(CandidateList); while length of EliteList > 1 do //getIntensiveSpace is a function to get a new search space G ← getIntensiveSpace(EliteList) ; S  ← BT S(G ) ; if M ST (S  ) < M ST (S) then add S  into EliteList; Remove the largest one in elite list ; end Algorithm 2. Overall Tabu Search Algorithm

3

Lower Bound Study

We will present a relaxation approach to generate the relaxation instance of the GMST problem. Step 1. Generate the set of elite candidates T = {t1 , t2 , ...tk } using the BTS described in Section 2.1. Set tj = {(v1 , v2 , ..., vm )|vi ∈ Vi } as a feasible solution. Therefore, subgraph G = (V  , E  ) mentioned in Section 2.2 can be obtained. Step 2. Generate a set V  = V − V  and subset of each cluster Vk = Vk − Vk . Step 3. The graph G = (V, E) is divided into two different subgraphs, elite and non-elite graphs. Choosing one of the subgraphs, we transfer each clusters in this subgraph into a node. The cost of an edge is as follows: ⎧ i, j ∈ / V  ⎨ eij i∈ / V  , j ∈ V  e = min {eij |j ∈ V (nj )} ⎩ min {eij |i ∈ V (ni ), j ∈ V (nj )} i, j ∈ V  After transformation, we obtain the relaxation of the graph G.

4

Computational Study

TS and GA were coded in Java. All tests were run on a Dual-core Xeon 3GHz Server with 2GB of RAM. The set of instances in our experiment is a subset of the instances described in Fischetti et al. [6]. This subset includes the TSP instances from TSPLIB 2.1(Reinelt[7]) having 48 ≤ v ≤ 318 where the instances with 48 to 226 nodes are identical to those in Feremans et al. [2] and Golden et al. [5]. We also considered geographical problems in [2] and [5]. Fischetti et al.[6] provided two procedures to generate node clusters, center clustering and grid clustering. For grid clustering, there is a parameter μ defined by the user. We set kmax = 50 and length of tabu list = 0.12|V |. The threshold was set to be 1.5. We

Tabu Search for Generalized Minimum Spanning Tree Problem

921

Table 1. Computational Result for TS and GA on TSPLIB Instance where the optimal solution is unknown Problem name TSPLIB d198 gr202 ts225 pr226 gr229 gil262 pr264 pr299 lin318 TSPLIB d198 gr202 ts225 pr226 gr229 gil262 pr264 pr299 lin318 TSPLIB d198 gr202 ts225 pr226 gr229 gil262 pr264 pr299 lin318 TSPLIB d198 gr202 ts225 pr226 gr229 gil262 pr264 pr299 lin318 TSPLIB d198 gr202 ts225 gr229 gil262 pr264 pr299 lin318

K |E| instances, 40 18841 41 19532 45 24650 46 24626 46 25036 53 33507 53 34028 60 43786 64 49363 instances, 67 19101 68 19826 75 24900 84 25118 81 25584 95 33845 101 34357 102 44114 108 49821 instances, 40 18772 41 19303 45 24726 50 24711 47 25129 63 33643 55 34016 69 43893 64 49320 instances, 32 18372 31 18872 35 24544 33 24355 34 24595 49 33487 43 33481 47 43463 49 49106 instances, 25 18149 21 17904 25 24300 23 23761 36 33208 27 32814 35 43054 36 48664

Previous TS LB/UB(%) best Soln CPU(s) center clustering 123 94.12 7044 7044 242 84 94.63 243 94 99.78 62315 62268 55515 55515 103 100.0∗ 787 101 90.22 – – 942 230 78.66∗ – 21886 267 89.02∗ – 20316 307 71.09∗ – 18501 350 84.6∗ grid clustering µ = 3 8283 8283 312 89.05∗ 293 293 158 90.44∗ 79019 79019 301 98.75∗ 62527 62527 207 87.22∗ – 935 262 89.3∗ – 1318 408 78.53∗ 29208 367 – – 23141 753 – – 24152 819 – – grid clustering µ = 5 94 91.07 7098 7098 232 232 93 90.52∗ 105 92.38 60659 60639 117 98.38 56721 56721 713 146 90.04 – – 1018 244 72.4∗ 21365 141 91.53 – – 18614 506 65.95∗ – 17696 304 78.13∗ grid clustering µ = 7 6501 6501 56 88.72∗ 203 45 91.13 203 53 98.95 50813 50813 44 100.0 48249 48249 626 55 84.66 – – 829 122 73.7∗ 20455 74 85.76 – 15255 106 76.17 – – 14931 114 79.63∗ grid clustering µ = 10 34 91.32 6185 6185 177 27 93.79 177 31 99.9 40339 40339 515 31 87.96 – – 655 73 73.44∗ 16554 64 97.46 – 11640 94 74.91 – 10139 136 76.72 –

GA Soln CPU(s) 7053 242 62504 55515 788 966 22028 20725 18788

149 118 165 171 171 259 258 392 437

8287 293 79408 62527 935 1329 29239 23743 24380

261 227 317 366 369 584 594 811 902

7098 232 60886 56721 714 1047 21513 19330 17879

134 111 158 191 175 334 258 475 429

6501 203 50889 48249 627 843 20461 15521 15191

88 70 109 101 95 226 183 258 282

6185 177 40339 515 679 16554 11781 10201

60 38 64 52 144 90 167 174

922

Z. Wang, C.H. Che, and A. Lim

first tested our relaxation procedure on 44 instances where the optimal solution is unknown. In our experiment, testing both types of relaxation with different lengths of lists (l = 5,10,20,30,40), we generated ten relaxation instances for each instance. In addition, we tested the instance without the relaxation procedure. We used the model described in Pop et al. [8] coding in CPLEX 9.0 in Java. The running time for each instance was 1 hour. In Table 1, the instances with asterisks mean the lower bound was improved. 19 out of 44 instances were found to have better lower bounds. In addition, 2 instances received the optimal solution. Therefore, the number of instances where the optimal solution is known increased to 152. We tested 194 instances in total. GA found 144 optimal solutions and TS found all optimal solutions. Table 1 shows the results for the instance where the optimal solution is unknown. TS improves the solution from 3 instances and obtains same solutions provided in [5] for all others instances.

5

Conclusions

In this paper, we provided a Tabu Search for the GMST problem. We also presented a relaxation procedure to estimate the lower bound for the GMST problem. Our result is noteworthy that we improved the lower bound from previous results. In addition, we solved the instances up to 318 nodes.

References 1. Myung, Y.S., C.H. Lee, D.W.Tcha. On the generialized minimum spanning tree problem. Networks 26 231–241, 1995. 2. Feremans, C. Generial Spanning Trees and Extensions. PhD thesis, Institut de Statistique et de Recherche Op´erationnelle, Universit´e Libre de Bruxelles, Bruxelles, Belgium, 2001. 3. Feremans, C., M.Labb´e, G.Laporte. The generalized minimum spanning tree problem: Polyhedral analysis and branch-and-cut-algorithm Networks 43 71-86, 2004. 4. Dror, M., M. Haouari, J. Chaouachi. Generialized spanning tree. Eur. J. Oper. Tes. 120 583-592, 2000. 5. Golden, B., S.Raghavan, D.Stanojevi´c. Heuristic Search for the Generalized Minimum Spanning Tree Problem. INFORMS J. Comput. 17(3) 290-304, 2005 6. Fischetti, M.,J.J. Salazar-Gonzalez, P. Toth. Symmetric generalized traveling salesman problem. Oper. Res. 45 378-394, 1997. 7. Reinelt, G. TSPLIB, A traveling salesman problem library. INFORMS J. Comput. 3 376-384, 1991. 8. Pop,P.C, W.Kern, G.Still, A new relaxation method for the generalized minimum spanning tree problem. Eur.J.Oper.Res. 170 900-908, 2006. 9. Haouari, M. and Chaouachi, J.S. Upper and lower bounding strategies for the generalized minimum spanning tree problem. Eur.J.Oper.Res. 171 632-647, 2006.

Suggest Documents