lounge
play

Lounge Evolutionary Algorithms Christopher Mark Gore - PowerPoint PPT Presentation

Lounge Evolutionary Algorithms Christopher Mark Gore http://www.cgore.com cgore@cgore.com @cgore Thursday, March 1, AD 2012 1 Evolutionary Algorithms Are Cool! 2 Why Use and Evolutionary Algorithm? The evaluation is very


  1. λ Lounge Evolutionary Algorithms Christopher Mark Gore http://www.cgore.com cgore@cgore.com @cgore Thursday, March 1, AD 2012 1

  2. Evolutionary Algorithms Are Cool! 2

  3. Why Use and Evolutionary Algorithm? • The evaluation is very time-consuming. • The problem is computationally difficult. • You don’t understand the problem. • You are working with a real-world system. • You just want to study evolutionary processes themselves. 3

  4. Where Are Evolutionary Algorithms Used? • Artificial Intelligence. • Financial modeling. • Military applications. • Complex engineering systems. • Etc. 4

  5. The Evolutionary Algorithm 1. Population Initialization: generate a new population. 2. Fitness Evaluation: rate each member of the population. 3. Repeatedly: (a) Parent Selection: choose who to breed. (b) Recombination: cross the parents. (c) Mutation: applied to the offspring. (d) Fitness Evaluation: usually just the new offspring. (e) Survivor Selection: kill off the weak. 5

  6. Population Initialization • Intelligently seed the population. Think Adam and Eve. Pro: you can start off the population somewhere useful. Con: you have to know where “somewhere useful” is. • Randomly generate the population. This is usually easy and usually doesn’t cost too many generations. • Doing both at the same time isn’t uncommon. 6

  7. Fitness Evaluation We need to determine the fitness of our solutions. • Minimum or maximum direct value. • Simulation of an environment. • Some fitness heuristic. • Head-to-head competition. 7

  8. Parent Selection • Breed the most fit. • Don’t be too selective: you’ll get stuck on local optima. • Wide-population breeding encourages exploration. • Local breeding encourages optimization. 8

  9. Recombination       a α a       b β b                   c γ c ⊕ →                   d δ δ             e ǫ ǫ 9

  10. Mutation     a · 1 . 02 a     b b             c · 0 . 975 c →             d d         e e 10

  11. Survivor Selection • Remove the least fit from the population: “cull the herd.” • Often just reduce the population to some maximum size. • Don’t be too selective: some population member may be useful for breeding later. 11

  12. The Rastrigin Function n � � x 2 � f ( x ) = An + i − A cos (2 πx i ) i =1 12

  13. Let’s Look at Some Code! This is intentionally simple code. • I want you to learn about evolutionary algorithms in this talk, not anything cool about Common Lisp. • I want it to be an explanation, not an implementation. • I want it to be as short and readable as possible. • I want it to not use anything non-standard. So in short, no, this isn’t the best way to do things in the real world. 13

  14. Questions? 14

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend