Title: Evolutionary Algorithms EVO Differential Evolution and Evolutionary Strategies L9
1Evolutionary Algorithms (EVO) Differential
Evolution and Evolutionary Strategies (L9)
- John A Clark
- Professor of Critical Systems
- Non-Standard Computation Group Dept. of Computer
Science - University of York, UK
2Differential Evolution and Evolutionary Strategies
- Two techniques that have found application in
numerical optimisation and mixed-type
optimisations. - Some interesting deviations from previous
techniques.
3Differential Evolution
4Representation
5Maintain Population - NP
We will maintain a population of size NP
6Initialisation
Xi,2
X i,D-1
Xi,D
Different Uniform U(0,1) variable value for each
i and j.
7Recombination
- For each member i of the population G pick
randomly three other different members r1, r2,
and r3
8Recombination and Mutation
- We progressively define the elements of the
temporary candidate Z
9Recombination in Pictures
ki2
Zi
10Selection for Next Generation
11Evolution
12Practical Advice
- Set NP to 10 times the number of parameters
- Set weighting factor F0.8
- Set crossover constant CR0.9.
- Initialize your parameter vectors by exploiting
their full numerical range, i.e. if a parameter
is allowed to exhibit values in the range -100,
100 it's a good idea to pick the initial values
from this range instead of unnecessarily
restricting diversity. - If you experience mis-convergence you usually
have to increase the value for NP, but often you
only have to adjust F. - If you increase NP and simultaneously lower F a
little, convergence is more likely to occur but
generally takes longer, i.e. DE is getting more
robust (there is always a convergence
speed/robustness tradeoff).
http//www.icsi.berkeley.edu/storn/code.html
13Practical Advice
- DE is much more sensitive to the choice of F than
it is to the choice of CR. - CR is more like a fine tuning element.
- High values of CR like CR1 give faster
convergence if convergence occurs. Sometimes,
however, you have to go down as much as CR0 to
make DE robust enough for a particular problem. - F and CR are both generally in the range 0.5,
1. for most problems (F may be greater than 1). - Keep in mind that different problems usually
require different settings for NP, F and CR (have
a look into the different papers to get a feeling
for the settings).
http//www.icsi.berkeley.edu/storn/code.html
14Resources
- Quite a few differential evolution papers (and
other resources, e.g. applets and code) around on
the web. - See the Differential Evolution Homepage
- http//www.icsi.berkeley.edu/storn/code.html
15Evolution strategies
16Evolutionary Strategies
- Developed in 60s and 70s in Germany by Bienert,
Rechenberg, and Schwefel - As with DE the technique has its origins in
numerical optimisation problems. - Some features
- Typically work with real valued vectors
- Mutation taken from a Gaussian (normal)
distribution - Evolution of evolutionary parameters (e.g.
mutation rate) - A wide variety of evolutionary strategies are
available, in some cases a population size of 1
(!!!) is adopted.
17Basic Representation
x1
xn
p1
pk
Vector of real-valued fields
Real-valued evolutionary parameters
x1
xn
s1
x1
xn
s1
sn
Can have additional parameters if we want
correlated mutations
18General Mutation
x1
xn
s1
sn
mutate
x1
xn
s1
sn
mutate
x1
xn
s1
sn
Parameters do not need to mutate at the same rate
as the xs.
19Basic Solution Mutation
- Each field is mutated according to a Gaussian or
normal distribution (mean 0) with standard
deviation s.
t
x1
xn
s
N(0,s)
N(0,s)
t1
x1
xn
s
201/5 Success Rule for updating s
- Determine percentage ps of successful mutations
in past k iterations. - Update ? after every k iterations by
- ? ? / c if ps gt 1/5
- ? ? c if ps lt 1/5
- ? ? if ps 1/5where 0.8 ? c ? 1
(More complex ways to update in multi-parameter
case)
21Early ES
- This had a single parent which gave rise to a
single child by mutation. - Child compared with parent and the better
survives. - This is a local search procedure which is
essentially hill-climbing. - However, the mutation rate is part of the
chromosome and the update strategy for the
standard deviation of the mutation distribution
is updated too. - Can allow bigger jumps to be hypothesised as
progress is impeded. - Note in some forms of annealing the move
function can be dynamic too.
22General Strategy
- Have m parents
- Breed l children (l 7 m is common, high degree
of pressure) - Breeding can take many forms
- Selection of two parents most typically using
uniform distribution - field is average of
parental field values or the value of one of the
parents field values, or - Select two parents for each field of the child..
- Mutation
- Select best m from the resulting expanded pool (
a deterministic cull). Basis of selection is
either - The set of children only (?,?)-selection.
- The set of parents and children (??)-selection
(elitist) - Which would you prefer and why?
23Example Applications of Evolutionary Strategies
- See
- http//www.bionik.tu-berlin.de/user/giani/esdemos/
evo.html - Technical Report by Michael Herdy and Giannino
Patone
24Polynomial Approximation with an Evolution
Strategy
- To a set of datapoints in the two-dimensional
plane a polynomial is to be fitted in such a way,
that all points are described by the polynomial
with minimal error.
Data
25Polynomial Approximation with an Evolution
Strategy
http//www.bionik.tu-berlin.de/user/giani/esdemos/
evo.html
26Polynomial Approximation with an Evolution
Strategy
- (1, 10)-ES a fractional rational polynomial of
degree six has been fitted to a noisy dataset
http//www.bionik.tu-berlin.de/user/giani/esdemos/
evo.html
27Magic Square
- An age old problem.
- Example. Arrange the numbers 1 to 64 in an 8 by 8
grid such that all row sums, column sums, and the
two diagonal sums are equal - Cost function measures deviation from desired
row, column and diagonal sum value (which is
S260).
28Magic Square
http//www.bionik.tu-berlin.de/user/giani/esdemos/
evo.html
29Brachystrochrone- Johann Bernoulli
- Find path between two points between the two
points A and B, on which a movable point P slides
without friction under gravity in the shortest
time. - Often the first problem studied by UG
mathematicians in calculus of variations.
30Brachystrochrone - Johann Bernoulli
- The track is realized by a polygon. The location
of the two points A (Start) and B (Finish)
depends on the difference in height and width of
the track chosen by the operator, they are fixed
during the optimization. - They may be changed between 0 and 5000 mm. As a
default width and height of the track are set
equal to 5000 mm. - Between A and B a number of n pillars is given.
This number may be changed between 1 and 50. The
position of these pillars is changed to optimal
values during the optimization. - According to the chose type of pillar
(equidistant x, equidistant y, variable x and y)
there are n or 2n variables.
31Brachystrochrone
http//www.bionik.tu-berlin.de/user/giani/esdemos/
evo.html
32Conclusions
- Have seen two different types of techniques.
- Both with roots in numerical optimisation.
- Some important deviations, e.g. the evolution of
evolutionary parameters - Idea also adopted in other variants of
techniques we have seen.