Introduction to Genetic Algorithms - PowerPoint PPT Presentation

introduction to genetic algorithms n.
Skip this Video
Loading SlideShow in 5 Seconds..
Introduction to Genetic Algorithms PowerPoint Presentation
Download Presentation
Introduction to Genetic Algorithms

play fullscreen
1 / 10
Download Presentation
Introduction to Genetic Algorithms
0 Views
Download Presentation

Introduction to Genetic Algorithms

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. Introduction to Genetic Algorithms Jeff Plummer Nov. 2003

  2. Background • Problems are solved by an evolutionary process resulting in a best (fittest) solution (survivor). • Evolutionary Computing • 1960s by I. Rechenberg • Genetic Algorithms • Invented by John Holland 1975 • Made popular by John Koza 1992

  3. How GA are Different than Traditional Search Methods • GAs work with a coding of the parameter set, not the parameters themselves. • GAs search from a population of points, not a single point. • GAs use payoff information, not derivatives or auxiliary knowldege. • GAs use probablistic transition rules, not deterministic rules.

  4. Vocabulary • Gene – An single encoding of part of the solution space. • Chromosome – A string of “Genes” that represents a solution. • Population - The number of “Chromosomes” available to test.

  5. Simple Example • f(x) = {MAX(x2): 0 <= x <= 32 } • Encode Solution: Just use 5 bits (1 or 0). • Generate initial population. • Evaluate each solution against objective.

  6. Simple Example (cont.) • Create next generation of solutions • Probability of “being a parent” depends on the fitness. • Ways for parents to create next generation • Reproduction • Use a string again unmodified. • Crossover • Cut and paste portions of one string to another. • Mutation • Randomly flip a bit. • COMBINATION of all of the above.

  7. The Basic Genetic Algorithm • [Start] Generate random population of n chromosomes (suitable solutions for the problem) • [Fitness] Evaluate the fitness f(x) of each chromosome x in the population • [New population] Create a new population by repeating following steps until the new population is complete • [Selection] Select two parent chromosomes from a population according to their fitness (the better fitness, the bigger chance to be selected) • [Crossover] With a crossover probability cross over the parents to form new offspring (children). If no crossover was performed, offspring is the exact copy of parents. • [Mutation] With a mutation probability mutate new offspring at each locus (position in chromosome). • [Accepting] Place new offspring in the new population • [Replace] Use new generated population for a further run of the algorithm • [Test] If the end condition is satisfied, stop, and return the best solution in current population • [Loop] Go to step 2

  8. Example Applet • http://www.rennard.org/alife/english/gavintrgb.html

  9. GAs and Games • GAs are learning systems • Consider a Space Ship AI - Evade • Chromosome encoding is string of “Up, Down, Left, Right, Accelerate, Decelerate” • Fitness of “Chromosome” is proportional to the length of time it can evade a player. • As player plays, ships get better at evading. • DOESN’T REQUIRE A LIVE PLAYER!!!!!!

  10. Bibliography • Genetic Algorithms in Search, Optimization, and Machine Learning by David E. Goldberg. • http://cs.felk.cvut.cz/~xobitko/ga/ • http://www.sambee.co.th/MazeSolver/mazega.htm • http://www.rennard.org/alife/english/gavintrgb.html