Professional Documents
Culture Documents
De PDF
De PDF
DIFFERENTIAL EVOLUTION
DE
Outline
Rationale
Hystorical notes
DE basics
Implementation (Matlab code)
Improvement strategies
Constraint handling
Conclusions
Rationale
Why are stochastic methods needed?
T [s]
Solver
0.15
Simple analytical
1.5
Complex analytical
15
2d FEM
Hystorical notes
Differential Evolution: what and when
R. Storn and K. Price, Differential
Evolution - A Simple and Efficient
Adaptive Scheme for Global
Optimization over Continuous
Spaces, Tech. Report, International
Computer Science Institute
(Berkeley), 1995.
R. Storn and K. Price, Differential
Evolution A Simple and Efficient
Heuristic for global Optimization
over Continuous Spaces, Journal
of Global Optimization, vol. 11, Dec.
1997, pp. 341-359.
DE Basics
Algorithm: Typical evolutionary scheme
DE Basics
Mutation: add difference vector(s) to a base individual in
order to explore the search space
DE/rand/1
DE/best/1
DE/rand to best/1
DE/curr. to best/1
DE/rand/2
DE/best/2
vi
vi
vi
vi
multiobjective ???
mutation factor
6
DE Basics
Recombination: mix successful solutions from the
previous generation with current donors
ui,j =
trial
vi,j
xi,j
target
if randi,j CR or j = irand
else
donor
crossover ratio
DE Basics
Selection: Greedy scheme is key for fast convergence of DE
xk+1
=
i
uki
k
xi
Matlab code
DE
So far so good, but what about:
Mutation strategy ?
Mutation factor ?
Crossover ratio ?
What impact do they have ?
Can general rules be found or is fiddling necessary?
Can other ideas be incorporated ?
10
DE/rand/1/bin
f (x) =
N
1
i=1
Low-dimensional
5000 eval.
High-dimensional
11
DE/rand/2/bin
Add two difference vectors instead of one
DE/best/1/bin
Always start from best
vi = xbest + F1 (xr2 xr3 )
DE/best/2/bin
Always start from best but use two difference vectors
vi = xbest + F1 (xr2 xr3 + xr4 xr5 )
DE/rand-to-best/1/bin
Include movement to best (analogy with PSO)
vi = xr1 + F1 (xr2 xr3 ) + F2 (xbest xr1 )
Comparison
And the winner is.. DE/current-to-best/1/bin
17
18
Changing F
Improve solution by changing mutation factor
Population size
Smaller populations work well
Elitism (NEW)
Compare trial not only with target but also with worst
Coevolution
Several populations, each working on a subset of the
degrees of freedom
Population 1:
x=(x1,2)
After iteration:
xbest=(1.2,2), f=9.9
Current best:
x=(1,2), f=10.0
Hopefully:
x=( 1.2, 2.5 ), f=9.0
Population 2:
x=(1,x2)
After iteration:
xbest=(1,2.5), f=9.5
Coevolution
Several populations, each working on a subset of the
degrees of freedom
Faster convergence
Useful
23
Final comparison
Not mentioned here:
Summing up
24
Conclusions
Hybrid DE can efficiently solve problems with:
N. eval.
T eval. [s]
Solver
25.000
20
500.000
idem
2.500
20
50.000
30
idem
Average 2d FEM
250
20
5.000
300 = 5 min
idem
Simple 3d FEM
25
Additional material
If time permits
26
DE vs. PSO
27
Constraint handling
Existing approaches:
Lagrange multipliers (continuous only)
Penalty (value?)
Elegant solution:
Domination in a single-objective context
Incorporate in selection operator:
If both candidate and target are feasible choose best
If candidate/target is feasible and target/candidate unfeasible choose
feasible
If both candidate and target are unfeasible choose the least
unfeasible
28
Multiobjective DE
Proposed method:
DE/current-to-best/aggressive/elitist/multipopulation with following
modifications:
All targets and all trial individuals are non-dominated,least-crowded
sorted in the selection phase (like NSGA-II)
Best half evolve to next generation
best individual is randomly selected from level-1 front
29
Multiobjective DE
Analytical benchmark (KUR100)
30
Constrained single-objective DE
Motor benchmark
!!#
!"#
!"$
!$!
Method
Reference
3.99
1.24
31%
TRIBES (PSO)
3.82
0.46
12%
DE
3.95
0.43
11%
31
Constrained multi-objective DE
Motor benchmark
Maximize average torque / Minimize torque ripple
32