EAs for Combinatorial Optimization Problems BLG 602E.

Slides:



Advertisements
Similar presentations
1 Genetic Algorithms Contents 1. Basic Concepts 2. Algorithm 3. Practical considerations.
Advertisements

CS6800 Advanced Theory of Computation
1 Transportation problem The transportation problem seeks the determination of a minimum cost transportation plan for a single commodity from a number.
Genetic Algorithms Contents 1. Basic Concepts 2. Algorithm
Biologically Inspired Computing: Evolutionary Algorithms: Encodings, Operators and Related Issues: Timetables and Groups This is a lecture seven of `Biologically.
Nyhoff, ADTs, Data Structures and Problem Solving with C++, Second Edition, © 2005 Pearson Education, Inc. All rights reserved Graphs.
Evolutionary Computational Intelligence
Math443/543 Mathematical Modeling and Optimization
Evolution Programs for Various Discrete Problems 報告者:王 敬 育.
MAE 552 – Heuristic Optimization Lecture 26 April 1, 2002 Topic:Branch and Bound.
Imagine that I am in a good mood Imagine that I am going to give you some money ! In particular I am going to give you z dollars, after you tell me the.
Genetic Algorithms Nehaya Tayseer 1.Introduction What is a Genetic algorithm? A search technique used in computer science to find approximate solutions.
Backtracking.
Ch. 11: Optimization and Search Stephen Marsland, Machine Learning: An Algorithmic Perspective. CRC 2009 some slides from Stephen Marsland, some images.
Ant Colony Optimization: an introduction
Metaheuristics The idea: search the solution space directly. No math models, only a set of algorithmic steps, iterative method. Find a feasible solution.
Christoph F. Eick: Applying EC to TSP(n) Example: Applying EC to the TSP Problem  Given: n cities including the cost of getting from on city to the other.
Lecture: 5 Optimization Methods & Heuristic Strategies Ajmal Muhammad, Robert Forchheimer Information Coding Group ISY Department.
Genetic Algorithm.
Genetic Algorithms and Ant Colony Optimisation
Computer Implementation of Genetic Algorithm
Genetic Operators for TSP Chapter 8 in Michalewicz and Fogel, How to Solve It: Modern Heuristics, Springer, 2000.
1 1 1-to-Many Distribution Vehicle Routing John H. Vande Vate Spring, 2005.
SOFT COMPUTING (Optimization Techniques using GA) Dr. N.Uma Maheswari Professor/CSE PSNA CET.
1 Local search and optimization Local search= use single current state and move to neighboring states. Advantages: –Use very little memory –Find often.
Zorica Stanimirović Faculty of Mathematics, University of Belgrade
Researchers: Preet Bola Mike Earnest Kevin Varela-O’Hara Han Zou Advisor: Walter Rusin Data Storage Networks.
More on Heuristics Genetic Algorithms (GA) Terminology Chromosome –candidate solution - {x 1, x 2,...., x n } Gene –variable - x j Allele –numerical.
Introduction to GAs: Genetic Algorithms How to apply GAs to SNA? Thank you for all pictures and information referred.
1 Combinatorial Problem. 2 Graph Partition Undirected graph G=(V,E) V=V1  V2, V1  V2=  minimize the number of edges connect V1 and V2.
Crossovers and Mutation Richard P. Simpson. Genotype vs. Phenotype The genotype of a chromosome is just the basic data structure (it bits in a binary.
Exact and heuristics algorithms
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
Evolution Programs (insert catchy subtitle here).
1 Genetic Algorithms and Ant Colony Optimisation.
Genetic Algorithms Przemyslaw Pawluk CSE 6111 Advanced Algorithm Design and Analysis
Introduction to Genetic Algorithms. Genetic Algorithms We’ve covered enough material that we can write programs that use genetic algorithms! –More advanced.
Edge Assembly Crossover
Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman.
D Nagesh Kumar, IIScOptimization Methods: M8L5 1 Advanced Topics in Optimization Evolutionary Algorithms for Optimization and Search.
Chapter 5. Advanced Search Fall 2011 Comp3710 Artificial Intelligence Computing Science Thompson Rivers University.
GENETIC ALGORITHMS Tanmay, Abhijit, Ameya, Saurabh.
Artificial Intelligence Search Methodologies Dr Rong Qu School of Computer Science University of Nottingham Nottingham, NG8 1BB, UK
1 Contents 1. Basic Concepts 2. Algorithm 3. Practical considerations Genetic Algorithm (GA)
Management Science 461 Lecture 7 – Routing (TSP) October 28, 2008.
1 Combinatorial Problem. 2 Graph Partition Undirected graph G=(V,E) V=V1  V2, V1  V2=  minimize the number of edges connect V1 and V2.
Genetic Algorithms. Solution Search in Problem Space.
Genetic Algorithms And other approaches for similar applications Optimization Techniques.
1 Genetic Algorithms Contents 1. Basic Concepts 2. Algorithm 3. Practical considerations.
School of Computer Science & Engineering
Example: Applying EC to the TSP Problem
Genetic Algorithms Permutation crossovers
Paper Report in ECCO group
Subject Name: Operation Research Subject Code: 10CS661 Prepared By:Mrs
Comparing Genetic Algorithm and Guided Local Search Methods
Genetic Algorithms CPSC 212 Spring 2004.
1.3 Modeling with exponentially many constr.
metaheuristic methods and their applications
Example: Applying EC to the TSP Problem
Integer Programming (정수계획법)
Introduction to Operators
Example: Applying EC to the TSP Problem
Metaheuristic methods and their applications. Optimization Problems Strategies for Solving NP-hard Optimization Problems What is a Metaheuristic Method?
Multi-Objective Optimization
Genetic Algorithms Chapter 3.
1.3 Modeling with exponentially many constr.
Integer Programming (정수계획법)
Biologically Inspired Computing: Operators for Evolutionary Algorithms
Population Based Metaheuristics
Vehicle Routing John H. Vande Vate Fall,
Presentation transcript:

EAs for Combinatorial Optimization Problems BLG 602E

Combinatorial Optimization Problems optimization problems with discrete- valued variables –usually integer-valued example problems –MKP, TSP, graph partitioning, network flow, shortest path problems, matching, graph coloring,.... –crew scheduling, vehicle routing, facility layout, packing, pick-up and delivery,...

Combinatorial Optimization Methods classical methods –exhaustive –guarantees solution –e.g. linear programming, integer linear programming, branch-and- bound,...

Combinatorial Optimization Methods heuristic instance-based –given one / som solution candidates, look for better ones –e.g. simulated annealing, evolutionary algorithms, tabu search,...

Combinatorial Optimization Methods heuristic model-based –doing search based on distributions / landscapes –e.g. PBIL, EDA, ant systems,...

EA Operators for Combinatorics in most cases, aim is to find a permutation usually special operators needed e.g. TSP: permutation = order of visiting nodes (order important) e.g. QAP: permutation = assignment of resources to tasks (position important)s

Travelling Salesman Problem (TSP) Problem: A salesman must visit every city in his territory exactly once and return to his starting city. Given the cost of travel between all cities, how should he plan his itinerary to minimize the total cost of his tour?

Travelling Salesman Problem (TSP) search space: set of permutations of n cities –size is n! NP-complete many heuristics developed has many applications

Representations and Operators binary representation and classical cross-over and mutation operators not suitable –cause illegal tours to form not all cities visited undefined city codes cities visited more than once loops formed within the tour –needs repair algorithms

Representations and Operators Example: 5 cities  3 bits per city individual 1: 0| individual 2: 1| after cross over: individual 1: individual 2:

Representations and Operators other representations: –vector representations adjacency representation ordinal representation path representation –matrix representations require special cross-over and mutation operators

Adjacency Representation tour listed as a list of n cities city j is listed in position i if and only if the tour leads from city i to j. some may represent illegal tours repair algorithms may be necessary does not support classical cross-over operators Example 1: ( )  Example 2: ( ) 

Adjacency Representation three cross-over operators defined: –alternating edges cross-over –subtour chunks cross-over –heuristic cross-over

Adjacency Representation alternating edges cross-over –builds an offspring by: chooses (at random) an edge from the first parent selects an appropriate edge from second parent if the new edge (from one of the parents) causes a cycle, a random edge that does not introduce a cycle is selected repeated until tour completed

Adjacency Representation ( alternating edges cross-over cntd. ) Example: from the two parents given, a possible offspring can be as in o parent 1: ( ) parent 2: ( )  o 1 :( ) Note: (7,6) was introduced randomly instead of (7,8)

Ordinal Representation a tour: list of n cities ith element of list: number in range 1 to n-i+1 C: ordered list of cities serving as reference point tour obtained using chromosome and reference list classical cross-over can be used Example: reference list: C: ( ) chromosome (list of references) l: ( ) represents the tour

Ordinal Representation classical cross-over can be used Example: given C: ( ) p1: ( | ) p2: ( | ) corresponding to the tours and gives as offspring ( ) and ( ) corresponding to and

Path Representation the most natural representation Example: ( ) represents the path three cross-overs –partially mapped (PMX) –order (OX) –cycle (CX)

PMX builds offspring by –choose a subsequence of a tour from one parent choose two random cut points to serve as swapping boundaries swap segments between cut points –preserve the order and position of as many cities as possible from other parent

PMX Example: p1: (1 2 3 | | 8 9) p2: (4 5 2 | | 9 3) step 1: swap segments o1: (x x x | | x x) o2: (x x x | | x x) this also defines mappings: 1 4, 85, 76, 67 step 2: fill in cities from other parents if no conflict o1: (x 2 3 | | x 9) o2: (x x 2 | | 9 3) step 3: use mappings for conflicted positions o1: (4 2 3 | | 5 9) o2: (1 8 2 | | 9 3)

More Cross-Over Operators class of heuristic operators emphasizing edges rather than cities –randomly select a city to be the current city c of offspring –select edges (two from each parent) incident to current city c –define probability distribution over selected edges based on their cost (probability for an edge to a previously visited city is 0)

More Cross-Over Operators –select an edge. if at least one edge has non-zero probability, selection based on above random distribution, else selection is random (from unvisited cities) –city on the other end of selected edge becomes current city –repeat until tour completed tests report only 60% of edges come from parents, 40% are random!

Edge Recombination Cross-Over (ER) transfers more than 95% from parents to the single offspring for tour ( ) the edges are (3,1) (1,2) (2,8) (8,7) (4,6) (9,5) (5,3) general idea is that an offspring should exclusively be built from edges present in both parents

ER Example: p1: ( ) p2: ( ) edge list: city 1: edges to city 2: edges to city 3: edges to city 4: edges to city 5: edges to city 6: edges to city 7: edges to 6 8 city 8: edges to city 9: edges to select initial city from one parent assume city 1 (connected to 9 2 4) choose one with less connections (2 or 4) assume city 4 cities 3 and 5 are candidates 5 selected (less edges) o1: (1 4 5 x x x x x x) continue with procedure o1: ( ) Note: all edges from two parents (more modifications exist in literature)

Mutation Operators displacement mutation Example: ( ) (3 4 5) selected and inserted after 7 new tour: ( ) exchange (swap) mutation Example: ( ) 3rd and 5th selected randomly new tour becomes ( ) insertion mutation Example: ( ) 4 is selected randomly and placed after 7 new tour becomes ( )

Mutation Operators simple inversion mutation Example: (1 2 3 | | 8 9) new tour becomes ( ) inversion mutation Example: ( ) (3 4 5) selected and inserted after 7 new tour becomes ( ) scramble mutation Example: ( ) ( ) selected new tour may become ( )

Hybrids EA combined with local search –local search costly permutation based representation may not always be best –e.g. weight-codings