250 likes | 267 Views
4 èmes Journées de la ROADEF Paris, February 20-22, 2002. A Parallel GRASP Heuristic for the 2-Path Network Design Problem. Celso C. RIBEIRO Isabel ROSSETI Catholic University of Rio de Janeiro
E N D
4èmes Journées de la ROADEF Paris, February 20-22, 2002 A Parallel GRASP Heuristic for the 2-Path Network Design Problem Celso C. RIBEIRO Isabel ROSSETI Catholic University of Rio de Janeiro Brazil Metro Corvisart, Paris 13ème Parallel GRASP for the 2-path network design problem
Summary • Problem formulation • GRASP with path-relinking heuristic • Construction phase • Local search phase • Path-relinking • Parallel implementation • Computational results • Concluding remarks Parallel GRASP for the 2-path network design problem
2-path network design problem • Graph G = (V,E) V: node set E: edge set weights we associated with each edge e E • k-path between nodes s,t V: sequence of at most k edges connecting s and t • D: set of demands (origin-destination pairs) Parallel GRASP for the 2-path network design problem
2-path network design problem • 2-path network design problem (2PNDP): Find a minimum weighted subset of edges E’ E containing a 2-path in G between the extremities of every origin-destination pair in D • Applications: design of communication networks, in which paths with few edges are sought to enforce high reliability and small delays Parallel GRASP for the 2-path network design problem
2-path network design problem • Dahl & Johannessen (2000): • Decision version of 2PNDP is NP-complete. • Approximate algorithm • Exact cutting plane algorithm • Balakrishnan & Altinkemer (1992): • Integer programming formulation for kPNDP • See also LeBlanc, Chifflet & Mahey (1999). • Generalizations: k-hop minimum spanning tree, k-hop minimum Steiner tree Parallel GRASP for the 2-path network design problem
GRASP with path-relinking • GRASP: • Multistart metaheuristic: Feo & Resende (1989) • Path-relinking: • Intensification strategy: Glover (1996) • Repeat for Max_Iterations: • Construct a greedy randomized solution • Use local search to improve the constructed solution • Apply path-relinking to further improve the solution • Update the pool of elite solutions • Update the best solution found Parallel GRASP for the 2-path network design problem
GRASP with path-relinking • GRASP • Construction phase • Set the modified weights equal to the original weights. • Randomly select an origin-destination pair (a,b) D. • Compute a shortest 2-path between a and b using the modified weights. • Set to 0 the modified weights of the edges in this path. • Remove (a,b) from D. • If D is empty stop, otherwise go back to step 2. Parallel GRASP for the 2-path network design problem
GRASP with path-relinking • GRASP • Local search phase • Generate a circular random permutation of the pairs in D. • Select the next origin-destination pair (a,b) D. • Tentatively replace the shortest 2-path between a and b: • Weights of edges used by other 2-paths are temporarilly set to 0. • Compute a new shortest 2-path between a and b. • Update the current solution if it is improved by the new 2-path. • Restore all original edge weights. • If |D| paths have been investigated without improvement stop, otherwise go back to step 2. Parallel GRASP for the 2-path network design problem
GRASP with path-relinking • Path-relinking: introduced in the context of tabu search by Glover (1996) • Intensification strategy using set of elite solutions • Consists in exploring trajectories that connect high quality solutions. guiding solution path in neighborhood of solutions initial solution Parallel GRASP for the 2-path network design problem
GRASP with path-relinking • Path is generated by selecting moves that introduce in the initial solution attributes of the guiding solution. • At each step, all moves that incorporate attributes of the guiding solution are evaluated and the best move is taken: guiding solution Initial solution Parallel GRASP for the 2-path network design problem
GRASP with path-relinking Elite solutions x and y (x,y): symmetric difference between x and y while ( |(x,y)| > 0 ) { evaluate moves corresponding in(x,y)make best move update (x,y) } Parallel GRASP for the 2-path network design problem
GRASP with path-relinking • Maintain an elite set of solutions found during GRASP iterations. • After each GRASP iteration (construction and local search): • Select an elite solution at random: guiding solution. • Use GRASP solution as initial solution. • Perform path-relinking between these two solutions. Parallel GRASP for the 2-path network design problem
GRASP with path-relinking • Successful applications: • Prize-collecting Steiner tree problem: Canuto, Resende & Ribeiro (2001) • Minimum Steiner tree problem: Ribeiro, Uchoa & Werneck (2002) (e.g., best known results for open problems in series dv640 of the SteinLib) • Three-index assignment problem: Aiex et al. (2000) • Capacitated minimum spanning tree:Souza, Duhamel & Ribeiro (2002) (e.g., best known results for largest problems with 160 nodes) Parallel GRASP for the 2-path network design problem
GRASP with path-relinking • P is a set of elite solutions. • Each iteration of first |P| GRASP iterations adds one solution to P(if different from others). • After that: solution x is promoted to P if: • x is better than best solution in P. • x is not better than best solution in P, but is better than worst and is sufficiently different from all solutions in P. Parallel GRASP for the 2-path network design problem
Parallel implementation • Main interest of parallel implementations of metaheuristics: robustnessCung, Martins, Ribeiro & Roucairol(2001) • Parallelization strategy: • Multiple-walk independent-thread strategy • Iterations evenly distributed over p processors • Each processor keeps a copy of the algorithm and data • One processor acts as the master (data, seeds, iterations) • Each processor performs Max_Iterations/p iterations Parallel GRASP for the 2-path network design problem
Computational results • Parallel GRASP heuristic: • Implementation in C • MPI LAM 6.3.2 for communication • Linux cluster with 32 Pentium II-400 processors • Largest instances solved: • Larger instances solved with the GRASP heuristic: |V|= 400, |E|= 79800, |D|= 4000(previously: |V|= 120, |E|= 7140, |D|= 60) Parallel GRASP for the 2-path network design problem
Computational results • Effectiveness: • 100 small instances with 70 nodes generated as in Dahl and Johannessen (2000) for comparison purposes. • Statistical test t for unpaired observations • Parallel GRASP finds better solutions with 40% of confidence. Parallel GRASP for the 2-path network design problem
T S T S S T S T Variants of GRASP with path-relinking • Variants of GRASP with path-relinking: • GRASP: pure GRASP • G+PR(B): GRASP with backward PR • G+PR(F): GRASP with forward PR • G+PR(BF): GRASP with two-way PR • Other strategies: • Truncated path-relinking • Do not apply PR at every iteration (frequency) Parallel GRASP for the 2-path network design problem
Variants of GRASP with path-relinking • Select an instance and a target value. • For each variant of GRASP with path-relinking: • Perform 200 runs using different seeds. • Stop when a solution value at least as good as the target is found. • For each run, measure the time-to-target-value. • Plot the probabilities of finding a solution at least as good as the target value within some computation time. Parallel GRASP for the 2-path network design problem
Variants of GRASP with path-relinking Each variant: 200 runs for one instance of 2PNDP Parallel GRASP for the 2-path network design problem
Variants of GRASP with path-relinking • Same computation time: probability of finding a solution at least as good as the target value increases from GRASP G+PR(F) G+PR(B) G+PR(BF) • P(h,t) = probability that variant h finds a solution as good as the target value in time no greater than t • P(GRASP,10s) = 2% P(G+PR(F),10s) = 56%P(G+PR(B),10s) = 75% P(G+PR(BF),10s) = 84% • Effectiveness of path-relinking to improve and speedup the pure GRASP Parallel GRASP for the 2-path network design problem
Speedups • Linear speedups: |V|= 400, 3200 iterations Parallel GRASP for the 2-path network design problem
Concluding remarks • New heuristic for the 2-path network design problem. • Effectiveness of the new heuristic: • Larger problems solved. • New heuristic finds better solutions. • Domination is stronger for harder or larger instances. • Path-relinking adds memory and intensification mechanisms to GRASP, systematically contributing to improve solution quality (some implementation strategies appear to be more effective than others). • Linear speedups with the parallel implementation. Parallel GRASP for the 2-path network design problem
Slides and publications • Slides of this talk can be downloaded from: http://www.inf.puc-rio/~celso/talks • Paper about the parallel GRASP heuristic for the 2-path network design problem available at: http://www.inf.puc-rio.br/~celso/publicacoes (after March 15, 2002) Isabel Rosseti Parallel GRASP for the 2-path network design problem