CS6800 Advanced Theory of Computation

Slides:



Advertisements
Similar presentations
Genetic Algorithms Chapter 3. A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Genetic Algorithms GA Quick Overview Developed: USA in.
Advertisements

Exact and heuristics algorithms
1 APPENDIX A: TSP SOLVER USING GENETIC ALGORITHM.
Tuesday, May 14 Genetic Algorithms Handouts: Lecture Notes Question: when should there be an additional review session?
Genetic Algorithms Representation of Candidate Solutions GAs on primarily two types of representations: –Binary-Coded –Real-Coded Binary-Coded GAs must.
COMP305. Part II. Genetic Algorithms. Genetic Algorithms.
Intro to AI Genetic Algorithm Ruth Bergman Fall 2002.
Genetic Algorithms Nehaya Tayseer 1.Introduction What is a Genetic algorithm? A search technique used in computer science to find approximate solutions.
D Nagesh Kumar, IIScOptimization Methods: M1L4 1 Introduction and Basic Concepts Classical and Advanced Techniques for Optimization.
Chapter 6: Transform and Conquer Genetic Algorithms The Design and Analysis of Algorithms.
GAlib A C++ Library of Genetic Algorithm Components Vanessa Herves Gómez Department of Computer Architecture and Technology,
Genetic Algorithms: A Tutorial
Genetic Algorithm.
Genetic Algorithms and Ant Colony Optimisation
Evolutionary Intelligence
© Negnevitsky, Pearson Education, CSC 4510 – Machine Learning Dr. Mary-Angela Papalaskari Department of Computing Sciences Villanova University.
1 Paper Review for ENGG6140 Memetic Algorithms By: Jin Zeng Shaun Wang School of Engineering University of Guelph Mar. 18, 2002.
SOFT COMPUTING (Optimization Techniques using GA) Dr. N.Uma Maheswari Professor/CSE PSNA CET.
Genetic algorithms Prof Kang Li
Genetic Algorithms by using MapReduce
Zorica Stanimirović Faculty of Mathematics, University of Belgrade
Genetic algorithms Charles Darwin "A man who dares to waste an hour of life has not discovered the value of life"
Optimization Problems - Optimization: In the real world, there are many problems (e.g. Traveling Salesman Problem, Playing Chess ) that have numerous possible.
Introduction to GAs: Genetic Algorithms How to apply GAs to SNA? Thank you for all pictures and information referred.
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.
© Negnevitsky, Pearson Education, Lecture 9 Evolutionary Computation: Genetic algorithms Introduction, or can evolution be intelligent? Introduction,
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.
Genetic Algorithms CSCI-2300 Introduction to Algorithms
Genetic Algorithms What is a GA Terms and definitions Basic algorithm.
ECE 103 Engineering Programming Chapter 52 Generic Algorithm Herbert G. Mayer, PSU CS Status 6/4/2014 Initial content copied verbatim from ECE 103 material.
Chapter 12 FUSION OF FUZZY SYSTEM AND GENETIC ALGORITHMS Chi-Yuan Yeh.
EE749 I ntroduction to Artificial I ntelligence Genetic Algorithms The Simple GA.
Waqas Haider Bangyal 1. Evolutionary computing algorithms are very common and used by many researchers in their research to solve the optimization problems.
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.
Genetic Algorithms and TSP Thomas Jefferson Computer Research Project by Karl Leswing.
Intro. ANN & Fuzzy Systems Lecture 37 Genetic and Random Search Algorithms (2)
Artificial Intelligence By Mr. Ejaz CIIT Sahiwal Evolutionary Computation.
Overview Last two weeks we looked at evolutionary algorithms.
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.
Breeding Swarms: A GA/PSO Hybrid 簡明昌 Author and Source Author: Matthew Settles and Terence Soule Source: GECCO 2005, p How to get: (\\nclab.csie.nctu.edu.tw\Repository\Journals-
Genetic Algorithms And other approaches for similar applications Optimization Techniques.
Genetic Algorithm. Outline Motivation Genetic algorithms An illustrative example Hypothesis space search.
 Presented By: Abdul Aziz Ghazi  Roll No:  Presented to: Sir Harris.
Genetic Algorithm (Knapsack Problem)
Introduction to Genetic Algorithms
Chapter 14 Genetic Algorithms.
Genetic Algorithms.
Genetic Algorithms.
USING MICROBIAL GENETIC ALGORITHM TO SOLVE CARD SPLITTING PROBLEM.
Example: Applying EC to the TSP Problem
Artificial Intelligence Project 2 Genetic Algorithms
Genetic Algorithm and Their Applications to Scheduling
Genetic Algorithms overview
Example: Applying EC to the TSP Problem
Example: Applying EC to the TSP Problem
Genetic Algorithms CSCI-2300 Introduction to Algorithms
EE368 Soft Computing Genetic Algorithms.
Searching for solutions: Genetic Algorithms
Artificial Intelligence CIS 342
Traveling Salesman Problem by Genetic Algorithm
Population Based Metaheuristics
Presentation transcript:

CS6800 Advanced Theory of Computation Hybrid Genetic Algorithm in Solving TSP By Ting-Yu Mu

Outline Introduction of pure Genetic Algorithm Introduction of Traveling Salesman Problem Example of pure GA solving TSP The Hybrid Genetic Algorithm The design and the implementation of the Hybrid GA Conclusion

The Pure Genetic Algorithm A search heuristic that mimics the process of natural evolution Utilized for generating useful solutions to optimization/search problems Techniques inspired by natural evolution: Inheritance Mutation Selection Crossover

The Methodology of GA A typical GA needs: Initialization Selection A genetic representation of the solution domain A fitness function to evaluate the domain Initialization Many individual solutions are randomly generated to form an initial population (chromosomes) The population size depends on the problem Selection A proportional of the existing population is selected to breed a new generation through a fitness-based process (fitness function)

The Methodology of GA Genetic Operations A pair of parent solutions is selected for breeding the child using: Crossover (recombination): Varies chromosomes One-point crossover Two-point crossover Mutation: Used to maintain genetic diversity from parent and child 1010010 → 1010110

The Methodology of GA Termination: The process is repeated until a termination condition has been satisfied, the conditions include: A solution is found that satisfies the need Fixed number of generations reached Computation time reached The best solution’s fitness value is reached Combinations of all above

The Methodology of GA

Traveling Salesman Problem A classical NP-hard Combinatorial Optimization (CO) problem NP-hard: Non-deterministic Polynomial-time hard At least as hard as the hardest problems in NP An algorithm is said to be of polynomial time if its running time is upper bounded by a polynomial expression in the size of the input (𝑇 𝑛 =𝑂( 𝑛 𝑘 ) for some constant k) Time complexity of TSP: 𝑂( 2𝑛∗𝑛 2 ) Combinatorial optimization: A topic that consists of finding an optimal object from a finite set of objects (The best solution)

Traveling Salesman Problem Given n number of cities and the distances between each of the cities: Objective: Find the cheapest round-trip route that a salesman has to take by visiting all the cities exactly once and returning to the starting city Possible solutions: Complete algorithm Bad idea due to computational complexity Approximate algorithm (better): Nearest Neighbor (NN) algorithm Genetic Algorithm

Pure GA for Solving TSP Involves various stages for solving TSP: Encoding Evaluation Crossover Mutation Elitism Decoding

Pure GA for Solving TSP Encoding of TSP: Decides the format of the chromosome Decimal chromosome is used instead of binary due to the complexity of the problem All the genetic operations are done by manipulating genes (integers), and each gene corresponds to a city Each chromosome corresponds to a route Two conditions need to be met: The length of the chromosome should be exactly = n No integer in the range {1, 2, …, n} should occur more than once

Pure GA for Solving TSP Evaluation of Chromosomes: The main goal of TSP is to minimize the tour distance: same for the evaluation criterion The lesser the distance traveled, the better the route is The termination criterion is the number of generation evolved GA stops after certain number of iterations The solution: The best chromosome in the last generation

Pure GA for Solving TSP Crossover Operation: Two chromosomes are randomly selected using roulette wheel selection The chromosomes with higher fitness stand a better chance for getting selected The operation continues until the specified crossover rate is met Higher fitness chromosomes will produce a better next generation with higher fitness values

Pure GA for Solving TSP Crossover Operation: Example: Crossover operation for TSP of 8 cities The parents selected are P1 and P2 P1: 4 6 1 8 5 3 2 7, P2: 3 2 8 6 4 7 1 5 Two indices are chosen at random (Ex. 2 and 5), creating a window of cities in each chromosome tmp1: 6 1 8 5, tmp2: 2 8 6 4 Exchanges these two windows from each other The initial child IC1 and IC2 are generated by scanning P1 and P2 gene by gene, left to right, until all the genes are scanned: IC1: 1 2 8 6 4 5 3 7, IC2: 3 6 1 8 5 2 4 7

Pure GA for Solving TSP Mutation Operation: Works on a single chromosome at a time and alters the genes randomly Reversing the order of genes between the randomly chosen indices The chosen chromosome C1 = 3 6 1 8 5 2 4 7 Choose two random indices: 3 and 7 Creates a window: 1 8 5 2 4 Reverse the window: 4 2 5 8 1 New chromosome: 3 6 4 2 5 8 1 7 Critical step due to the optimization of sub-route Changing the starting and ending points

Pure GA for Solving TSP Elitism: Helps to keep the better solutions intact and pass over into the next generation without alteration The elitism rate directly depends on the size of the population The rate should be decreased when the population size is increased For example: The TSP with population of 100 cities, the elitism rate is set to 50% Due to the mutation will also randomly worsens the best solutions found so far

Pure GA for Solving TSP Decoding of Chromosomes: It decodes the best chromosome in the final generation After the max number of generations are reached, the GA will terminate, the best chromosome so far found is chosen as the solution The route that the salesman has to travel in order

Hybrid GA for Solving TSP Hybrid genetic algorithms are used to improve the convergence rate and find more optimal solution over the pure GA The Hybrid GA uses the Nearest Neighbor (NN) TSP heuristics for initialization of population Nearest Neighbor is chosen to hybrid with GA to see the performance enhancement in solving TSP

Hybrid GA for Solving TSP Nearest Neighbor Algorithm: The algorithm generates the NN routes for each city considering them as the starting city for that particular route The algorithm: Step1: Move all the cities to a list Step2: Select the starting city as present city and remove it from the list Step3: Find the nearest city to the present city in the list and make it present city and remove it from the list Step4: Repeat step3 until the list is empty Step5: Return to the starting city and show NN route

Hybrid GA for Solving TSP Nearest Neighbor Hybrid of GA All the NN routes are found for each city as starting city The NN routes are stored and analyzed for their fitness values The better routes from this NN algorithm are considered along with the solutions generated by the genetic algorithms

The Comparison The performance comparison between pure GA and Hybrid GA in convergence rate: The Hybrid GA is way better than pure GA though it involves an extra complexity in getting NN route NN depends on starting city, Hybrid GA does not

Conclusion Importing of solutions from NN algorithm into the initial population of the pure GA gives better convergence The hybrid approach also consumes lesser memory and lesser computational time To achieve better performance of GA: Parallel programming Genetic operations refinement Crossover refinement Mutation refinement

References [1] Performance Enhancement in solving TSP using Hybrid Genetic Algorithm. http://ieeexplore.ieee.org [2] Genetic Algorithm. http://en.wikipedia.org/wiki/Genetic_algorithm [3] NP-hard. http://en.wikipedia.org/wiki/NP-hard [4] Combinatorial Optimization. http://en.wikipedia.org/wiki/Combinatorial_optimization