Transcript Lecture 4

Evolutionary Computational
Intelligence
Lecture 4:
Real valued GAs and
ES
Ferrante Neri
University of Jyväskylä
1
Real valued GAs and ES
Real valued problems


2
Many problems occur as real valued problems, e.g.
continuous parameter optimisation f :  n  
Illustration: Ackley’s function (often used in EC)
Real valued GAs and ES
Mapping real values on bit strings
z  [x,y]   represented by {a1,…,aL}  {0,1}L
•
•
[x,y]  {0,1}L must be invertible (one phenotype per
genotype)
: {0,1}L  [x,y] defines the representation
 ( a 1 ,..., a L )  x 


3

y x
2 1
L
L 1
 ( a L j  2 )  [ x, y ]
j
j0
Only 2L values out of infinite are represented
L determines possible maximum precision of solution
High precision  long chromosomes (slow
evolution)
Real valued GAs and ES
Floating point mutations 1
General scheme of floating point mutations
x  x1 , ..., x l  x   x1 , ..., x l
x i , x i  LB i , UB i 

Uniform mutation:
x i drawn randomly

4
(uniform)
from
LB i , UB i 
Analogous to bit-flipping (binary) or random resetting
(integers)
Real valued GAs and ES
Floating point mutations 2

Non-uniform mutations:
–
–
–
–
5
Many methods proposed,such as time-varying
range of change etc.
Most schemes are probabilistic but usually only
make a small change to value
Most common method is to add random deviate
to each variable separately, taken from N(0, )
Gaussian distribution and then curtail to range
Standard deviation  controls amount of change
(2/3 of deviations will lie in range (-  to + )
Real valued GAs and ES
Crossover operators for real valued GAs

Discrete:
–
–

each allele value in offspring z comes from one of its parents
(x,y) with equal probability: zi = xi or yi
Could use n-point or uniform
Intermediate
–
–
–
exploits idea of creating children “between” parents (hence
a.k.a. arithmetic recombination)
zi =  xi + (1 - ) yi
where  : 0    1.
The parameter  can be:
• constant: uniform arithmetical crossover
• variable (e.g. depend on the age of the population)
• picked at random every time
6
Real valued GAs and ES
Single arithmetic crossover
7
•
•
•
Parents: x1,…,xn  and y1,…,yn
Pick a single gene (k) at random,
child1 is:
x1 , ..., x k ,   y k  (1   )  x k , ..., x n
•
reverse for other child. e.g. with  = 0.5
Real valued GAs and ES
Simple arithmetic crossover
•
•
•
Parents: x1,…,xn  and y1,…,yn
Pick random gene (k) after this point mix values
child1 is:
x , ..., x ,   y
 (1   )  x
, ...,   y  (1   )  x
1
k
k 1
k 1
n
n
•
8
reverse for other child. e.g. with  = 0.5
Real valued GAs and ES
Whole arithmetic crossover
9
•
•
Parents: x1,…,xn  and y1,…,yn
child1 is:
•
reverse for other child. e.g. with  = 0.5
a  x  (1  a )  y
Real valued GAs and ES
Box crossover


Parents: x1,…,xn  and y1,…,yn
child1 is:
a  x  (1  a )  y

10
Where α is a VECTOR of numers [0,1]
Real valued GAs and ES
Comparison of the crossovers
11

Arithmetic crossover
works on a line which
connects the two parents

Box crossover works in a
hyper-rectangular where
the two parents are
located in the vertexes
Real valued GAs and ES
Evolution Strategies
Ferrante Neri
University of Jyväskylä
12
Real valued GAs and ES
ES quick overview



Developed: Germany in the 1970’s
Early names: I. Rechenberg, H.-P. Schwefel
Typically applied to:
–

Attributed features:
–
–
–

fast
good optimizer for real-valued optimisation
relatively much theory
Special:
–
13
numerical optimisation
self-adaptation of (mutation) parameters standard
Real valued GAs and ES
ES technical summary tableau
14
Representation
Real-valued vectors
Recombination
Discrete or intermediary
Mutation
Gaussian perturbation
Parent selection
Uniform random
Survivor selection
(,) or (+)
Specialty
Self-adaptation of mutation
step sizes
Real valued GAs and ES
Representation

Chromosomes consist of three parts:
–
–
15
Object variables: x1,…,xn
Strategy parameters:

Mutation step sizes: 1,…,n

Rotation angles: 1,…, n

Not every component is always present

Full size:  x1,…,xn, 1,…,n ,1,…, k 

where k = n(n-1)/2 (no. of i,j pairs)
Real valued GAs and ES
Parent selection



16
Parents are selected by uniform random
distribution whenever an operator needs
one/some
Thus: ES parent selection is unbiased - every
individual has the same probability to be
selected
Note that in ES “parent” means a population
member (in GA’s: a population member
selected to undergo variation)
Real valued GAs and ES
Mutation



Main mechanism: changing value by adding
random noise drawn from normal distribution
x’i = xi + N(0,)
Key idea:
–
–

17
 is part of the chromosome  x1,…,xn,  
 is also mutated into ’ (see later how)
Thus: mutation step size  is coevolving with
the solution x
Real valued GAs and ES
Mutate  first


Net mutation effect:  x,     x’, ’ 
Order is important:
–
–

Rationale: new  x’ ,’  is evaluated twice
–
–

18
first   ’ (see later how)
then x  x’ = x + N(0,’)
Primary: x’ is good if f(x’) is good
Secondary: ’ is good if the x’ it created is good
Reversing mutation order this would not work
Real valued GAs and ES
Mutation case 0: 1/5 success rule

z values drawn from normal distribution N(,)
–
–


 is varied on the fly by the “1/5 success rule”:
This rule resets  after every k iterations by
–
–
–

19
mean  is set to 0
variation  is called mutation step size
 =  / c if ps > 1/5
 =  • c if ps < 1/5
=
if ps = 1/5
where ps is the % of successful mutations, 0.8  c <
1
Real valued GAs and ES
Mutation case 1:
Uncorrelated mutation with one 





20
Chromosomes:  x1,…,xn,  
’ =  • exp( • N(0,1))
x’i = xi + ’ • N(0,1)
Typically the “learning rate”   1/ n½
And we have a boundary rule ’ < 0  ’ =
0
Real valued GAs and ES
Mutants with equal likelihood
Circle: mutants having the same chance to be created
21
Real valued GAs and ES
Mutation case 2:
Uncorrelated mutation with n ’s




Chromosomes:  x1,…,xn, 1,…, n 
’i = i • exp(’ • N(0,1) +  • Ni (0,1))
x’i = xi + ’i • Ni (0,1)
Two learning rate parameters:
–
–


22
’ overall learning rate
 coordinate wise learning rate
  1/(2 n)½ and   1/(2 n½) ½
And i’ < 0  i’ = 0
Real valued GAs and ES
Mutants with equal likelihood
23
Ellipse: mutants having the same chance to be created
Real valued GAs and ES
Mutation case 3:
Correlated mutations




24
Chromosomes:  x1,…,xn, 1,…, n ,1,…, k
where k = n • (n-1)/2
and the covariance matrix C is defined as:
–
cii = i2
–
cij = 0 if i and j are not correlated
–
cij = ½ • ( i2 - j2 ) • tan(2 ij) if i and j are
correlated
Note the numbering / indices of the ‘s
Real valued GAs and ES
Correlated mutations
The mutation mechanism is then:
 ’i = i • exp(’ • N(0,1) +  • Ni (0,1))
 ’j = j +  • N (0,1)

x ’ = x + N(0,C’)
–
–

  1/(2 n)½ and   1/(2 n½) ½ and   5°
i’ < 0  i’ = 0 and

| ’j | >   ’j = ’j - 2  sign(’j)

25
x stands for the vector  x1,…,xn 
C’ is the covariance matrix C after mutation of the  values
Real valued GAs and ES
Mutants with equal likelihood
26
Ellipse: mutants having the same chance to be created
Real valued GAs and ES
Recombination


Creates one child
Acts per variable / position by either
–
–

From two or more parents by either:
–
–
27
Averaging parental values, or
Selecting one of the parental values
Using two selected parents to make a child
Selecting two parents for each position anew
Real valued GAs and ES
Names of recombinations
zi = (xi + yi)/2
Two fixed
parents
Two parents
selected for each
i
Local
intermediary
Global
intermediary
Local
zi is xi or yi
chosen randomly discrete
28
Global
discrete
Real valued GAs and ES
Survivor selection



Applied after creating  children from the 
parents by mutation and recombination
Deterministically chops off the “bad stuff”
Basis of selection is either:
–
–
29
The set of children only: (,)-selection
The set of parents and children: (+)-selection
Real valued GAs and ES
Survivor selection



(+)-selection is an elitist strategy
(,)-selection can “forget”
Often (,)-selection is preferred for:
–
–
–

30
Better in leaving local optima
Better in following moving optima
Using the + strategy bad  values can survive in
x, too long if their host x is very fit
Selection pressure in ES is very high
Real valued GAs and ES
Survivor Selection


31
On the other hand, (,)-selection can lead
to the loss of genotypic information
The (+)-selection can be preferred when
are looking for “marginal” enhancements
Real valued GAs and ES