0% found this document useful (0 votes)
156 views35 pages

Evolutionary Computing Slides

This document discusses an introduction to evolutionary computing. It describes the main components of evolutionary algorithms including populations, representations, fitness functions, selection, crossover and mutation. It also provides an example of applying evolutionary computing to solve the 8 queens problem.

Uploaded by

phoebezz
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
156 views35 pages

Evolutionary Computing Slides

This document discusses an introduction to evolutionary computing. It describes the main components of evolutionary algorithms including populations, representations, fitness functions, selection, crossover and mutation. It also provides an example of applying evolutionary computing to solve the 8 queens problem.

Uploaded by

phoebezz
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 35

See

discussions, stats, and author profiles for this publication at: https://www.researchgate.net/publication/216300585

Introduction To Evolutionary Computing


Book in Natural Computing Series January 2003
DOI: 10.1007/978-3-662-05094-1

CITATIONS

READS

2,166

1,636

2 authors:
A. E. Eiben

Jim Smith

VU University Amsterdam

University of the West of England, Bristol

303 PUBLICATIONS 9,328 CITATIONS

114 PUBLICATIONS 5,159 CITATIONS

SEE PROFILE

SEE PROFILE

Available from: A. E. Eiben


Retrieved on: 04 May 2016

Introduction to
Evolutionary Computing II
A.E. Eiben
Free University Amsterdam
http://www.cs.vu.nl/~gusz/

with thanks to the EvoNet Training Committee and its Flying Circus

Contents

The evolutionary mechanism and its


components
Examples: the 8-queens problem
Working of an evolutionary algorithm
EC dialects and beyond
Advantages & disadvantages of EC
Summary

A.E. Eiben, Introduction to EC II

EvoNet Summer School 2002

The main evolutionary cycle


Parent selection

Parents

Intialization

Recombination
(crossover)
Population

Mutation
Termination

Offspring
Survivor selection
A.E. Eiben, Introduction to EC II

EvoNet Summer School 2002

The two pillars of evolution


There are two competing forces active
Increasing population
diversity by genetic
operators
mutation
recombination
Push towards novelty

A.E. Eiben, Introduction to EC II

Decreasing population
diversity by selection
of parents
of survivors

Push towards quality

EvoNet Summer School 2002

Components:
representation / individuals (1)
Individuals have two levels of existence
phenotype: object in original problem context, the outside
genotype: code to denote that object, the inside
(a.k.a. chromosome, digital DNA):
phenotype:

genotype:
a d c a a c b

The link between these levels is called representation

A.E. Eiben, Introduction to EC II

EvoNet Summer School 2002

Components:
representation / individiuals (2)
Phenotype space

Genotype space
Encoding
(representation)

R0c01cd
B0c01cd

G0c01cd

Decoding
(inverse representation)

A.E. Eiben, Introduction to EC II

EvoNet Summer School 2002

Components:
representation / individuals (3)

Sometimes producing
the phenotype from the
genotype is a simple
and obvious process.
Other times the
genotype might be a set
of parameters to some
algorithm, which works
on the problem data to
produce the phenotype

A.E. Eiben, Introduction to EC II

Genotype

Problem
Data

Growth
Function

Phenotype

EvoNet Summer School 2002

Components:
representation / individuals (4)

Search takes place in the genotype space


Evaluation takes place in the phenotype space
Repr: Phenotypes Genotypes
Fitness(g) = Value(repr-1(g))
Repr must be invertible, in other words decoding must be
injective (Q: surjective?)
Role of representation: defines objects that can be
manipulated by (genetic) operators
Note back on Darwinism: no mutations on phenotypic
level! (right term: small random variations)
A.E. Eiben, Introduction to EC II

EvoNet Summer School 2002

Components: evaluation, fitness


measure
Role:
represents the task to solve, the requirements to adapt to
enables selection (provides basis for comparison)

Some phenotypic traits are advantageous, desirable,


e.g. big ears cool better,

These traits are rewarded by more offspring that will


expectedly carry the same trait
A.E. Eiben, Introduction to EC II

EvoNet Summer School 2002

Components: population
Role: holds the candidate solutions of the problem as
individuals (genotypes)
Formally, a population is a multiset of individuals,
i.e. repetitions are possible
Population is the basic unit of evolution,
i.e., the population is evolving, not the individuals
Selection operators act on population level
Variation operators act on individual level
A.E. Eiben, Introduction to EC II

10

EvoNet Summer School 2002

Components: selection
Role:

Gives better individuals a higher chance of


becoming parents
surviving

Pushes population towards higher fitness


E.g. roulette wheel selection

1/6 = 17%

fitness(A) = 3
fitness(B) = 1

3/6 = 50%

2/6 = 33%

fitness(C) = 2
A.E. Eiben, Introduction to EC II

11

EvoNet Summer School 2002

Components: Mutation
Role: causes small (random) variance

before

1 1 1 1 1 1 1

after

1 1 1 0 1 1 1

A.E. Eiben, Introduction to EC II

12

EvoNet Summer School 2002

Components: Recombination
Role: combines features from different sources

cut

cut

1 1 1 1 1 1 1

0 0 0 0 0 0 0

1 1 1 0 0 0 0

0 0 0 1 1 1 1

A.E. Eiben, Introduction to EC II

13

parents

offspring

EvoNet Summer School 2002

Example: the 8 queens problem

Place 8 queens on an 8x8 chessboard in


such a way that they cannot check each other
A.E. Eiben, Introduction to EC II

14

EvoNet Summer School 2002

The 8 queens problem


Representation

Phenotype:
a board configuration

Genotype:
a permutation of
the numbers 1 - 8
A.E. Eiben, Introduction to EC II

Obvious mapping

1 3 5 2 6 4 7 8
15

EvoNet Summer School 2002

The 8 queens problem


Fitness evaluation

Penalty of one queen:


the number of queens she can check.
Penalty of a configuration:
the sum of the penalties of all queens.

Note: penalty is to be minimized


Fitness of a configuration:
inverse penalty to be maximized
A.E. Eiben, Introduction to EC II

16

EvoNet Summer School 2002

The 8 queens problem


Mutation
Small variation in one permutation, e.g.:
swapping values of two randomly chosen positions, or
inverting a randomly chosen segment

1 3 5 2 6 4 7 8

A.E. Eiben, Introduction to EC II

1 3 7 2 6 4 5 8

17

EvoNet Summer School 2002

The 8 queens problem


Recombination
Combining two permutations into two new permutations:
choose random crossover point
copy first parts into children
create second part by inserting values from other
parent:
in the order they appear there
beginning after crossover point
skipping values already in child

1 3 5 2 6 4 7 8
8 7 6 5 4 3 2 1
A.E. Eiben, Introduction to EC II

1 3 5 4 2 8 7 6
8 7 6 2 4 1 3 5
18

EvoNet Summer School 2002

The 8 queens problem


Selection
Parent selection:
Roulette wheel selection, for instance
Survivor selection (replacement)
When inserting a new child into the population, choose
an existing member to replace by:

sorting the whole population by decreasing fitness

enumerating this list from high to low

replacing the first with a fitness lower than the given child

Note: selection works on fitness values, no need to adjust it


to representation
A.E. Eiben, Introduction to EC II

19

EvoNet Summer School 2002

Working 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
A.E. Eiben, Introduction to EC II

20

EvoNet Summer School 2002

Best fitness in population

Typical run

Time (number of generations)

Typical run of an EA shows so-called anytime behavior


A.E. Eiben, Introduction to EC II

21

EvoNet Summer School 2002

Best fitness in population

Long runs?

Progress in 2nd half

Progress in 1st half

Time (number of generations)

A.E. Eiben, Introduction to EC II

22

EvoNet Summer School 2002

Best fitness in population

Smart initialisation?

F: fitness after smart initialisation


T: time needed to reach level F after random initialisation

Time (number of generations)

A.E. Eiben, Introduction to EC II

23

EvoNet Summer School 2002

Performance of methods on problems

Goldberg89 view

Special, problem tailored method


Evolutionary algorithm

Random search

Scale of all problems


A.E. Eiben, Introduction to EC II

24

EvoNet Summer School 2002

EAs and domain knowledge

Trend in the 90ies: adding problem specific knowledge


to EAs (special variation operators, repair, etc)
Result: EA performance curve deformation:

better on problems of the given type


worse on problems different from given type

Amount of added knowledge is variable

A.E. Eiben, Introduction to EC II

25

EvoNet Summer School 2002

Michalewicz96 view
Performance of methods on problems

EA 4

EA 2

EA 3

EA 1

Scale of all problems


A.E. Eiben, Introduction to EC II

26

EvoNet Summer School 2002

General EA framework and dialects


There is a general, formal EA framework (omitted here)

In theory:

every EA is an instantiation of this framework, thus:


specifying a particular EA or a type of EAs (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)
why care about the taxonomy, or label?

A.E. Eiben, Introduction to EC II

27

EvoNet Summer School 2002

Genetic algorithms &


genetic programming
Genetic algorithms (USA, 70s, Holland, DeJong):

Typically applied to: discrete optimization


Attributed features:

not too fast


good solver for combinatorial problems

Special: many variants, e.g., reproduction models, operators

Genetic programming (USA, 90s, 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

A.E. Eiben, Introduction to EC II

28

EvoNet Summer School 2002

Evolution strategies &


evolutionary programming
Evolution strategies (Germany, 70s, Rechenberg, Schwefel)

Typically applied to:

Attributed features:

fast & good optimizer for real-valued optimization


relatively much theory

Special:

numerical optimization

self-adaptation of (mutation) parameters standard

Evolutionary programming (USA, 60s, Fogel et al.)

Typically applied to: machine learning (old EP), optimization


Attributed features:

very open framework: any representation and mutation ops OK

Special:

no recombination
self-adaptation of parameters standard (contemporary EP)

A.E. Eiben, Introduction to EC II

29

EvoNet Summer School 2002

Beyond dialects

Field merging from the early 1990s


No hard barriers between dialects, many
hybrids, outliers
Choice for dialect should be motivated by given
problem
Best practical approach: choose representation,
operators, population model, etc. pragmatically
(and end up with an unclassifiable EA)
There are general issues for EC as a whole

A.E. Eiben, Introduction to EC II

30

EvoNet Summer School 2002

Advantages 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
Provides many alternative solutions
Intrinsic parallelism,straightforward parallel
implementations

A.E. Eiben, Introduction to EC II

31

EvoNet Summer School 2002

Disadvantages of EC

No guarantee for optimal solution within


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

A.E. Eiben, Introduction to EC II

32

EvoNet Summer School 2002

The performance of EC

Acceptable performance at acceptable costs on a wide range


of problems
EC niche (where supposedly superior to other techniques):
complex problems with one or more of the following features

many free parameters


complex relationships between parameters
mixed types of parameters (integer, real)
many local optima
multiple objectives
noisy data
changing conditions (dynamic fitness landscape)

A.E. Eiben, Introduction to EC II

33

EvoNet Summer School 2002

Summary
Evolutionary Computation:
is a method, based on biological metaphors,
of breeding solutions to problems
has been shown to be useful in a number of
areas
could be useful for your problem
its easy to give it a try
is FUN
A.E. Eiben, Introduction to EC II

34

EvoNet Summer School 2002

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy