A Parallel Architecture for the Generalized Traveling Salesman Problem

Similar documents
A Parallel Architecture for the Generalized Travelling Salesman Problem: Project Proposal

A Parallel Architecture for the Generalized Travelling Salesman Problem: Mid Year Report

The Generalized Traveling Salesman Problem: A New Genetic Algorithm Approach

A Tabu Search Heuristic for the Generalized Traveling Salesman Problem

A Memetic Algorithm for the Generalized Traveling Salesman Problem

Comparison of Heuristics for the Colorful Traveling Salesman Problem

A Random-Key Genetic Algorithm for the Generalized Traveling Salesman Problem

A Steady-State Genetic Algorithm for Traveling Salesman Problem with Pickup and Delivery

Using Genetic Algorithms to solve the Minimum Labeling Spanning Tree Problem

Solving Traveling Salesman Problem Using Parallel Genetic. Algorithm and Simulated Annealing

Shared Crossover Method for Solving Traveling Salesman Problem

Fuzzy Inspired Hybrid Genetic Approach to Optimize Travelling Salesman Problem

Optimizing the Sailing Route for Fixed Groundfish Survey Stations

Khushboo Arora, Samiksha Agarwal, Rohit Tanwar

Escaping Local Optima: Genetic Algorithm

Metaheuristic Development Methodology. Fall 2009 Instructor: Dr. Masoud Yaghini

Combination of Genetic Algorithm with Dynamic Programming for Solving TSP

Optimal tree for Genetic Algorithms in the Traveling Salesman Problem (TSP).

Hybrid approach for solving TSP by using DPX Cross-over operator

Job Shop Scheduling Problem (JSSP) Genetic Algorithms Critical Block and DG distance Neighbourhood Search

ARTIFICIAL INTELLIGENCE (CSCU9YE ) LECTURE 5: EVOLUTIONARY ALGORITHMS

Using Genetic Algorithm with Triple Crossover to Solve Travelling Salesman Problem

GENETIC ALGORITHM with Hands-On exercise

Modified Order Crossover (OX) Operator

6 ROUTING PROBLEMS VEHICLE ROUTING PROBLEMS. Vehicle Routing Problem, VRP:

Parallel Genetic Algorithm to Solve Traveling Salesman Problem on MapReduce Framework using Hadoop Cluster

Comparison Study of Multiple Traveling Salesmen Problem using Genetic Algorithm

The study of comparisons of three crossover operators in genetic algorithm for solving single machine scheduling problem. Quan OuYang, Hongyun XU a*

Vladimir Dimitrijevic, Milan Milosavljevic, Milan Markovic. as: nd a minimum cost cycle which includes exactly one vertex from each

Solving the Railway Traveling Salesman Problem via a Transformation into the Classical Traveling Salesman Problem

Combining Two Local Searches with Crossover: An Efficient Hybrid Algorithm for the Traveling Salesman Problem

A Web-Based Evolutionary Algorithm Demonstration using the Traveling Salesman Problem

Machine Learning for Software Engineering

Introduction to Genetic Algorithms. Genetic Algorithms

Evolutionary Computation Algorithms for Cryptanalysis: A Study

Research Incubator: Combinatorial Optimization. Dr. Lixin Tao December 9, 2003

Reduce Total Distance and Time Using Genetic Algorithm in Traveling Salesman Problem

arxiv: v1 [cs.ai] 9 Oct 2013

A New Selection Operator - CSM in Genetic Algorithms for Solving the TSP

Parallel Programming to solve Traveling Salesman Problem. Team Parallax Jaydeep Untwal Sushil Mohite Harsh Sadhvani parallax.hpearth.

AN EFFICIENT COMPOSITE HEURISTIC FOR THE SYMMETRIC GENERALIZED TRAVELING SALESMAN PROBLEM

GA is the most popular population based heuristic algorithm since it was developed by Holland in 1975 [1]. This algorithm runs faster and requires les

Rich Vehicle Routing Problems Challenges and Prospects in Exploring the Power of Parallelism. Andreas Reinholz. 1 st COLLAB Workshop

Solving Travelling Salesman Problem and Mapping to Solve Robot Motion Planning through Genetic Algorithm Principle

Solving Traveling Salesman Problem for Large Spaces using Modified Meta- Optimization Genetic Algorithm

Genetic Algorithms. PHY 604: Computational Methods in Physics and Astrophysics II

An experimental evaluation of a parallel genetic algorithm using MPI

CHAPTER 5 ENERGY MANAGEMENT USING FUZZY GENETIC APPROACH IN WSN

BI-OBJECTIVE EVOLUTIONARY ALGORITHM FOR FLEXIBLE JOB-SHOP SCHEDULING PROBLEM. Minimizing Make Span and the Total Workload of Machines

A COMPARATIVE STUDY OF FIVE PARALLEL GENETIC ALGORITHMS USING THE TRAVELING SALESMAN PROBLEM

Solving ISP Problem by Using Genetic Algorithm

Solving the Travelling Salesman Problem in Parallel by Genetic Algorithm on Multicomputer Cluster

MINIMAL EDGE-ORDERED SPANNING TREES USING A SELF-ADAPTING GENETIC ALGORITHM WITH MULTIPLE GENOMIC REPRESENTATIONS

Some Basics on Tolerances. Gerold Jäger

Genetic Algorithms with Oracle for the Traveling Salesman Problem

Outline of the module

ISSN: (Online) Volume 3, Issue 5, May 2015 International Journal of Advance Research in Computer Science and Management Studies

Improved K-Means Algorithm for Capacitated Clustering Problem

A NEW HEURISTIC ALGORITHM FOR MULTIPLE TRAVELING SALESMAN PROBLEM

Using Genetic Algorithms to optimize ACS-TSP

Ph. D. Thesis. Design, Evaluation and Analysis of Combinatorial Optimization Heuristic Algorithms

ACCELERATING THE ANT COLONY OPTIMIZATION

Search Algorithms for Regression Test Suite Minimisation

A Hybrid Heuristic Approach for Solving the Generalized Traveling Salesman Problem

Parallel Computing in Combinatorial Optimization

METAHEURISTICS. Introduction. Introduction. Nature of metaheuristics. Local improvement procedure. Example: objective function

LEAST COST ROUTING ALGORITHM WITH THE STATE SPACE RELAXATION IN A CENTRALIZED NETWORK

Effective Tour Searching for Large TSP Instances. Gerold Jäger

Optimal tour along pubs in the UK

ABSTRACT I. INTRODUCTION. J Kanimozhi *, R Subramanian Department of Computer Science, Pondicherry University, Puducherry, Tamil Nadu, India

A Parallel Evolutionary Algorithm for Discovery of Decision Rules

Improved Genetic Algorithm to Solve Asymmetric Traveling Salesman Problem

Research Article Genetic Algorithm for Combinatorial Path Planning: The Subtour Problem

New Genetic Operators for Solving TSP: Application to Microarray Gene Ordering

Solving the Traveling Salesman Problem using Reinforced Ant Colony Optimization techniques

A HYBRID APPROACH IN GENETIC ALGORITHM: COEVOLUTION OF THREE VECTOR SOLUTION ENCODING. A CASE-STUDY

Overview. H. R. Alvarez A., Ph. D.

A Genetic Algorithm for the Two Machine Flow Shop Problem

Multiprocessor Scheduling Using Parallel Genetic Algorithm

Using a genetic algorithm for editing k-nearest neighbor classifiers

A Meta-heuristic Applied for a Topologic Pickup and Delivery Problem with Time Windows Constraints

A New Algorithm for Solving the Operation Assignment Problem in 3-Machine Robotic Cell Scheduling

Algorithms & Complexity

Suppose you have a problem You don t know how to solve it What can you do? Can you use a computer to somehow find a solution for you?

4/22/2014. Genetic Algorithms. Diwakar Yagyasen Department of Computer Science BBDNITM. Introduction

Non-deterministic Search techniques. Emma Hart

A LOCAL SEARCH GENETIC ALGORITHM FOR THE JOB SHOP SCHEDULING PROBLEM

Guidelines for the use of meta-heuristics in combinatorial optimization

a a b b a a a a b b b b

GENETIC ALGORITHM VERSUS PARTICLE SWARM OPTIMIZATION IN N-QUEEN PROBLEM

A Real Coded Genetic Algorithm for Data Partitioning and Scheduling in Networks with Arbitrary Processor Release Time

The Parallel Software Design Process. Parallel Software Design

AN OPTIMAL SOLUTION TO MULTIPLE TRAVELLING SALESPERSON PROBLEM USING MODIFIED GENETIC ALGORITHM

Hybridization EVOLUTIONARY COMPUTING. Reasons for Hybridization - 1. Naming. Reasons for Hybridization - 3. Reasons for Hybridization - 2

PROBLEM SOLVING AND SEARCH IN ARTIFICIAL INTELLIGENCE

Solving the Capacitated Vehicle Routing Problem with a Genetic Algorithm

Genetic Algorithms. Kang Zheng Karl Schober

March 19, Heuristics for Optimization. Outline. Problem formulation. Genetic algorithms

Computational Complexity CSC Professor: Tom Altman. Capacitated Problem

CHAPTER 2 CONVENTIONAL AND NON-CONVENTIONAL TECHNIQUES TO SOLVE ORPD PROBLEM

Transcription:

A Parallel Architecture for the Generalized Traveling Salesman Problem Max Scharrenbroich AMSC 663 Project Proposal Advisor: Dr. Bruce L. Golden R. H. Smith School of Business 1

Background and Introduction What is the Generalized Traveling Salesman Problem (GTSP)? Variation of the well-known traveling salesman problem. A set of nodes to be visited is partitioned into clusters. Objective: Find a minimum-cost tour visiting exactly one node in each cluster. Example on the following slides 2

GTSP Example Start with a set of nodes or locations to visit. 3

GTSP Example (continued) Partition the nodes into clusters. 2 6 3 1 4 5 4

GTSP Example (continued) Find the minimum tour visiting each cluster. 2 6 3 1 4 5 Applications > 5

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. Mathematical Formulation > 6

Mathematical Formulation The GTSP can be formulated as an Integer Linear Program (ILP). Graph: G(V, E),where Vis a set of vertices partitioned into mclusters {V 1, V 2, V m }and Eis a set of edges connecting the vertices. Distance Matrix: Cis a distance matrix defined on E, where c e is the weight of edge e. Decision Variables: x e and y v are 0-1 decision variables representing the solution edges and vertices respectively. Exact Algorithms > 7

Algorithms for the GTSP Like the TSP, the GTSP is NP-hard. There exist exact algorithms that rely on smart enumeration techniques: Brand-and-cut (B&C) algorithm (M. Fischetti, 1997) Provided exact solutions to reasonably sized GTSP problems (48 n 442 and 10 m 89 ). For problems with larger than 90 clusters the run time of the B&C algorithm began approaching one day. Heuristic Algorithms > 8

Algorithms for the GTSP (continued) Heuristic approaches to the GTSP: Generalized Nearest Neighbor Heuristic (C.E. Noon, 1988) Random-key Genetic Algorithm (L. Snyder and M. Daskin, 2006) mroxgenetic Algorithm (J. Silberholzand B.L. Golden, 2007)* Overview of GAs > 9

Overview of Genetic Algorithms (GA) Proposed in the 1970 s by Holland. Stochastic search technique commonly used to find approximate solutions to combinatorial optimization problems. Inspired by the process of natural selection and the theory of evolutionary biology. Simulate the evolution of a population of solutions. Components of a GA > 10

Overview of GAs (continued) Components of Genetic Algorithms: Selection Operator: Select the best solutions (chromosomes) for breeding. Crossover Operator: Combine the pairs of selected solutions in some way to produce new solutions. Mutation Operator: Randomly modify some solutions to preserve population diversity. Termination Criteria: Terminate after a number of iterations (or period of time). Terminate after a better solution is not found within a number of generations mroxgas > 11

Overview of mroxgenetic Algorithm First, what is mrox? The mroxis the crossover operator at the heart of the mroxga. Proposed by J. Silberholz and B.L. Golden (2007). Modified rotational ordered crossover operator. Modification of the TSP ordered crossover (OX) proposed by (Davis, 1985). Results in a more intelligent crossover than the OX. Example of OX > 12

Example of the GTSP OX Chromosomes are represented by path-lists. P1 [ 1 2, 3 5, 2 3, 4 8 ] Start building child chromosome with P1 sub-path Final OX chromosome P1 [ 1 2 3 5, 2 3 4 8 ] [ - 3 5, 2 3 -] [ - 3 5, 2 3 1 1 ] [4 7 3 5, 2 3 1 1 ] { - } { 1 } { 1, 4 } P2 [ 2 4 3 5, 4 7 1 1 ] P2 [ 2 4, 3 5, 4 7, 1 1 ] Add genetic material from P2 Randomly generate cut-points Inserted sub-path from P2 m+r+ox > 1 2 = (cluster) (node) 13

mrox Modify the inserted sub-path resulting from the OX operator and find the best one. rox rotational + OX: Creates rotations and reversals of the inserted sub-path. Example sub-tour: {1, 2, 3} Rotations: { {1, 2, 3} {2, 3, 1} {3, 1, 2} } Reversals: { {3, 2, 1} {1, 3, 2} {2, 1, 3} } mrox modified + rox: For each set of sub-paths generated in roxcreate combinations of each node in the clusters at the end-points. { 1 {A, B}, 3, 2 {D, E} }: {1 A, 3, 2 D } {1 A, 3, 2 E } {1 B, 3, 2 D } {1 B, 3, 2 E } The Algorithm > 14

The Serial mroxga The mroxga starts by first isolating a number of sub-populations for a several generations. Breeds new solutions using the mroxcrossover operator. Applies tour improvement heuristics like 2-opt and 1-swap on improved child solutions. Preserves diversity with a 5% chance of mutation. Terminates after the algorithm does not produce a better result in 150 generations. Why Parallelize? > 15

Why Parallelize? Speedup Provide higher quality solutions in less time. Increased Problem Size Utilize more resources to attack larger problem instances. Robustness Many serial heuristics require multiple input parameters that need to be tuned experimentally. Each process can use a different set of parameters to avoid manual tuning. Perform consistently on a range of problem instances. Cooperation Use cooperative mechanisms to guide the search to more promising regions of the search space. Cooperation Schemes > 16

Cooperation Schemes No Cooperation Provides a useful benchmark for testing other cooperation schemes. Solution Warehouse* Workers periodically send solution updates to a central repository. The repository synchronizes the workers to a set of the best solutions found so far. Inter-Worker Communication Cooperation is structured on a specific topology. Worker processes may only cooperate with their neighbors. Example: Ring Topology Classification > 17

Classification of Parallel Meta-heuristics Three classifications from Crainicand Toulouse (2003) Type 1: Low-Level Parallelism Attempts to speed up processing within an iteration of a heuristic method. Type 2: Partitioning of Solution Space Partitions the solution space into subsets to explore in parallel. Type 3: Concurrent Exploration* Multiple concurrent explorations of the solution space. Parallel Approach to GTSP > 18

Parallel Approach to the GTSP Run multiple instances of the mroxga in parallel. The proposed architecture supports a type 3 classification: multiple concurrent explorations of the solution space. Implement the solution warehouse method of cooperation to guide worker processes to more promising regions of the search space. Method of Approach > 19

Method of Approach 1. Develop a general parallel architecture for hosting sequential heuristic algorithms.* 2. Extend the framework provided by the architecture to host the mroxga and the GTSP problem class. 3. Implement the solution warehouse method of cooperation. Implementation > 20

Implementation Initial Development and Validation: Multi-processor PC running Linux O/S. Final Validation and Testing: UMD s DeepthoughtCluster, Linux O/S, up to 64 nodes with at least 2 processors. Language and Libraries: C/C++ Message Passing Interface (MPI) Libraries POSIX Threads Library Database > 21

Database Based on a subset of TSP instances from the wellknown TSPLib a library of TSP instances. Use existing code for partitioning the nodes into clusters using method in (M. Fischetti, 1997). Use a set of larger instances tested in (Silberholzand Golden, 2007). Number of nodes between 400 and 1084. Number of clusters between 80 and 200. The serial mrox is already fast on small problem instances. Don t have optimal results for larger instances but there are published results for tests of the mroxga and S&D GA on these instances. Validation > 22

Validation 1. Validate the parallel architecture by implementing a simple test algorithm with several test-cases. 2. Validate the parallel implementation of the mrox GA using a single worker process. 3. Validate the parallel implementation of the mroxga using more than one worker process. Testing > 23

Testing Test how the parallel implementation scales with the number of processors. Use results (i.e. solution costs) from runs of the serial mroxga as a stopping criterion for the parallel implementation. Measure the run times while using different numbers of processors. Test the efficacy of the cooperation scheme using the no-cooperation scheme as a benchmark. Time permitting, try a different cooperation scheme. References > 24

References Crainic, T.G. and Toulouse, M. Parallel Strategies for Meta-Heuristics. Fleet Management and Logistics, 205-251. L. Davis. Applying Adaptive Algorithms to EpistaticDomains. 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 Lagrangianbased 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. Silberholzand B.L. Golden. The Generalized Traveling Salesman Problem: A New Genetic Algorithm Approach. Operations Research/Computer Science Interfaces Series37: 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