Evolutionary Computation: A Tutorial September 2009 Biointelligence Laboratory School of Computer...

Post on 14-Jan-2016

214 views 0 download

Transcript of Evolutionary Computation: A Tutorial September 2009 Biointelligence Laboratory School of Computer...

Evolutionary Computation: Evolutionary Computation: A TutorialA Tutorial

September 2009September 2009

Biointelligence Laboratory

School of Computer Sci. & Eng.

Seoul National University

http://bi.snu.ac.kr/

ContentsContents

Part I: Introduction to Evolutionary Computation Part II: Genetic Programming Part III: Advanced Topics Part IV: Applications Part V: Summary and Further Info

(C) 2000-2009 SNU CSE Biointelligence Lab 2

Part I: Introduction to Evolutionary Part I: Introduction to Evolutionary ComputationComputation

OverviewOverview

The Basic Concept General Framework of Evolutionary Computation Components of Evolutionary Computation Paradigms in Evolutionary Computation

4(C) 2000-2009 SNU CSE Biointelligence Lab

Basic ConceptBasic Concept

Use of Darwinian-like evolutionary processes to solve difficult computational problems. Hence the name, “Evolutionary Computation”

Biological basis Biological systems adapt themselves to a new environment by

evolution. Generations of descendants are produced that perform better than do

their ancestors.

Biological evolution Production of descendants changed from their parents Selective survival of some of these descendants to produce more

descendants

5(C) 2000-2009 SNU CSE Biointelligence Lab

(C) 2000-2009 SNU CSE Biointelligence Lab

Basic ConceptBasic Concept

What is the Evolutionary Computation? Stochastic search (or problem solving) techniques that

mimic the metaphor of natural biological evolution.

Metaphor

EVOLUTION

Individual

Fitness

Environment

PROBLEM SOLVING

Candidate Solution

Quality

Problem

6

(C) 2000-2009 SNU CSE Biointelligence Lab

General Framework of ECGeneral Framework of EC

Generate Initial PopulationGenerate Initial Population

Evaluate FitnessEvaluate Fitness

Select ParentsSelect Parents

Generate New OffspringGenerate New Offspring

Termination Condition?Termination Condition?Yes

No

Fitness Function

Crossover, Mutation

Best Individual

7

Components of EC (1/9)Components of EC (1/9)

Representations Population Fitness function Selection mechanism Variation operators

Crossover/Mutation

Initialization / Termination

8(C) 2000-2009 SNU CSE Biointelligence Lab

(C) 2000-2009 SNU CSE Biointelligence Lab

Components of EC (2/9)Components of EC (2/9)

An example: the 8 queens problem Place 8 queens

on an 8x8 chessboard in such a way that they cannot check each other.

9

Components of EC (3/9)Components of EC (3/9)

Representations How to represent the space to be searched? Genotype

Internal representation of solutions in EC. Minimum domain knowledge.

Phenotype External representation of solutions for the problem. Require domain knowledge.

Be careful so that every feasible solution can be represented in genotype space.

10(C) 2000-2009 SNU CSE Biointelligence Lab

(C) 2000-2009 SNU CSE Biointelligence Lab

1 23 45 6 7 8

Genotype: a permutation of the numbers 1 - 8

Phenotype: a board configuration

Obvious mapping

11

Representation Example:Representation Example:8 Queens Problem8 Queens Problem

Components of EC (4/9)Components of EC (4/9) Population

Usually has a fixed size and is a multiset of genotypes Some sophisticated EAs also assert a spatial structure on the

population e.g., a grid. Diversity of a population refers to the number of different

fitnesses / phenotypes / genotypes present (note not the same thing).

Population sizing Parent population size (M), offspring population size (K). Typically M = K. In typical ES (explained later), M << K. In steady state algorithms, M > K.

12(C) 2000-2009 SNU CSE Biointelligence Lab

(C) 2000-2009 SNU CSE Biointelligence Lab

Components of EC (5/9)Components of EC (5/9)

Fitness function Represents the requirements that the population should

adapt to a.k.a. quality function or objective function Assigns a single real-valued fitness to each phenotype

which forms the basis for selection So the more discrimination (different values) the

better Typically we talk about fitness being maximised

Some problems may be best posed as minimisation problems, but conversion is trivial.

13

Fitness Function Example:Fitness Function Example:8 Queens Problem8 Queens Problem

Penalty for a queen: The number of queens she can

check

Penalty for a configuration: The sum of penalties of all

queens

Note: penalty is to be minimized

Fitness of a configuration: inverse penalty to be maximized

1 23 45 6 7 8

1

2

1

0

1

2

2

1

14(C) 2000-2009 SNU CSE Biointelligence Lab 10)22110112(

1.022110112

1

or

(C) 2000-2009 SNU CSE Biointelligence Lab

Components of EC (6/9)Components of EC (6/9)

Parent selection mechanism Assigns probabilities for an individual to be selected as parents. Selection probabilities are relative to current population.

Different probabilities can be assigned to the same individuals. Usually depends on the individual’s fitness and probabilistic.

High quality solutions more likely to become parents than low quality ones

Selection pressure – the degree of correlation between the individual’s fitness and its selection probability.

High selection pressure results in reducing search scope. Even worst in current population usually has non-zero probability of

becoming a parent This stochastic nature can aid escape from local optima.

15

Selection Mechanism Example:Selection Mechanism Example:8 Queens Problem8 Queens Problem

1 23 45 6 8 7

6 83 17 5 2 4

6 31 25 7 8 4

8 26 54 1 3 7

1/9 = 0.11

1/10 = 0.1

1/11 = 0.091

1/6 = 0.17

Individual Proportional Ranking

(1) 0.23 0.3

(2) 0.21 0.2

(3) 0.19 0.1

(4) 0.36 0.4

(1)

(2)

(3)

(4)

Different selection mechanisms assign different selection probabilities for the same individual.

16(C) 2000-2009 SNU CSE Biointelligence Lab

(C) 2000-2009 SNU CSE Biointelligence Lab

Components of EC (7/9)Components of EC (7/9) Crossover (Recombination)

Mix information from parents into offspring in stochastic way.

Most offspring may be worse, or the same as the parents. Hope is that some are better by combining elements of

genotypes that lead to good traits. Principle has been used for millennia by breeders of

plants and livestock

Example

8 7 6 42 5311 3 5 24 678

8 7 6 45 1231 3 5 62 874

17

(C) 2000-2009 SNU CSE Biointelligence Lab

Components of EC (8/9)Components of EC (8/9)

Mutation It is applied to one genotype and delivers a (slightly)

modified mutant, the child or offspring of it. Element of randomness is essential. The role of mutation in EC is different in various EC

subtypes.

Example swapping values of two randomly chosen positions

1 23 45 6 7 8 1 23 4 567 8

18

(C) 2000-2009 SNU CSE Biointelligence Lab

Components of EC (9/9)Components of EC (9/9)

Initialization usually done at random Need to ensure even spread and mixture of possible

allele values Can include existing solutions, or use problem-specific

heuristics, to “seed” the population Termination condition checked every generation

Reaching some (known/hoped for) fitness Reaching some maximum allowed number of

generations Reaching some minimum level of diversity Reaching some specified number of generations

without fitness improvement

19

(C) 2000-2009 SNU CSE Biointelligence Lab

Paradigms in ECParadigms in EC

Evolutionary Programming (EP) [L. Fogel et al., 1966] FSMs, mutation only, tournament selection

Evolution Strategy (ES) [I. Rechenberg, 1973] Real values, mainly mutation, ranking selection

Genetic Algorithm (GA) [J. Holland, 1975] Bitstrings, mainly crossover, proportionate selection

Genetic Programming (GP) [J. Koza, 1992] Trees, mainly crossover, proportionate selection

20

Appendix: Evolution StrategyAppendix: Evolution Strategy

Evolution Strategy (ES)Evolution Strategy (ES)

Problem of real-valued optimizationFind extremum (minimum) of function F(X): Rn ->R

Operate directly on real-valued vector X Generate new solutions through Gaussian

mutation of all components Selection mechanism for determining new parents

(C) 2000-2009 SNU CSE Biointelligence Lab 22

ES: RepresentationES: Representation

One individual:

The three parts of an individual:

Ixxa nnn

,,,,,,,, 111

x

: Object variables

: Standard deviations

: Rotation angles

Fitness

Variances

Covariances

)(xf

x

(C) 2000-2009 SNU CSE Biointelligence Lab 23

, where rx, r , r {-, d, D, i, I, g, G}, e.g. rdII rrr x

r

GiSiTiiS

giSiTiS

IiSiTiS

iiSiTiS

DiTiS

diTiS

iS

i

rxxx

rxxx

rxxx

rxxx

rxx

rxx

rx

x

i

i

i

teintermedia dgeneralize panmictic)(

teintermedia dgeneralize)(

teintermedia panmictic2/)(

teintermedia2/)(

discrete panmicticor

discreteor

ionrecombinat no

,,,

,,,

,,,

,,,

,,

,,

,

ES: Operator - RecombinationES: Operator - Recombination

(C) 2000-2009 SNU CSE Biointelligence Lab 24

m{,’,} : I I is an asexual operator. n = n, n = n(n-1)/2

1 < n < n, n = 0

n = 1, n = 0

)),(,0(

)1,0(

))1,0()1,0(exp(

CNxx

N

NN

jjj

iii

0873.0

2

2

1

1

n

n

)1,0(

))1,0()1,0(exp(

iiii

iii

Nxx

NN

)1,0(

))1,0(exp( 0

iii Nxx

N

n/10

ES: Operator - MutationES: Operator - Mutation

(C) 2000-2009 SNU CSE Biointelligence Lab 25

ES: Illustration of Mutation ES: Illustration of Mutation HyperellipsoidsHyperellipsoids

Line of equal probability density to place an offspring

(C) 2000-2009 SNU CSE Biointelligence Lab 26

ES: Evolution Strategy vs. Genetic ES: Evolution Strategy vs. Genetic AlgorithmAlgorithm

Create random initial population

Evaluate population

Select individuals for variation

Vary

Insert intopopulation

Create random initial population

Evaluate population

Vary

Selection

Insert intopopulation

(C) 2000-2009 SNU CSE Biointelligence Lab 27

Part II: Genetic ProgrammingPart II: Genetic Programming

OverviewOverview

Genetic Programming Tree-based Representations Setting Up a Genetic Programming Run Example: Wall-Following Robot Result

29(C) 2000-2009 SNU CSE Biointelligence Lab

(C) 2000-2009 SNU CSE Biointelligence Lab

Genetic Programming (GP)Genetic Programming (GP)

GP is an domain-independent method that evolves a population of programs to solve a problem.

GP uses variable-size tree-representations rather than fixed-length strings of binary values in typical GA.

GP has been successful in many domains.

30

(C) 2000-2009 SNU CSE Biointelligence Lab

Tree-based Representations (1/6)Tree-based Representations (1/6)

Function set: internal nodes Functions, predicates, or actions which take one or

more arguments

Terminal set: leaf nodes Program constants, actions, or functions which take no

arguments

S-expression: (+ 3 (/ ( 5 4) 7))

Terminals = {3, 4, 5, 7}Functions = {+, , /}

31

(C) 2000-2009 SNU CSE Biointelligence Lab

Tree-based Representations (2/6)Tree-based Representations (2/6)

Trees can represent: Arithmetic formula

Logical formula

Program

And many others depending on the definition of terminals and nonterminals.

15)3(2

yx

(x true) (( x y ) (z (x y)))

i =1;while (i < 20){

i = i +1}

32

(C) 2000-2009 SNU CSE Biointelligence Lab

Tree-based Representations (3/6)Tree-based Representations (3/6)

15)3(2

yx

33

(C) 2000-2009 SNU CSE Biointelligence Lab

Tree-based Representations (4/6)Tree-based Representations (4/6)

(x true) (( x y ) (z (x y)))

34

(C) 2000-2009 SNU CSE Biointelligence Lab

Tree-based Representations (5/6)Tree-based Representations (5/6)

i =1;while (i < 20){

i = i +1}

35

(C) 2000-2009 SNU CSE Biointelligence Lab

Tree-based Representations (6/6)Tree-based Representations (6/6)

In GA, ES, EP chromosomes are linear structures (bit strings, integer string, real-valued vectors, permutations)

Tree shaped chromosomes are non-linear structures.

In GA, ES, EP the size of the chromosomes is fixed.

Trees in GP may vary in depth and width.

36

Setting up a GP RunSetting up a GP Run

Users need to specify:1. The terminal / function set

2. The fitness measure

3. Algorithm parameters to control the run Population size, maximum number of generations Selection / variation operators and their probabilities The termination criterion Maximum depth of a GP tree, etc.

37(C) 2000-2009 SNU CSE Biointelligence Lab

(C) 2000-2009 SNU CSE Biointelligence Lab

Example: Wall-Following Robot Example: Wall-Following Robot (Step 1)(Step 1) Program Representation in GP

Functions AND (x, y) = 0 if x = 0; else y OR (x, y) = 1 if x = 1; else y NOT (x) = 0 if x = 1; else 1 IF (x, y, z) = y if x = 1; else z

Terminals Actions: move the robot one cell to each direction

{north, east, south, west} Sensory input: its value is 0 whenever the coressponding cell is

free for the robot to occupy; otherwise, 1. {n, ne, e, se, s, sw, w, nw}

38

(C) 2000-2009 SNU CSE Biointelligence Lab

Program ExampleProgram Example

39

Example: Wall-Following Robot Example: Wall-Following Robot (Step 1)(Step 1) Be careful when specifying function / terminal set.

To avoid syntactic error All programs in the initial population should be valid,

executable programs. The genetic operators during the run should produce valid,

executable programs as offspring.

To avoid run-time error All functions can take any terminal or the results produced by

any other functions as input.

40(C) 2000-2009 SNU CSE Biointelligence Lab

Example: Wall-Following Robot Example: Wall-Following Robot (Step 2)(Step 2) Fitness measures can be

Error between program’s output and the desired output. Accuracy in recognizing patterns or classifying objects into

classes. Payoff a game-playing program produces.

Often each program is executed over a representative sample of fitness cases.

In our wall-following robot problem the number of cells next to the wall that are visited during 60

steps over 10 independent runs. Perfect score (320) : One Run (32) 10 randomly chosen starting points

41(C) 2000-2009 SNU CSE Biointelligence Lab

Example: Wall-Following Robot Example: Wall-Following Robot (Step 3)(Step 3) Genetic operators – crossover (subtree exchange)

+

b

a b

+

b

+

a a b+

a b

a b

+

b

+

a

b

42(C) 2000-2009 SNU CSE Biointelligence Lab

Example: Wall-Following Robot Example: Wall-Following Robot (Step 3)(Step 3) Genetic operators – mutation

(C) 2000-2009 SNU CSE Biointelligence Lab 43

a b

+

b

/

a

+

b

+

b

/

a

-

b a

Example: Wall-Following Robot Example: Wall-Following Robot (Step 3)(Step 3) Population size: 5,000 Termination condition: found perfect solution Creating Next Generation

500 programs (10%) are copied directly into next generation (elitism). Tournament selection

• 7 programs are randomly selected from the population 5,000.• The most fit of these 7 programs is chosen.

4,500 programs (90%) are generated by crossover. Parents are each chosen by tournament selection.

In this example, mutation was not used.

(C) 2000-2009 SNU CSE Biointelligence Lab 44

Example: Wall-Following Robot Example: Wall-Following Robot (Step 3)(Step 3)

(C) 2000-2009 SNU CSE Biointelligence Lab 45

(C) 2000-2009 SNU CSE Biointelligence Lab

Result (1/5)Result (1/5) Generation 0

The most fit program (fitness = 92) Starting in any cell, this program moves east until it reaches a

cell next to the wall; then it moves north until it can move east again or it moves west and gets trapped in the upper-left cell.

46

(C) 2000-2009 SNU CSE Biointelligence Lab

Result (2/5)Result (2/5)

Generation 2 The most fit program (fitness = 117)

Smaller than the best one of generation 0, but it does get stuck in the lower-right corner.

47

(C) 2000-2009 SNU CSE Biointelligence Lab

Result (3/5)Result (3/5)

Generation 6 The most fit program (fitness = 163)

Following the wall perfectly but still gets stuck in the bottom-right corner.

48

(C) 2000-2009 SNU CSE Biointelligence Lab

Result (4/5)Result (4/5)

Generation 10 The most fit program (fitness = 320)

Following the wall around clockwise and moves south to the wall if it doesn’t start next to it.

49

(C) 2000-2009 SNU CSE Biointelligence Lab

Result (5/5)Result (5/5) Fitness Curve

Fitness as a function of generation number The progressive (but often small) improvement from

generation to generation

50

Part III: Advanced Topics and Part III: Advanced Topics and ApplicationsApplications

OverviewOverview

Theoretical topics Mathematical Models of Simple Genetic Algorithms Bloat Phenomena in Genetic Programming

Applications Summary

52(C) 2000-2009 SNU CSE Biointelligence Lab

Mathematical Models of Simple GAs (1/7)Mathematical Models of Simple GAs (1/7)

Based on (Vose & Liepins, 1991). The model simple GA

1. Start with a random population of binary strings of length l.

2. Calculate the fitness f(x) of each string x in the population.

3. Choose (with replacement) two parents from the population with probability proportional to each string’s relative fitness in the population.

4. Crossover the two parents (at single random point) with probability pc to from two offspring and discard one at random.

5. Mutate each bit in the selected offspring with probability pm and replace it in the new population.

6. Go to Step 3 until new population is complete.

7. Go to Step 1.

53(C) 2000-2009 SNU CSE Biointelligence Lab

Notations Each string is represented by binary string between 0

and 2l-1.

Mathematical Models of Simple GAs (2/7)Mathematical Models of Simple GAs (2/7)

1 1

1 1

0 1

1 0

)6667.0,1667.0,1667.0,0()(

)5.0,25.0,25.0,0()(

ts

tpProportion of string i in the population

The selection probability of string i,assuming that fitness is equal to the number of 1’s in the string.

12

0)(

)()( l

jtpF

tpFts

)(

for 0

,

,

ifF

jiF

ii

ji

54(C) 2000-2009 SNU CSE Biointelligence Lab

Mathematical Models of Simple GAs (3/7)Mathematical Models of Simple GAs (3/7)

GA with selection only. Expectation of next population is equal to the selection

probabilities.)())1(( tstpE

)(~))1((

)1(~)1(

tsFtsE

tpFts

55(C) 2000-2009 SNU CSE Biointelligence Lab

Mathematical Models of Simple GAs (4/7)Mathematical Models of Simple GAs (4/7)

Including crossover and mutation. Define recombination matrix M for crossover and

mutation. ri,j(k) – the probability that string k will be produced,

given that string i and j are selected to mate.

Defining ri,j(k) and M is tricky. We will show defining ri,j(0) only.

ji

jijik krtststpE,

, )()()())1((

56(C) 2000-2009 SNU CSE Biointelligence Lab

Mathematical Models of Simple GAs (5/7)Mathematical Models of Simple GAs (5/7)

Defining ri,j(0) Case 1: crossover does not occur and the selected

offspring is mutated to all zeros. Case 2: crossover occurs and the selected offspring is

mutated to all zeros.

Case 1 |i|: the number of 1’s in a string i. The probability that i be mutated to all zeros

|||| )1( ilm

im pp

|||||||| )1()1(12

1 jlm

jm

ilm

imc ppppp

57(C) 2000-2009 SNU CSE Biointelligence Lab

Mathematical Models of Simple GAs (6/7)Mathematical Models of Simple GAs (6/7)

Case 2 Temporary definition

|h|=|i|-|i2|+|j2| & |k|=|j|-|j2|+|i2|.

But, gives the number of 1’s in rightmost c bits of i.

Thus,

i: 0 0 0 1 0 1 0 1

j: 1 1 1 0 1 0 1 0

h: 0 0 0 0 1 0 1 0

k: 1 1 1 1 0 1 0 1

i1 i2

j1 j2

1

1

|||||||| )1()1(1

1

2

1 l

c

klm

km

hlm

hmc pppp

lp

ii c )^12(2 i: 0 0 0 0 1 0 1 0

25-1: 0 0 0 1 1 1 1 1

cjicji

cccji

jkih

jiji

,,,,

22,,

and Then,

)^12()^12(

)1/( mm pp

58(C) 2000-2009 SNU CSE Biointelligence Lab

1

1

1

1,

,,,,

11

11

2

)1()0(

l

c

cc

jl

c

cc

il

mji

cjicji

l

pp

l

pp

pr

Mathematical Models of Simple GAs (7/7)Mathematical Models of Simple GAs (7/7)

For the rest of derivation of ri,j(0) and M, refer to (Vose & Liepins, 1991).

59(C) 2000-2009 SNU CSE Biointelligence Lab

Bloat Phenomena in GP (1/3)Bloat Phenomena in GP (1/3)

Bloat Program growth without (significant) return in terms of

fitness.

Fitness

Program size

60(C) 2000-2009 SNU CSE Biointelligence Lab

Bloat Phenomena in GP (2/3)Bloat Phenomena in GP (2/3)

Why does it happen? No certain explanation. Replication accuracy theory

GP evolves towards (bloated) representations that increase replication accuracy.

Crossover bias theory Short programs are less fit than long ones long programs

have a selective advantage bloat

61(C) 2000-2009 SNU CSE Biointelligence Lab

Bloat Phenomena in GP (3/3)Bloat Phenomena in GP (3/3)

Techniques limiting bloat Fixed size or depth limit: programs exceeding the limit

are discarded and a parent is kept. Dangerous: acts as advantage for programs that violate the

limit.

Parsimony pressure: a penalty term for larger programs is added to the fitness value.

(Fitness_parsimony) = (Fitness_raw) – c * (program_size)

62(C) 2000-2009 SNU CSE Biointelligence Lab

Part IV: ApplicationsPart IV: Applications

(C) 2000-2009 SNU CSE Biointelligence Lab

Applications of ECApplications of EC

Numerical, Combinatorial Optimization System Modeling and Identification Planning and Control Engineering Design Data Mining Machine Learning Artificial Life

64

Co-evolving Soccer Softbots (1/5)Co-evolving Soccer Softbots (1/5)

At RoboCup there are two "leagues": the "real" robot league and the "virtual" softbot league

How do you do this with GP? GP breeding strategies: homogeneous and heterogeneous Decision of the basic set of function with which to evolve players Creation of an evaluation environment for our GP individuals

Application Example 1Application Example 1

Co-evolvingCo-evolving Soccer Softbots Soccer Softbots With Genetic With Genetic ProgrammingProgramming

(C) 2000-2009 SNU CSE Biointelligence Lab 65

Co-evolving Soccer Softbots (2/5)Co-evolving Soccer Softbots (2/5)

Initial Random Population

Application Example 1Application Example 1

(C) 2000-2009 SNU CSE Biointelligence Lab 66

Co-evolving Soccer Softbots (3/5)Co-evolving Soccer Softbots (3/5)

Kiddie Soccer

Application Example 1Application Example 1

(C) 2000-2009 SNU CSE Biointelligence Lab 67

Co-evolving Soccer Softbots (4/5)Co-evolving Soccer Softbots (4/5)

Learning to Block the Goal

Application Example 1Application Example 1

(C) 2000-2009 SNU CSE Biointelligence Lab 68

Co-evolving Soccer Softbots (5/5)Co-evolving Soccer Softbots (5/5)

Becoming Territorial

Application Example 1Application Example 1

(C) 2000-2009 SNU CSE Biointelligence Lab 69

Evolutionary ArtsEvolutionary Arts

Exploits the process of evolution to create an artwork according to an evolutionary algorithm.

Selection may be done by the viewer explicitly by selecting individuals which are aesthetically pleasing, or implicitly according to the length of time a viewer spends near a piece of evolving art.

EvoMUSART workshops 2009 http://evostar.na.icar.cnr.it/EvoWorkshops/

EvoMUSART/EvoMUSART.html

Application Example 2Application Example 2

70(C) 2000-2009 SNU CSE Biointelligence Lab

Part V: Summary & Further Part V: Summary & Further InformationInformation

(C) 2000-2009 SNU CSE Biointelligence Lab

Recapitulation of EARecapitulation of EA

EAs fall into the category of “generate and test” algorithms.

They are stochastic, population-based algorithms. Variation operators (recombination and mutation)

create the necessary diversity and thereby facilitate novelty.

Selection reduces diversity and acts as a force pushing quality.

Fundamental trade-off between exploration and exploitation

72

Exploration vs. ExploitationExploration vs. Exploitation

There are many possibilities to set the parameters to increase the explorative capability of an EA Increase variation probability

Increase mutation rate Increase crossover rate Increase population size

Decrease selection pressure Add noise to fitness function Add noise in selection Increase rank ratio in ranking selection Decrease tournament size in tournament selection

Important is the combined effect of various parameter settings.

(C) 2000-2009 SNU CSE Biointelligence Lab 73

(C) 2000-2009 SNU CSE Biointelligence Lab

Typical Behavior of an EATypical Behavior of an EA

Phases in optimizing on a 1-dimensional fitness landscape

Early phase:

quasi-random population distribution

Mid-phase:

population arranged around/on hills

Late phase:

population concentrated on high hills

74

Are Long Runs Beneficial?Are Long Runs Beneficial?

(C) 2000-2009 SNU CSE Biointelligence Lab 75

Be

st fi

tne

ss in

po

pula

tion

Time (number of generations)

Progress in 1st half

Progress in 2nd half

Answer: - It depends how much you want the last bit of progress - It may be better to do more shorter runs

(C) 2000-2009 SNU CSE Biointelligence Lab

Scale of “all” problems

Per

form

ance

of

met

hods

on

prob

lem

s

Random search

Special, problem tailored method

Evolutionary algorithm

EAs as Problem SolversEAs as Problem Solvers

76

(C) 2000-2009 SNU CSE Biointelligence Lab

Advantages of ECAdvantages of EC

No presumptions w.r.t. problem space Widely applicable Low development & application costs Easy to incorporate other methods Solutions are interpretable (unlike NN) Can be run interactively, accommodate user

proposed solutions Provide many alternative solutions

77

(C) 2000-2009 SNU CSE Biointelligence Lab

Disadvantages of ECDisadvantages of EC

No guarantee for optimal solution within finite time

Weak theoretical basis May need parameter tuning Often computationally expensive, i.e. slow

78

(C) 2000-2009 SNU CSE Biointelligence Lab

Further Information on ECFurther Information on EC

Conferences IEEE Congress on Evolutionary Computation (CEC) Genetic and Evolutionary Computation Conference (GECCO) Parallel Problem Solving from Nature (PPSN) Foundation of Genetic Algorithms (FOGA) EuroGP, EvoCOP, and EvoWorkshops Int. Conf. on Simulated Evolution and Learning (SEAL)

Journals IEEE Transactions on Evolutionary Computation Evolutionary Computation Genetic Programming and Evolvable Machines

79

(C) 2000-2009 SNU CSE Biointelligence Lab

ReferencesReferences

Evolutionary Computation by Kenneth A. De Jong, 2006. Evolutionary Computation: Toward a New Philosophy of Machine Intel

ligence, Third Edition (IEEE Press Series on Computational Intelligence) by David B. Fogel, 2005,

Introduction to Evolutionary Computing by A. E. Eiben and J. E Smith, Springer, 2003.

Genetic Programming: On the Programming of Computers by Means of Natural Selection (Complex Adaptive Systems) by John R. Koza, 1992.

Genetic Programming: An Introduction by W. Banzhaf, P. Nordin, R. Keller, and F. Francone, Morgan Kaufmann, 1997.

A Field Guide to Genetic Programming by R. Poli and W. B. Langdon, 2008. Online free book – http://www.gp-field-guide.org.uk/

80