An Introduction to Optimization Using Genetic/Evolutionary Algorithms
Part 2 Algorithm Overview with Examples
Alicia Hofler
03/24/2021 Comparison to Standard Techniques
Iterative derivative based method Systematic parameter scan • Local optima • Global optima • Serial • Parallelizable
Genetic and Evolutionary Algorithms: • Iterate through generations (new • Capable of locating global optima populations) • Interleave sampling parameter • Do not need/use derivatives space and analyzing objective • Randomness in variable changes values provides a mechanism to escape • Parallelizable local optima Genetic and Evolutionary Algorithms = smart parameter scans
03/24/2021 2 General Processing Flow
Select End Yes independent Done condition? variables No Initialize Assign Fitness Select pairs population
Evaluate model generation = 0 Crossover and objectives
generation ++ Mutation
• Fitness • Single-objective algorithm – Function of objectives – Differential Evolution (DE) (R. Storn & K. Price, J. Global Optimization 11, 1997) – Rank individuals • Multi-objective algorithms • Selection – Elitist DE (J. Qiang et al, IPAC, 2013) – Fitness-based competition – Non-dominated Sorting Genetic Algorithm II (NSGA-II) (K. Deb, IEEE Trans. • Elitism Evolutionary Computing 6, 2002) – Preferential treatment for best individuals – Strength Pareto Evolutionary Algorithm 2 (SPEA2) (E. Zitzler et al., EUROGEN, 2001)
03/24/2021 3 Crossover or Recombination
Genetic Algorithm Evolutionary Algorithm Binary encoded strings Real-valued vectors parent-1 parent-2 parent-1 2-gene parent-2 2-gene 3-element 3-element chromosome chromosome decision vector decision vector
1110 2710 510 4110 1.1 2.2 3.3 5.5 6.6 7.7 1 0 1 1 0 1 1 0 1 1 0 1 0 1 1 0 1 0 0 1 1.1 2.2 3.3 5.5 6.6 7.7 1 0 1 1 0 1 1 0 1 1 0 1 0 1 1 0 1 0 0 1 1 ⎡6.6 1.2(4.4)⎤ 2 ⎣ ⎦
1 0 1 1 0 0 1 0 0 1 0 1 0 1 1 1 1 0 1 1 0.66 2.2 3.3 5.94 6.6 7.7 offspring-1 offspring-2 1110 910 510 5910
offspring-1 2-gene offspring-2 2-gene Probability density function chromosome chromosome (Optionally, swap vector elements)
03/24/2021 4 Mutation
Genetic Algorithm Evolutionary Algorithm Binary encoded strings Real-valued vectors
2-gene chromosome 4-element decision vector 1110 2710
1 0 1 1 0 1 1 0 1 1 old 1.1 2.2 3.3 4.4 3.3+0.1
1 0 1 0 0 1 1 0 1 1 new 1.1 2.2 3.4 4.4
1010 2710 Mutated 2-gene chromosome
Probability density function
03/24/2021 5 NSGA-II
P=Parent population (10) Q=Offspring population (10) R=Combined population (20) 10 Parent Offspring 8
6
f2 4 • Goal: evenly distributed sample of Pareto optimal front estimate 2 • Fixed Parent and Offspring population sizes
• Fitness: multi-step 0 • Non-dominated sort into fronts, Fi 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
• Crowding distance sort (F3) f1 • Tournament selection for mating pool K. Deb, IEEE Trans. Evolutionary Computing 6, 2002 K. Deb, Multi-Objective Optimization using Evolutionary Algorithms, 2001 03/24/2021 6 SPEA2
t t+1 Archive Archive Archive
Population Population Mating Population (20) Pool 3 A(20) • Goal: broad sample of Pareto optimal front estimate Non-Dom(17) • Fixed Population and Archive sizes 2.5 • Fitness: multi-part f f2 – Raw fitness: sum of strengths of individuals that dominate given individual 2 2 (0=non-dominated) – Density: relative closeness to other individuals (further apart better) 1.5 • Archive – Non-dominated individuals 1 – Back fill with fitter dominated individuals 0.6 0.7 0.8 0.9 – Prune on density f1 f1 • Tournament selection for mating pool E. Zitzler, , et al., EUROGEN 2001 03/24/2021 7 Recall Multi-Objective Example 1
Decision space: x2 vs. x1 Search space: f2 vs. f1 (red and blue box and interior) (red and blue structure and interior) 1 3.5 Pareto optimal front 0.8 3 0.6 2.5 2 2 f x x f 2 0.4 2 2 0.2 1.5 0 1 0.4 0.5 0.6 0.7 0.8 0.9 1 1.1 0.4 0.5 0.6 0.7 0.8 0.9 1 1.1
x1 f1 Minimize f x ,x = x 1 ( 1 2 ) 1 1 Two conflicting objectives Minimize f x ,x = + x 2 ( 1 2 ) 2 x1 subject to 0.5 x 1 ≤ 1 ≤ Decision variable 0 ≤ x ≤ 1 bounds constraints 2
03/24/2021 8 Optimize Multi-Objective Example 1: Generation 1
1 1 SPEA2 0.8 DE & NSGA-II 0.8 0.6 0.6 2 2 x x x x 2 0.4 2 0.4 0.2 0.2 0 0 0.5 0.6 0.7 0.8 0.9 1 0.5 0.6 0.7 0.8 0.9 1 Population: 64 Parent: 128 x1 x1 Archive: 64 Offspring: 128 3 3 Pareto front: 11 Pareto front: 15 2.5 2.5 2 2 f f 2 2 f2 f2 1.5 1.5
1 1
0.5 0.6 0.7 0.8 0.9 1 S.B. van der Geer & M.J. de Loos, 0.5 0.6 0.7 0.8 0.9 1 S. Bleuler, et al., EMO 2003, 2003 http://www.pulsar.nl/gpt, 2014 f1 f1 03/24/2021 9 Optimize Multi-Objective Example 1: Generation 3
1 1 SPEA2 0.8 DE & NSGA-II 0.8 0.6 0.6 2 2
x x x x 2 0.4 2 0.4 0.2 0.2 0 0 0.5 0.6 0.7 0.8 0.9 1 0.5 0.6 0.7 0.8 0.9 1
x1 x1 3 3 Pareto front: 31 Pareto front: 31 2.5 2.5 2 2
f 2 f 2 f2 f2 1.5 1.5
1 1 0.5 0.6 0.7 0.8 0.9 1 0.5 0.6 0.7 0.8 0.9 1
f1 f1 03/24/2021 10 Optimize Multi-Objective Example 1: Generation 5
1 1 SPEA2 0.8 DE & NSGA-II 0.8 0.6 0.6 2 2
x x x x 2 0.4 2 0.4 0.2 0.2 0 0 0.5 0.6 0.7 0.8 0.9 1 0.5 0.6 0.7 0.8 0.9 1
x1 x1 3 3 Pareto front: 41 Pareto front: 47 2.5 2.5 2 2
f 2 f 2 f2 f2 1.5 1.5
1 1 0.5 0.6 0.7 0.8 0.9 1 0.5 0.6 0.7 0.8 0.9 1
f1 f1 03/24/2021 11 Optimize Multi-Objective Example 1: Generation 7
1 1 SPEA2 0.8 DE & NSGA-II 0.8 0.6 0.6 2 2
x x x x 2 0.4 2 0.4 0.2 0.2 0 0 0.5 0.6 0.7 0.8 0.9 1 0.5 0.6 0.7 0.8 0.9 1
x1 x1 3 3 Pareto front: 64 Pareto front: 71 2.5 2.5 2 2
f 2 f 2 f2 f2 1.5 1.5
1 1 0.5 0.6 0.7 0.8 0.9 1 0.5 0.6 0.7 0.8 0.9 1
f1 f1 03/24/2021 12