Example: Applying EC to the TSP Problem

Slides:



Advertisements
Similar presentations
Population-based metaheuristics Nature-inspired Initialize a population A new population of solutions is generated Integrate the new population into the.
Advertisements

CS6800 Advanced Theory of Computation
Genetic Algorithms Contents 1. Basic Concepts 2. Algorithm
Evolutionary Computational Intelligence
Iterative Improvement Algorithms
EAs for Combinatorial Optimization Problems BLG 602E.
Artificial Intelligence Genetic Algorithms and Applications of Genetic Algorithms in Compilers Prasad A. Kulkarni.
Iterative Improvement Algorithms For some problems, path to solution is irrelevant: just want solution Start with initial state, and change it iteratively.
Coordinative Behavior in Evolutionary Multi-agent System by Genetic Algorithm Chuan-Kang Ting – Page: 1 International Graduate School of Dynamic Intelligent.
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.
Genetic Algorithms: A Tutorial
Genetic Algorithm.
Genetic Algorithms and Ant Colony Optimisation
Genetic Operators for TSP Chapter 8 in Michalewicz and Fogel, How to Solve It: Modern Heuristics, Springer, 2000.
SOFT COMPUTING (Optimization Techniques using GA) Dr. N.Uma Maheswari Professor/CSE PSNA CET.
Genetic algorithms Prof Kang Li
Ch.12 Machine Learning Genetic Algorithm Dr. Bernard Chen Ph.D. University of Central Arkansas Spring 2011.
Zorica Stanimirović Faculty of Mathematics, University of Belgrade
Christoph F. Eick: Applications of GAs Ideas for the Transportation Problem  Although the textbook’s initialization procedure has some flaws (which?),
Genetic Algorithms Genetic Algorithms – What are they? And how they are inspired from evolution. Operators and Definitions in Genetic Algorithms paradigm.
Computational Complexity Jang, HaYoung BioIntelligence Lab.
1 “Genetic Algorithms are good at taking large, potentially huge search spaces and navigating them, looking for optimal combinations of things, solutions.
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.
A New Evolutionary Approach for the Optimal Communication Spanning Tree Problem Sang-Moon Soak Speaker: 洪嘉涓、陳麗徽、李振宇、黃怡靜.
Evolution Programs (insert catchy subtitle here).
1 Genetic Algorithms and Ant Colony Optimisation.
1 Genetic Algorithms K.Ganesh Introduction GAs and Simulated Annealing The Biology of Genetics The Logic of Genetic Programmes Demo Summary.
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 What is a GA Terms and definitions Basic algorithm.
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.
Genetic Algorithms. Underlying Concept  Charles Darwin outlined the principle of natural selection.  Natural Selection is the process by which evolution.
Genetic Algorithm Dr. Md. Al-amin Bhuiyan Professor, Dept. of CSE Jahangirnagar University.
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.
Artificial Intelligence By Mr. Ejaz CIIT Sahiwal Evolutionary Computation.
Genetic Algorithms. Solution Search in Problem Space.
EVOLUTIONARY SYSTEMS AND GENETIC ALGORITHMS NAME: AKSHITKUMAR PATEL STUDENT ID: GRAD POSITION PAPER.
Genetic Algorithms An Evolutionary Approach to Problem Solving.
Genetic Algorithms And other approaches for similar applications Optimization Techniques.
 Presented By: Abdul Aziz Ghazi  Roll No:  Presented to: Sir Harris.
1 Genetic Algorithms Contents 1. Basic Concepts 2. Algorithm 3. Practical considerations.
Introduction to Genetic Algorithms
Genetic Algorithms.
Introduction to Evolutionary Computing
Evolutionary Algorithms Jim Whitehead
Bulgarian Academy of Sciences
School of Computer Science & Engineering
Example: Applying EC to the TSP Problem
CSC 380: Design and Analysis of Algorithms
An evolutionary approach to solving complex problems
Subject Name: Operation Research Subject Code: 10CS661 Prepared By:Mrs
Comparing Genetic Algorithm and Guided Local Search Methods
CS621: Artificial Intelligence
Genetic Algorithms: A Tutorial
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?
GENETIC ALGORITHMS & MACHINE LEARNING
Aiman H. El-Maleh Sadiq M. Sait Syed Z. Shazli
EE368 Soft Computing Genetic Algorithms.
Boltzmann Machine (BM) (§6.4)
Searching for solutions: Genetic Algorithms
Machine Learning: UNIT-4 CHAPTER-2
Traveling Salesman Problem by Genetic Algorithm
Beyond Classical Search
Population Based Metaheuristics
Genetic Algorithms: A Tutorial
CSC 380: Design and Analysis of Algorithms
GA.
Presentation transcript:

Example: Applying EC to the TSP Problem https://www.bing.com/videos/search?q=travelling+salesman+problem+contest&view=detail&mid=1AB7920D4DF80B1C6C4A1AB7920D4DF80B1C6C4A&FORM=VIRE Example: Applying EC to the TSP Problem Given: n cities including the cost of getting from on city to the other city TSP-Problem: Find a cheapest path that visits every city exactly once Cost Matrix for Symmetric-5City-TSP-Problem: 5 9 3 1 2 4 6 3 2 8 Solution1: 1-2-3-4-5 cost: 5+2+3+8+1=19 Solution2: 1-3-5-4-2 cost: 9+2+8+4+5=26 Goal: Find the solution with the lowest cost (NP-hard) Remark: A lot of contests: http://cswww.essex.ac.uk/staff/sml/gecco/PTSPComp.html http://www.math.uwaterloo.ca/tsp/world/

Key Components of an EC System Given: Fitness Function Chromosomal Representation EC System Selection Mechanism Genetic Operators Population Management Other: Population Probabilistic Algorithms Survival of the Fittest

The Evolutionary Cycle Selection Parents Recombination Population Mutation Replacement Offspring

The Ingredients Population t reproduction t + 1 selection Fitness function recombination mutation 7 2 Survival of Fittest

Sketch of an EC System to Solve TSPs Fitness function: given Chromosomal Representation: sequence of numbers containing a permutation of the first n numbers represented as an array; e.g. 1-2-3-4-0-5 Selection method: roulette wheel selection ( next slide) Initialization: Random Evolution Model/Population Management: Generate the next generation from the scratch Termination condition: The system is run for N generations and the best (or best k) solution is reported Operators: mutation, crossover, copy Operator application probabilities: crossover: 0% at generation 1; increase to 95% at generation N; mutation: 95% at generation 1 is reduced to 0% at generation N; copy: fixed at 5% Population size PS (e.g. 500)

Roulette Wheel Selection (RWS) Purpose of Selection in EC: The role of selection methods is the generation of a mating pool to breed the next generation! Information: https://en.wikipedia.org/wiki/Fitness_proportionate_selection participates in reproduction Remark: RWS is the most popular selection methods in EC; however many other selection methods exist and are used in EC systems! Particularly, tournament selection is another popular selection method! 3-tournament selection

The Evolution Mechanism Increasing diversity by genetic operators mutation recombination Decreasing diversity by selection of parents of survivors By using a copy operator

Side Question: How do we Assess the Similarity of 2 TSP Solutions? E.g. between: 1-2-3-4-5-6, 1-6-3-2-5-4 and 3-4-5-6-2-1

Requirements for TSP-Crossover Operators Edges that occur in both parents should not be lost. Introducing new edges that do not occur in any parent should be avoided. Producing offspring that are very similar to one of the parents but do not have any similarities with the other parent should be avoided. It is desirable that the crossover operator is complete in the sense that all possible combinations of the features occuring in the two parents can be obtained by a single or a sequence of crossover operations. The computational complexity of the crossover operator should be low.

Donor-Receiver-Crossover (DR) 1) Take a path of significant length (e.g. between 1/4 and 1/2 of the chromosome length) from one parent called the donor; this path will be expanded by mostly receiving edges from the other parent, called the receiver. 2) Complete the selected donor path giving preference to higher priority completions: P1: add edges from the receiver at the end of the current path. P2: add edges from the receiver at the beginning of the current path. P3: add edges from the donor at the end of the current path. P4: add edges from the donor at the start of the current path. P5: add an edge including an unassigned city at the end of the path. The basic idea for this class of operator has been introduced by Muehlenbein.

Example Donor-Receiver Crossover Three example offspring: 1P2-3P2-4P2-|5-6-0|-2P1 1P2-6P2-|2-3-4|-5P1-0P1 3P2-4P2-5P2-|0-1-2|-6P1 Remarks: In the third example new paths are introduced; e.g. 3-6 in the third example The path both patents have in common are: 3-4, 4-5; they are preserved in all 3 offspring.

Top-Down Edge Preserving Crossovers (TD) 1) Take all edges that occur in both parents. 2) Take legal edges from one parent alternating between parents, as long as possible. 3) Add edges with cities that are still missing. Michalewicz matrix crossover and many other crossover operators employ this scheme.

Typical TSP Mutation Operators Neighbor Swapping Inversion (like standard inversion): Insertion (selects a city and inserts it a a random place) Displacement (selects a subtour and inserts it at a random place) Reciprocal Exchange (swaps two cities) Examples: Neighbor swapping transforms 12|3456789 into 132456789 inversion transforms 12|34567|89 into 127654389 insertion transform 1>234567|89 into 134567289 displacement transforms 1>234|5678|9 into 156782349 reciprocal exchange transforms 1>23456>789 into 173456289

An Evolution Strategy Approach to TSP advocated by Baeck and Schwefel. idea: solutions of a particular TSP-problem are represented by a real-valued vectors, from which a path is computed by ordering the numbers in the vector obtaining a sequence of positions. Example: v=respesents the sequence:  Traditional ES-operators are employed to conduct the search for the “best” solution.

Non-GA Approaches for the TSP Greedy Algorithms: Start with one city completing the path by adding the cheapest edge at he beginning or at the end.. Classical Hill-Climbing Approaches: Randomized hill climbing Simulated Annealing Approaches Best-first search approaches Clustering Approaches: Cluster cities; then connect the clusters, by solving a mega-city TSP; and expand the mega city paths by inserting inside the cluster paths. Need to define the distance between clusters for solving the mega-city TSP Finally, need to solve a slightly modified TSP where the start and end city are given and the cost connecting the start on end cities does not count In general, creating distance functions for the 3 cost functions might allow you to create background knowledge that, if used, might lead to better solutions.

More on Clustering Approaches Mega-TSP: find the shortest path visiting each cluster once Problem Decomposition Problem Sub-Problem 1 Sub-Problem N

Other Project1 related Issues MEB; let us assume MEB is set to 10,000 at the momentplease give Dr. Eick feedback for this choice Need to be able to report the “best solution found so far” as MEB=10000 is reached Your program should run for different N valuesbonus Just need to report the best solution and its cost in the experimental evaluation More detailed guidelines what to submit will be posted soon Project Report (not a scientific paper) preliminary! Explain your search strategies clearly and transpently Briefly describe the history of the project; this could be quite short or long… Report and interpret the experimental results Write a short conclusion Not needed: Do not define TSP! No abstract No introduction Need not to discuss history of TSP, related work, but if your approach is based on some paper, software,… etc you will need to reference and briefly discuss its role in P1.