Evolutionary algorithms Prepared by Jeethan & Jun
Contents Overview Evolutionary Algorithms (EA) EA’s v/s Traditional search Pseudo code Parameters Characteristics of EAs Types of Eas Advantages and disadvantages References
Overview Search Problem Darwinian natural selection Evolutionary Algorithms are population- based “generate-and-test” search algorithms
Evolutionary Algorithms (EAs) Evolutionary algorithms operate on a population of potential solutions applying the principle of survival of the fittest to produce better approximations to a solution. A type of Guided Random Search Used for optimization problems
EA’s v/s traditional search and optimization methods search is performed in a parallel manner Provides a number of potential solutions to a given problem. They are generally more straight forward to apply The final choice is left to the user
Pseudo code
Parameters influencing EA’s Parameters of EAs may differ from one type to another. Main parameters: Population size Maximum number of generations Elitism factor Mutation rate Cross-over rate
Characteristics of EAs There are six main characteristics of EAs Representation Selection Recombination Mutation Fitness Function Survivor Decision Representation: How to define an individual The way to store the optimization parameters. Determined according to the problem. Different types: Binary representation Real-valued representation Lisp-S expression representation
Characteristics of EAs (cont) Selection Selection determines, which individuals are chosen for mating (recombination) and how many offspring each selected individual produces. Parents are selected according to their fitness by means of one of the following algorithms: Roulette wheel selection Truncation selection Recombination Determines how to combine the genes of selected parents Types is determined according to the representation : Bits of the genes Values of the genes
Characteristics of EAs (cont) Mutation Change on a single gene of the individual Fitness Function Gives an intuition about how good the individual is. Survivor Decision Idea of survival of the best individuals. It is about Elitism factor.
Different Types of EAs Genetic Algorithms(GA) – binary strings Genetic Programming(GP) – expression trees Evolutionary Strategies(ES) – real- valued vectors Evolutionary Programming(EP) – finite state machines
Evolutionary Algorithms Family Genetic Programming Evolutionary Programming Genetic Algorithms Evolutionary Strategies
Genetic Algorithms (GA) Optimum parameter – Random strategy Classified as global search heuristics Represented by byte arrays Two requirements Genetic representation Fitness function Condition principal
Sample Application of GA Finding the best path between two points in "Grid World" Creatures in world: Occupy a single cell Can move to neighboring cells Goal: Travel from the gray cell to the green cell in the shortest number of steps
Sample Application of GA Population Representation: N=00, E=10, S=11,W=01 Selection Fitness function Mutation Cross over
Genetic Programming (GP) find the proper program simple problems – High computation power represented by expression trees mainly operate cross-over mutation only can be applied once
Evolutionary Programming (EP) no fixed representation Only use mutation operation child is determined in a way of mutation So, we can conclude that there are three steps: Initialize population and calculate fitness values Mutate the parents and generate new population Calculate fitness values of new generation and continue from the second step
EP mutation is very critical main application areas: not widely used Cellular design problems. Constraint optimization Testing students’ code ...... not widely used
Evolutionary Strategies (ES) Mainly use the real-vectors as coding representation Very flexible Representation: represent floating, real- vector as well Selection: neighborhood method plus selection (both parent and child) comma selection (only parent) Fitness function: objective function values.
ES recombination & mutation: use additional parameters sigma represent the mutation amount three recombination functions: Arithmetic mean of the parents Geometric mean of the parents Discrete cross-over method. There are many application areas of the ES. Some of them:Optimization of Road Networks Local Minority Game Multi-Criterion Optimization .....
Disadvantages of Ea’s Advantages of Ea’s Large application domain Complex search problems Easy to work in parallel Robustness Disadvantages of Ea’s Adjustment of parameters (trial-and-error) No guarantee for finding optimal solutions in a finite amount of time
Videos about the application of EAs
References http://en.wikipedia.org/wiki/Evolutionary_algorithm http://www.geatbx.com/docu/algindex-02.html#TopOfPage http://www.faqs.org/faqs/ai-faq/genetic/part2/section- 3.html http://en.wikipedia.org/wiki/Genetic_programming http://alphard.ethz.ch/gerber/approx/default.html http://en.wikipedia.org/wiki/Evolutionary_programming http://en.wikipedia.org/wiki/Genetic_algorithm http://homepage.sunrise.ch/homepage/pglaus/gentore.htm http://www.ads.tuwien.ac.at/raidl/tspga/TSPGA.html http://en.wikipedia.org/wiki/Evolution_strategy
Questions ?