A Parallel Architecture for the Generalized Traveling Salesman Problem

26
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 1

description

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 - PowerPoint PPT Presentation

Transcript of A Parallel Architecture for the Generalized Traveling Salesman Problem

Page 1: A Parallel Architecture for the Generalized Traveling Salesman Problem

A Parallel Architecture for the Generalized Traveling Salesman Problem

Max ScharrenbroichAMSC 663 Mid-Year Progress Report

Advisor: Dr. Bruce L. GoldenR. H. Smith School of Business

1

Page 2: A Parallel Architecture for the Generalized Traveling Salesman Problem

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

2Review >

Page 3: A Parallel Architecture for the Generalized Traveling Salesman Problem

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…

3

Page 4: A Parallel Architecture for the Generalized Traveling Salesman Problem

GTSP Example

• Start with a set of nodes or locations to visit.

4

Page 5: A Parallel Architecture for the Generalized Traveling Salesman Problem

GTSP Example (continued)

• Partition the nodes into clusters.

1

2

3

4

5

6

5

Page 6: A Parallel Architecture for the Generalized Traveling Salesman Problem

GTSP Example (continued)

• Find the minimum tour visiting each cluster.

1

2

3

4

5

6

6Applications >

Page 7: A Parallel Architecture for the Generalized Traveling Salesman Problem

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.

7Formulation and Algorithms >

Page 8: A Parallel Architecture for the Generalized Traveling Salesman Problem

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).

8Review of Project Objectives>

Page 9: A Parallel Architecture for the Generalized Traveling Salesman Problem

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).

9Overview >

Page 10: A Parallel Architecture for the Generalized Traveling Salesman Problem

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

10Diagram of mrOX GA >

Page 11: A Parallel Architecture for the Generalized Traveling Salesman Problem

Review of mrOX GA

11

Pop 1

Merge

Start

End

Pop 2

Pop 7

Post-Merge

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.

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:1. Child solutions that are better than both parents.2. Random 5% of population (preserve diversity).

• 5% chance of mutation.• Terminate after no new best solution is found for 150 consecutive generations.

Select the best 50 individuals from the union of the isolated populations to continue on.

Crossover and Local Search >

Page 12: A Parallel Architecture for the Generalized Traveling Salesman Problem

Review of mrOX GA

12

rOXCrossover

2-opt 1-swap

New Best?

no

yes

Initialization Phase: rOX Crossover and Local Search Improvements

mrOXCrossover

2-opt 1-swap

Better than

Parents?

no

yes

until no improvements

Post-Merge Phase: mrOX Crossover and Local Search Improvements

mrOX Crossover >

Page 13: A Parallel Architecture for the Generalized Traveling Salesman Problem

Review of mrOX Crossover

13

1 2 3 4X Z YP1

1 43 2X Y ZP2

Permutations of Rotations and

Reversals

Combinations of Cluster Nodes at

End-Points

1 2 3 4

Randomly Generate Cut Points

1 43 2X Y ZP2’

1 2 3 4X Z YP1’ xx

1 2 3 4 Z b X Y d

Combined Tour

Example >

Page 14: A Parallel Architecture for the Generalized Traveling Salesman Problem

Example of mrOX Crossover

14

YX

Z

YX

Z

1

2 3

4x x

P1Y

XZ

1

2 3

4

P2

YdX

Zb

Check rotations and reversals with node combinations at the

end points.1

2 3

4

YdX

Zb

Child

Insert the best path.

Complexity >

Page 15: A Parallel Architecture for the Generalized Traveling Salesman Problem

Complexity of mrOX Crossover

15

1

0222 )),mod()1((),(2)(

m

ippp SminSinSN

),( 2pSin A function that returns the number of nodes in the cluster at index i in the ordered set Sp2.

)( 2pSN The number of comparisons required in a mrOX crossover operation.

2pSm The cardinality of the set Sp2.

),...,,( )1(102 mp cccS The ordered set of cluster/node pairs added from the 2nd parent.

2max2 2)( mnSN p maxnBounded by: where

is the maximum number of nodes in the clusters.

Local Search >

Page 16: A Parallel Architecture for the Generalized Traveling Salesman Problem

Local Search: 2-opt & 1-swap

16

YX

Z

12 3

4

2-optY

XZ

12 3

4

1 2 3 4X Y Z

YX

Z

12 3

4

1-swapY

XZ

12 3

4

1 2 3 4X Y Z

Mutation >

Page 17: A Parallel Architecture for the Generalized Traveling Salesman Problem

Mutation

17

YX

Z

12 3

4

(1) Randomly generate cut points.

12 3

4

(2) Isolate the path between the cut points.

12 3

4

(3) Reverse the order of the

nodes.YX

Z

12 3

4

(4) Reinsert the path.

Overview >

Page 18: A Parallel Architecture for the Generalized Traveling Salesman Problem

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

18Low Level Parallelism >

Page 19: A Parallel Architecture for the Generalized Traveling Salesman Problem

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 .

19Type 3 Parallelism >

Page 20: A Parallel Architecture for the Generalized Traveling Salesman Problem

Type 3 Parallelism in the mrOX GA• Genetic algorithms are amenable to parallelism via

concurrent exploration.• Cooperation between processes can be implemented

to ensure diversity while maintaining intensification.

20

P1

P2

Pn

start

end

P1

P2

Pn…

P1

P2

Pn

start

end

P1

P2

Pn

P1

P2

Pn

T

Parallel Cooperation w/ Mesh >

Page 21: A Parallel Architecture for the Generalized Traveling Salesman Problem

Parallel Cooperation with Mesh Topology

21

• 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 >

Page 22: A Parallel Architecture for the Generalized Traveling Salesman Problem

Presentation Overview

• Background and Review• Review of mrOX GA• Parallelism in the mrOX GA• Status Summary and Future Work

22Status Summary >

Page 23: A Parallel Architecture for the Generalized Traveling Salesman Problem

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.

23Future Work >

Page 24: A Parallel Architecture for the Generalized Traveling Salesman Problem

Future Work

• Obtain a user account on the Deepthought cluster.

• Continue with design and coding.• Performance testing of parallel

implementation.

24End >

Page 25: A Parallel Architecture for the Generalized Traveling Salesman Problem

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.

25

Page 26: A Parallel Architecture for the Generalized Traveling Salesman Problem

Acknowledgements

Chris Groer, University of MarylandWilliam Mennell, University of MarylandJohn Silberholz, University of Maryland

26