Evolutionary Computing Dialects Presented by A.E. Eiben Free University Amsterdam with thanks to the EvoNet Training Committee and its “Flying Circus”

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

Evolution strategies Chapter 4. A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Evolution Strategies ES quick overview Developed: Germany.
EvoNet Flying Circus Introduction to Evolutionary Computation Brought to you by (insert your name) The EvoNet Training Committee The EvoNet Flying Circus.
Institute of Intelligent Power Electronics – IPE Page1 Introduction to Basics of Genetic Algorithms Docent Xiao-Zhi Gao Department of Electrical Engineering.
Genetic Algorithms1 COMP305. Part II. Genetic Algorithms.
1 Lecture 8: Genetic Algorithms Contents : Miming nature The steps of the algorithm –Coosing parents –Reproduction –Mutation Deeper in GA –Stochastic Universal.
EvoNet Flying Circus Introduction to Evolutionary Computation Brought to you by (insert your name) The EvoNet Training Committee The EvoNet Flying Circus.
Evolutionary Computational Intelligence
Doug Downey, adapted from Bryan Pardo, Machine Learning EECS 349 Machine Learning Genetic Programming.
Doug Downey, adapted from Bryan Pardo, Machine Learning EECS 349 Fall 2007 Machine Learning Genetic Algorithms.
Intro to AI Genetic Algorithm Ruth Bergman Fall 2002.
Tutorial 1 Temi avanzati di Intelligenza Artificiale - Lecture 3 Prof. Vincenzo Cutello Department of Mathematics and Computer Science University of Catania.
Evolutionary Computational Intelligence
Genetic Algorithms Nehaya Tayseer 1.Introduction What is a Genetic algorithm? A search technique used in computer science to find approximate solutions.
CS 447 Advanced Topics in Artificial Intelligence Fall 2002.
Intro to AI Genetic Algorithm Ruth Bergman Fall 2004.
Genetic Programming. Agenda What is Genetic Programming? Background/History. Why Genetic Programming? How Genetic Principles are Applied. Examples of.
Genetic Algorithms Overview Genetic Algorithms: a gentle introduction –What are GAs –How do they work/ Why? –Critical issues Use in Data Mining –GAs.
Genetic Programming Chapter 6. A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Genetic Programming GP quick overview Developed: USA.
Genetic Algorithm.
Evolutionary Intelligence
1 An Overview of Evolutionary Computation 조 성 배 연세대학교 컴퓨터과학과.
SOFT COMPUTING (Optimization Techniques using GA) Dr. N.Uma Maheswari Professor/CSE PSNA CET.
Evolution Strategies Evolutionary Programming Genetic Programming Michael J. Watts
Introduction to Evolutionary Algorithms Lecture 1 Jim Smith University of the West of England, UK May/June 2012.
Genetic Algorithms Michael J. Watts
Introduction to GAs: Genetic Algorithms How to apply GAs to SNA? Thank you for all pictures and information referred.
Introduction to Evolutionary Algorithms Session 4 Jim Smith University of the West of England, UK May/June 2012.
Neural and Evolutionary Computing - Lecture 5 1 Evolutionary Computing. Genetic Algorithms Basic notions The general structure of an evolutionary algorithm.
What is an Evolutionary Algorithm? Chapter 2. A.E. Eiben and J.E. Smith, What is an Evolutionary Algorithm? With Additions and Modifications by Ch. Eick.
An Introduction to Genetic Algorithms Lecture 2 November, 2010 Ivan Garibay
1 Machine Learning: Lecture 12 Genetic Algorithms (Based on Chapter 9 of Mitchell, T., Machine Learning, 1997)
Brief introduction to genetic algorithms and genetic programming A.E. Eiben Free University Amsterdam.
Artificial Intelligence Chapter 4. Machine Evolution.
Evolution strategies Luis Martí DEE/PUC-Rio. ES quick overview Developed: Germany in the 1970’s Early names: I. Rechenberg, H.-P. Schwefel Typically applied.
EvoNet Flying Circus Introduction to Evolutionary Computation Brought to you by (insert your name) The EvoNet Training Committee The EvoNet Flying Circus.
Evolutionary Programming
Genetic Programming. GP quick overview Developed: USA in the 1990’s Early names: J. Koza Typically applied to: machine learning tasks (prediction, classification…)
Genetic Algorithms What is a GA Terms and definitions Basic algorithm.
Evolution strategies Chapter 4. A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Evolution Strategies ES quick overview Developed: Germany.
Chapter 12 FUSION OF FUZZY SYSTEM AND GENETIC ALGORITHMS Chi-Yuan Yeh.
Genetic Programming A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Chapter 6.
Evolution strategies Chapter 4. A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Evolution Strategies ES quick overview Developed: Germany.
GENETIC ALGORITHM Basic Algorithm begin set time t = 0;
D Nagesh Kumar, IIScOptimization Methods: M8L5 1 Advanced Topics in Optimization Evolutionary Algorithms for Optimization and Search.
Introduction to GAs: Genetic Algorithms Quantitative Analysis: How to make a decision? Thank you for all pictures and information referred.
Genetic Programming COSC Ch. F. Eick, Introduction to Genetic Programming GP quick overview Developed: USA in the 1990’s Early names: J. Koza Typically.
An Introduction to Genetic Algorithms Lecture 2 November, 2010 Ivan Garibay
Genetic Algorithm Dr. Md. Al-amin Bhuiyan Professor, Dept. of CSE Jahangirnagar University.
Introduction to Evolutionary Computing II A.E. Eiben Free University Amsterdam with thanks to the EvoNet Training Committee.
Artificial Intelligence By Mr. Ejaz CIIT Sahiwal Evolutionary Computation.
Evolutionary Programming A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Chapter 5.
A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Evolutionary Programming.
Genetic Algorithms. Solution Search in Problem Space.
Genetic Algorithm. Outline Motivation Genetic algorithms An illustrative example Hypothesis space search.
 Presented By: Abdul Aziz Ghazi  Roll No:  Presented to: Sir Harris.
Genetic Programming.
Genetic Algorithms Author: A.E. Eiben and J.E. Smith
Evolutionary Programming
Evolution Strategies Evolutionary Programming
Artificial Intelligence Chapter 4. Machine Evolution
GENETIC ALGORITHMS & MACHINE LEARNING
Genetic Algorithms Chapter 3.
Artificial Intelligence Chapter 4. Machine Evolution
Evolutionary Programming
Genetic Programming Chapter 6.
Machine Learning: UNIT-4 CHAPTER-2
Genetic Programming Chapter 6.
Genetic Programming Chapter 6.
Beyond Classical Search
Presentation transcript:

Evolutionary Computing Dialects Presented by A.E. Eiben Free University Amsterdam with thanks to the EvoNet Training Committee and its “Flying Circus”

EC Dialects by A.E. Eiben, Free University Amsterdam, for the EvoNet Summer School Contents General formal famework Dialects: genetic algorithms evolution strategies evolutionary programming genetic programming Beyond dialects

EC Dialects by A.E. Eiben, Free University Amsterdam, for the EvoNet Summer School General EA Framework t := 0 initialize P(0) = {a 1 (0), …, a n (0)} evaluate F(a 1 (0)), …, F(a n (0)) while (stop(P(t))  true) recombine: P’(t) = r par(r) (P(t)) mutate: P’’(t) = m par(m) (P’(t)) evaluate F(a 1 ’’(t)), …, F(a n ’’(t)) select: P(t + 1) = s par(s) (P’’(t)  Q) t := t + 1 where F is the fitness function r, m, s are recombination, mutation, selection operators par(x) contains the paramteres of operator x Q is either  or P(t)

EC Dialects by A.E. Eiben, Free University Amsterdam, for the EvoNet Summer School From framework to dialects In theory: every EA is an instantiation of this framework, thus: specifying a dialect needs only filling in the characteristic features In practice this would be too formalistic there are many exceptions (EAs not fitting into this framework)

EC Dialects by A.E. Eiben, Free University Amsterdam, for the EvoNet Summer School Genetic algorithm(s) Developed: USA in the 1970’s Early names: J. Holland, K. DeJong, D. Goldberg Typically applied to: discrete optimization Attributed features: not too fast good solver for combinatorial problems Special: many variants, e.g., reproduction models, operators formerly: the GA, nowdays: a GA, GAs

EC Dialects by A.E. Eiben, Free University Amsterdam, for the EvoNet Summer School GA: representation Required accuracy determines the # of bits to represent a trait (variable)

EC Dialects by A.E. Eiben, Free University Amsterdam, for the EvoNet Summer School GA: crossover (1) Crossover is used with probability p c 1-point crossover: Choose a random point on the two parents (same for both) Split parents at this crossover point Create children by exchanging tails n-point crossover: Choose n random crossover points Split along those points Glue parts, alternating between parents uniform crossover: Assign 'heads' to one parent, 'tails' to the other Flip a coin for each gene of the first child Make an inverse copy of the gene for the second child

EC Dialects by A.E. Eiben, Free University Amsterdam, for the EvoNet Summer School GA: crossover (2)

EC Dialects by A.E. Eiben, Free University Amsterdam, for the EvoNet Summer School GA: mutation Mutation: Alter each gene independently with a probability p m Relatively large chance for not being mutated (exercise: L=100, p m =1/L)

EC Dialects by A.E. Eiben, Free University Amsterdam, for the EvoNet Summer School GA: crossover OR mutation? If we define distance in the search space as Hamming distance then: Crossover is explorative, it makes a big jump to an area somewhere ‘in between’ two (parent) areas. Mutation is exploitative, it creates random small variations, thereby staying near the parent. To hit the optimum you often need a lucky mutation. GA community: crossover is mission critical.

EC Dialects by A.E. Eiben, Free University Amsterdam, for the EvoNet Summer School GA: selection Basic idea: fitness proportional selection. Implementation: roulette wheel technique. Assign to each individual a part of the roulette wheel (size proportional to its fitness). Spin the wheel n times to select n individuals. Example: f  max 3 individuals f (A) = 6, f (B) = 5, f (C ) = 1

EC Dialects by A.E. Eiben, Free University Amsterdam, for the EvoNet Summer School GA: reproduction cycle Generational GA model 1. Select parents for the mating pool (size of mating pool equals population size). 2. Shuffle the mating pool. 3. For each consecutive pair apply crossover with probability p c. 4. For each ‘new-born’ apply mutation. 5. Replace the whole population by the mating pool.

EC Dialects by A.E. Eiben, Free University Amsterdam, for the EvoNet Summer School GA: Goldberg ‘89 example (1)

EC Dialects by A.E. Eiben, Free University Amsterdam, for the EvoNet Summer School GA: Goldberg ‘89 example (2)

EC Dialects by A.E. Eiben, Free University Amsterdam, for the EvoNet Summer School Evolution strategies Developed: Germany in the 1970’s Early names: I. Rechenberg, H.-P. Schwefel Typically applied to: numerical optimization Attributed features: fast good optimizer for real-valued optimization relatively much theory Special: self-adaptation of (mutation) parameters standard

EC Dialects by A.E. Eiben, Free University Amsterdam, for the EvoNet Summer School ES: representation Problem: optimize f :  n   Phenotype space (solution space):  n Genotype space (individual space): object values directly (no encoding) strategy parameter values: standard deviations (  ’s) and rotation angles (  ‘s) of mutation One individual:

EC Dialects by A.E. Eiben, Free University Amsterdam, for the EvoNet Summer School ES: mutation (1) One step size for each x i (coordinate direction) Individual: (x 1, …, x n,  ) x i is mutated by adding some  x i from a normal probability distribution  is mutated by a “log-normal” scheme: multiplying by e , with  from a normal distribution  is mutated first ! (why?)

EC Dialects by A.E. Eiben, Free University Amsterdam, for the EvoNet Summer School ES: mutation (2) Each x i (coordinate direction) has its own step size Individual: (x 1, …, x n,  1, …,  n )  0, ,  ’ are parameters

EC Dialects by A.E. Eiben, Free University Amsterdam, for the EvoNet Summer School ES: mutation (3) Case 1: n = 2, n  = 1 Equal probability to place an offspring Case 2: n = 2, n  = 2

EC Dialects by A.E. Eiben, Free University Amsterdam, for the EvoNet Summer School ES: recombination (1) Basic ideas: I   I,  parents yield 1 offspring Applied times, typically >>  Applied to object variables as well as strategy parameters Per offspring gene two corresponding parent genes are involved Two ways to recombine two parent alleles: Discrete recombination: choose one of them randomly Intermediate recombination: average the values Might involve two or more parents (global recombination)

EC Dialects by A.E. Eiben, Free University Amsterdam, for the EvoNet Summer School ES: recombination (2) The “standard” operator: 1For each object variable: aChoose two parents bApply discrete recombination on the corresponding variables 2For each strategy parameter: aChoose two parents bApply intermediate recombination on the corresponding parameters Global recombination: re-choosing the two parents for each variable anew (step a above). Local recombination: same two parents for each variable (position i).

EC Dialects by A.E. Eiben, Free University Amsterdam, for the EvoNet Summer School ES: recombination (3) Recombination illustrated  = 3

EC Dialects by A.E. Eiben, Free University Amsterdam, for the EvoNet Summer School ES: selection Strictly deterministic, rank based The  best ranks are handled equally The  best individuals survive from the offspring: ( , ) selection the parents and the offspring: (  + ) selection ( , ) selection often preferred for it is important for self-adaptation applicable also for noisy objective functions, moving optima Selective pressure: very high

EC Dialects by A.E. Eiben, Free University Amsterdam, for the EvoNet Summer School Evolutionary programming Developed: USA in the 1960’s Early names: D. Fogel Typically applied to: traditional EP: machine learning tasks by finite state machines contemporary EP: (numerical) optimization Attributed features: very open framework: any representation and mutation op’s OK crossbred with ES (contemporary EP) consequently: hard to say what “standard” EP is Special: no recombination self-adaptation of parameters standard (contemporary EP)

EC Dialects by A.E. Eiben, Free University Amsterdam, for the EvoNet Summer School Traditional EP: Finite State Machines Fitnesss = prediction capability: output i = input i+1 Initial state: C Input string: Output string: Good predictions: 60%

EC Dialects by A.E. Eiben, Free University Amsterdam, for the EvoNet Summer School Mutation: For FSMs: change a state-transition, add a state, etc. For numerical optimization: see later Crossover: none ! EP: mutation & crossover “no crossover between species” representation naturally determines the operators

EC Dialects by A.E. Eiben, Free University Amsterdam, for the EvoNet Summer School Representation:  x 1,…,x n,  1,…,  n  Mutation: x i is mutated by adding some  x i from a normal probability distribution  is mutated by a “normal” scheme (ES: log-normal)  ’ i =  i  (1 +   N i (0, 1)) x’ i = x i +  ’ I  N i (0, 1)  is mutated first ! other prob. distributions, e.g., Cauchy, are also applied Modern EP: representation & mutation

EC Dialects by A.E. Eiben, Free University Amsterdam, for the EvoNet Summer School EP: selection Stochastic variant of (  +  )-selection P(t):  parents, P’(t):  offspring Selection by conducting pairwise competitions in round- robin format: Each solution x  P(t)  P’(t) is evaluated against q other randomly chosen solutions from the population For each comparison, a "win" is assigned if x is better than its opponent The  solutions with the greatest number of wins are retained to be parents of the next generation Typically: q = 10

EC Dialects by A.E. Eiben, Free University Amsterdam, for the EvoNet Summer School Genetic programming Developed: USA in the 1990’s Early names: J. Koza Typically applied to: machine learning tasks Attributed features: competes with neural nets and alike slow needs huge populations (thousands) Special: non-linear chromosomes: trees, graphs mutation possible but not necessary (disputed!)

EC Dialects by A.E. Eiben, Free University Amsterdam, for the EvoNet Summer School GP: representation Problem domain: modelling (forecasting, regression, classification, data mining, robot control). Fitness: the performance on a given (training) data set, e.g. the nr. of hits/matches/good predictions Representation: implied by problem domain, i.e. individual = model = parse tree parse trees sometimes viewed as LISP expressions  GP = evolving computer programs parse trees sometimes viewed as just-another-genotype  GP = a GA sub-dialect

EC Dialects by A.E. Eiben, Free University Amsterdam, for the EvoNet Summer School Replace randomly chosen subtree by a randomly generated (sub)tree GP: mutation

EC Dialects by A.E. Eiben, Free University Amsterdam, for the EvoNet Summer School Exchange randomly selected subtrees in the parents GP: crossover

EC Dialects by A.E. Eiben, Free University Amsterdam, for the EvoNet Summer School GP: selection Standard GA selection is usual Sometimes overselection to increase efficiency: rank population by fitness and divide it into two groups: group 1: best c % of population group 2: other 100-c % when executing selection 80% of selection operations chooses from group 1 20% from group 2 for pop. size = 1000, 2000, 4000, 8000 the portion c is c = 32%, 16%, 8%, 4% %’s come from rule of thumb

EC Dialects by A.E. Eiben, Free University Amsterdam, for the EvoNet Summer School Beyond dialects Field merging from the early 1990’s No hard barriers between dialects, many hybrids, outliers Choice for dialect should be motivated by given problem Best practical approach: choose representation, operators, pop. model pragmatically (and end up with an “unclassifiable” EA) There are general issues for EC as a whole

EC Dialects by A.E. Eiben, Free University Amsterdam, for the EvoNet Summer School WHAT WHEN WHY WHO WHERE does it work ? (Markov chains, schema theory, BBH) invented evolutionary algorithms first ? (Turing, Fogel, Holland, Schwefel, …) are we going next for a nice conference ? is an evolutionary algorithm ? (HC, SA, TS) does it work ? (problem X, setup Y, performance Z) General issues

EC Dialects by A.E. Eiben, Free University Amsterdam, for the EvoNet Summer School The end