370 likes | 548 Views
AIRO’2002 L’Aquila, September 10-13, 2002. A Parallel GRASP with Path-Relinking Heuristic for the 2-Path Network Design Problem. Celso C. RIBEIRO Isabel ROSSETI Catholic University of Rio de Janeiro, Brazil. Summary. Problem formulation
E N D
AIRO’2002 L’Aquila, September 10-13, 2002 A Parallel GRASP with Path-Relinking Heuristic for the 2-Path Network Design Problem Celso C. RIBEIRO Isabel ROSSETI Catholic University of Rio de Janeiro, Brazil Parallel GRASP with PR for the 2-path network design problem
Summary • Problem formulation • GRASP with path-relinking heuristic • Construction phase • Local search phase • Path-relinking • Parallel implementation • Independent strategy • Cooperative strategy • Computational results • Concluding remarks Parallel GRASP with PR 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 with PR 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 with PR 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 with PR 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 with PR 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 with PR 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 with PR 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 the neighborhood of solutions initial solution Parallel GRASP with PR 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 selected: guiding solution initial solution Parallel GRASP with PR 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 with PR 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 with PR 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 with PR 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 with PR for the 2-path network design problem
Parallel GRASP with PR for the 2-path network design problem
Parallel implementation • Main interest of parallel implementations of metaheuristics: robustnessCung, Martins, Ribeiro & Roucairol(2001) • Multiple-walk independent-thread strategy: • p processors available • Iterations evenly distributed over the p processors • Each processor keeps a copy of the algorithm and data • The processor acting as the master (data, seeds, iterations) also performs GRASP iterations • Each processor performs Max_Iterations/p iterations Parallel GRASP with PR for the 2-path network design problem
Parallel implementation: independent seed(1) seed(2) seed(3) seed(4) seed(p-1) Elite Elite Elite Elite Elite 3 1 2 4 p-1 Best solution is sent to the master Elite p seed(p) Parallel GRASP with PR for the 2-path network design problem
Parallel implementation • Multiple-walk cooperative-thread strategy: • p processors available • Iterations evenly distributed over p-1 processors • Each processor keeps a copy of the algorithm and data • One processor acts as the master (data, seeds, iterations) and controls the pool of elite solutions • Each slave processor performs Max_Iterations/(p-1) iterations Parallel GRASP with PR for the 2-path network design problem
Parallel implementation: cooperative Master Elite solutions are stored in a centralized pool Elite 1 p 2 3 Slave Slave Slave Parallel GRASP with PR 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: • Larger instances solved with the GRASP heuristic: |V|= 400, |E|= 79800, |D|= 4000(previously: |V|= 120, |E|= 7140, |D|= 60) Parallel GRASP with PR 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 with PR 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 PRT: elite solutionS: local search • Other strategies: • Truncated path-relinking • Do not apply PR at every iteration (frequency) Parallel GRASP with PR 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 with PR for the 2-path network design problem
Variants of GRASP with path-relinking Each variant: 200 runs for one instance of 2PNDP Parallel GRASP with PR for the 2-path network design problem
T S Variants of GRASP with path-relinking • More recently: • G+PR(m): mixed back and forward strategyT: elite solutionS: local search • Path-relinking with local search Parallel GRASP with PR for the 2-path network design problem
Variants of GRASP with path-relinking Each variant: 200 runs for one instance of 2PNDP Probability Time (seconds) Parallel GRASP with PR 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 • Strategies using the backwards component are systematically better Parallel GRASP with PR for the 2-path network design problem
Independent strategy: speedups • Linear speedups: |V|= 400, 3200 iterations, G+PR(BF) Parallel GRASP with PR for the 2-path network design problem
Cooperative vs. independent strategy Independent Cooperative • Solution quality • Same instance: 15 runs with different seeds, 3200 iterations • The pool is poorer when fewer GRASP iterations are performed Parallel GRASP with PR for the 2-path network design problem
Cooperative vs. independent strategy Parallel GRASP with PR for the 2-path network design problem
Cooperative vs. independent strategy • Select an instance and a target value. • For each strategy: • Perform 100 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 with PR for the 2-path network design problem
Probability Time to target value (seconds) Cooperative vs. independent strategy 2 processors Cooperative Independent Parallel GRASP with PR for the 2-path network design problem
Probability Time to target value (seconds) Cooperative vs. independent strategy 4 processors Cooperative Independent Parallel GRASP with PR for the 2-path network design problem
Probability Time to target value (seconds) Cooperative vs. independent strategy 8 processors Cooperative Independent Parallel GRASP with PR for the 2-path network design problem
Cooperative vs. independent strategy • Recall that when p processors are used: • All of them perform GRASP iterations in the independent strategy • Only p-1 processors perform GRASP iterations in the cooperative strategy • Cooperative strategy improves w.r.t. the independent strategy when the number of processors increases. • Cooperative strategy is already faster for p 4 processors. Parallel GRASP with PR 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. • Robust cooperative strategy is faster and better. Parallel GRASP with PR 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 Isabel Rosseti Parallel GRASP with PR for the 2-path network design problem