260 likes | 403 Views
A Parallel Architecture for the Generalized Traveling Salesman Problem. Max Scharrenbroich AMSC 663 Mid-Year Progress Report Advisor: Dr. Bruce L. Golden R. H. Smith School of Business. Presentation Overview. Background and Review GTSP Review Applications
E N D
A Parallel Architecture for the Generalized Traveling Salesman Problem Max Scharrenbroich AMSC 663 Mid-Year Progress Report Advisor: Dr. Bruce L. Golden R. H. Smith School of Business
Presentation Overview • Background and Review • GTSP Review • Applications • Problem Formulation and Algorithms • Review of Project Objectives • Review of mrOX GA • Parallelism in the mrOX GA • Status Summary and Future Work Review >
Review of the GTSP • The Generalized Traveling Salesman Problem (GTSP): • Variation of the well-known traveling salesman problem. • A set of nodes is partitioned into a number of clusters. • Objective: Find a minimum-cost tour visiting exactly one node in each cluster. • Example on the following slides…
GTSP Example • Start with a set of nodes or locations to visit.
GTSP Example (continued) 2 • Partition the nodes into clusters. 3 6 1 4 5
GTSP Example (continued) 2 • Find the minimum tour visiting each cluster. 3 6 1 4 5 Applications >
Applications • The GTSP has many real-world applications in the field of routing: • Mailbox collection and stochastic vehicle routing. • Warehouse order picking with multiple stock locations. • Airport selection and routing for courier planes. Formulation and Algorithms >
Problem Formulation and Algorithms • The GTSP can be formulated as a 0-1 Integer Linear Program (ILP). • The GTSP is an NP-hard problem. • There are algorithms for solving the GTSP to optimality, but these algorithms eventually suffer from combinatorial explosion (>90 clusters). • There are several successful heuristic approaches to the GTSP. • In this project I will focus on the mrOX Genetic Algorithm (J. Silberholz and B.L. Golden, 2007). Review of Project Objectives>
Review of Project Objectives • Develop a generic software architecture and framework for parallelizing serial heuristics for combinatorial optimization. • Extend the framework to host the serial mrOX GA and the GTSP problem class. • Investigate the performance of the parallel implementation of the mrOX GA on large instances of the GTSP (> 90 clusters). Overview >
Presentation Overview • Background and Review • Review of mrOX GA • mrOX Crossover • Local Search: 2-opt and 1-swap • Mutation • Parallelism in the mrOX GA • Status Summary and Future Work Diagram of mrOX GA >
Review of mrOX GA Start Initialization Phase (Light-Weight): • Sequentially generates and evolves 7 isolated populations of 50 individuals each. • Only use the rOX for crossover. • Apply one cycle of 2-opt followed by 1-swap improvement heuristic only to new best solution. • 5% chance of mutation. • Terminate each population after no new best solution is found for 10 consecutive generations. Pop 1 Pop 2 … Pop 7 Select the best 50 individuals from the union of the isolated populations to continue on. Merge Post-Merge Phase: • Use the full mrOX for crossover. • Apply full cycles of 2-opt followed by 1-swap improvements until no improvements are found to: • Child solutions that are better than both parents. • Random 5% of population (preserve diversity). • 5% chance of mutation. • Terminate after no new best solution is found for 150 consecutive generations. Post-Merge End Crossover and Local Search >
Review of mrOX GA Initialization Phase: rOX Crossover and Local Search Improvements New Best? rOX Crossover no yes 2-opt 1-swap Post-Merge Phase: mrOX Crossover and Local Search Improvements Better than Parents? mrOX Crossover no yes 2-opt 1-swap until no improvements mrOX Crossover >
Review of mrOX Crossover Randomly Generate Cut Points Permutations of Rotations and Reversals Combinations of Cluster Nodes at End-Points P1 X Z 1 2 3 4 Y 1 2 3 4 X Y Z Z {a,b} X Y {c,d} P1’ X Z 1 2 3 4 Y Y Z X x x Z X Y Z a X Y c 1 2 3 4 Z a X Y d Z b X Y c Z Y X Z b X Y d X Y Z Y X Z X Z Y X Y Z P2’ 3 1 2 4 Combined Tour P2 3 X 1 2 Y 4 Z Z b X Y d Example >
Example of mrOX Crossover X X P2 Y Y Z Z P1 x x 1 4 1 4 2 3 2 3 X Y X Z Insert the best path. Yd Zb Check rotations and reversals with node combinations at the end points. X 1 4 Yd Zb 2 3 Child Complexity >
Complexity of mrOX Crossover The ordered set of cluster/node pairs added from the 2nd parent. The cardinality of the set Sp2. The number of comparisons required in a mrOX crossover operation. is the maximum number of nodes in the clusters. where A function that returns the number of nodes in the cluster at index i in the ordered set Sp2. Bounded by: Local Search >
Local Search: 2-opt & 1-swap X X Y Y Z Z 2-opt 1 4 1 4 2 3 2 3 X X X X Y Y Z 1 1 1 X 2 2 2 3 3 3 4 4 4 Z Y Z Y Y Z Z 1-swap 1 4 1 4 2 3 2 3 X Y 1 Z 2 3 4 Mutation >
Mutation X Y Z (1) Randomly generate cut points. 1 4 (2) Isolate the path between the cut points. 2 3 1 4 2 3 X Y Z (3) Reverse the order of the nodes. 1 4 (4) Reinsert the path. 2 3 1 4 2 3 Overview >
Presentation Overview • Background and Review • Review of mrOX GA • Parallelism in the mrOX GA • Low Level Parallelism • Concurrent Exploration • Cellular GA Inspired Parallel Cooperation • Status Summary and Future Work Low Level Parallelism >
Low-Level Parallelism in the mrOX GA • For rOX and mrOX computational loading can be estimated (slide 13) and therefore crossover of individuals could be load balanced over a number of processors. • The local search improvement phase (multiple cycles of 2-opt followed by 1-swap) in the post-merge phase is not deterministic and would be difficult to load balance. • While improving execution time, load balancing the crossover and local search would introduce inefficiencies. • Tuning the load balancing would be problem dependent and time consuming . Type 3 Parallelism >
Type 3 Parallelism in the mrOX GA start … • Genetic algorithms are amenable to parallelism via concurrent exploration. • Cooperation between processes can be implemented to ensure diversity while maintaining intensification. P1 P2 Pn start … P1 P2 Pn P1 P2 Pn T P1 P2 Pn end P1 P2 Pn end Parallel Cooperation w/ Mesh >
Parallel Cooperation with Mesh Topology • Inspired by cellular genetic algorithms (cGAs), where individuals in a population only interact with nearest neighbors. • Processes cooperate over a toroidal mesh topology. • Ensures diversity while maintaining intensification. Each process has four neighbors. Processes periodically exchange the best solutions with neighbors. High-quality solutions diffuse through the population. Overview >
Presentation Overview • Background and Review • Review of mrOX GA • Parallelism in the mrOX GA • Status Summary and Future Work Status Summary >
Status Summary • Investigated different ways of using parallelism in the mrOX GA. • Learned about cellular genetic algorithms (cGAs) as a motivation for parallel cooperation schemes. • Completed a preliminary software design and began coding. • Coded and ran an intermediate test application to validate mesh communication pattern. Future Work >
Future Work • Obtain a user account on the Deepthought cluster. • Continue with design and coding. • Performance testing of parallel implementation. End >
References • Crainic, T.G. and Toulouse, M. Parallel Strategies for Meta-Heuristics. Fleet Management and Logistics, 205-251. • L. Davis. Applying Adaptive Algorithms to Epistatic Domains. Proceeding of the International Joint Conference on Artificial Intelligence, 162-164, 1985. • M. Fischetti, J.J. Salazar-Gonzalez, P. Toth. A branch-and-cut algorithm for the symmetric generalized traveling salesman problem. Operations Research 45 (3): 378–394, 1997. • G. Laporte, A. Asef-Vaziri, C. Sriskandarajah. Some Applications of the Generalized Traveling Salesman Problem. Journal of the Operational Research Society 47: 1461-1467, 1996. • C.E. Noon. The generalized traveling salesman problem. Ph. D. Dissertation, University of Michigan, 1988. • C.E. Noon. A Lagrangian based approach for the asymmetric generalized traveling salesman problem. Operations Research 39 (4): 623-632, 1990. • J.P. Saksena. Mathematical model of scheduling clients through welfare agencies. CORS Journal 8: 185-200, 1970. • J. Silberholz and B.L. Golden. The Generalized Traveling Salesman Problem: A New Genetic Algorithm Approach. Operations Research/Computer Science Interfaces Series 37: 165-181, 2007. • L. Snyder and M. Daskin. A random-key genetic algorithm for the generalized traveling salesman problem. European Journal of Operational Research 17 (1): 38-53, 2006.
Acknowledgements Chris Groer, University of Maryland William Mennell, University of Maryland John Silberholz, University of Maryland