Unformatted text preview: Multidisciplinary System Design Optimization A Basic Introduction to Genetic Algorithms
Lecture 11
Prof. Olivier de Weck 1 © Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics Heuristic Search Techniques
Main Motivation for Heuristic Techniques: (1) To deal with local optima and not get trapped in
them
J
x
(2) To allow optimization for systems, where the
design variables are not only continuous, but discrete
(categorical), integer or even Boolean xi R xi ={1,2,3,4,5}, xi ={„A‟,‟B‟,‟C‟} xi ={true, false}
These techniques do not guarantee that
global optimum can be found. Generally
KarushKuhnTucker conditions do not apply. 2 © Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics Principal Heuristic Algorithms
• Genetic Algorithms (Holland – 1975)
– Inspired by genetics and natural selection – max fitness • Simulated Annealing (Kirkpatrick – 1983)
– Inspired by statistical mechanics– min energy • Particle Swarm Optimization (Eberhart Kennedy  1995)
– Inspired by the social behavior of swarms of insects or
flocks of birds – max “food”
These techniques all use a combination of
randomness and heuristic “rules” to guide
the search for global maxima or minima
3 © Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics Today: Genetic Algorithms •
•
•
•
•
• 4 Genetics and Natural Selection
A simple genetic algorithm (SGA)
“The Genetic Algorithm Game”
Encoding  Decoding (Representation)
Fitness Function  Selection
Crossover – Insertion  Termination © Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics Premise of GAs
• Natural Selection is a very successful organizing
principle for optimizing individuals and populations of
individuals
• If we can mimic natural selection, then we will be able
to optimize more successfully
• A possible design of a system – as represented by its
design vector x  can be considered as an individual
who is fighting for survival within a larger population.
• Only the fittest survive – Fitness is assessed via
objective function J. 5 © Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics MATLAB® GA demo (“peaks”)
• Maximize “peaks” function
• Population size: 40
• Generations: 20
• Mutation Rate: 0.002 Observe convergence
Notice “mutants”
Compare to gradient search 6 © Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics Natural Selection
Charles Darwin (18091882)
Controversial and very influential book (1859)
On the origin of species by means of natural
selection, or the preservation of favored races
in the struggle for life
Observations:
• Species are continually developing
• Homo sapiens sapiens and apes have common ancestors
• Variations between species are enormous
• Huge potential for production of offspring, but only
a small/moderate percentage survives to adulthood
Evolution = natural selection of inheritable variations
7 © Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics Inheritance of Characteristics
Gregor Mendel (18221884)
Investigated the inheritance of characteristics (“traits”)
Conducted extensive experiments with pea plants
Examined hybrids from different strains of plant Tall Tall Tall Short Short Short Short Tall Tall Image by MIT OpenCourseWare. Character (gene) for tallness is dominant
Character (gene) for shortness is recessive
8 © Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics GA Terminology
chromosome population gene
individuals
selection
crossover
insertion
mutation
genetic
operators Generation n
9 Generation n+1
© Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics Chromosomes
Chromosome (string)
alleles gene 0 1 0 1 1 1 1 0 1 0 0 1 ….. 0 1
Each chromosome represents a solution, often
using strings of 0‟s and 1‟s. Each bit typically
corresponds to a gene. This is called binary
encoding. The values for a given gene are the alleles.
A chromosome in isolation is meaningless need decoding of the chromosome into phenotypic values
10 © Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics GA over several generations
Initialize Population (initialization) next generation Select individual for mating (selection)
Mate individuals and produce children (crossover)
Mutate children (mutation) Insert children into population (insertion) n Are stopping criteria satisfied ? y
Finish 11 Ref: Goldberg (1989) © Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics “The GA Game”
Population size: N=40
Mean Fitness: F=6.075 Ca. 15 minutes Generation 1:
(Fitness F = total number of 1‟s in chromosome)
1
1
1
5
8
9
6
3
3
3
0
0
40 1
2
3
20
40
54
42
24
27
30
0
0
6.075 GA Game Initial Population Number of Individuals 1
2
3
4
5
6
7
8
9
10
11
12 10
8
6
4
2
0
1 2 3 4 5 6 7 8 9 10 11 12 Fitness Value 0 <= F <= 12
12 Goal: Maximize Number of “1”s
© Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics Creating a GA on Computer
(1) define the representation (encodingdecoding)
(2) define “fitness” function F
 incorporate feasibility (constraints) and objectives
(3) define the genetic operators
 initialization, selection, crossover, mutation, insertion
(4) execute initial algorithm run
 monitor average population fitness
 identify best individual
(5) tune algorithm
 adjust selection, insertion strategy, mutation rate 13 © Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics Encoding  Decoding
phenotype genotype
coded domain Biology UGCAACCGU
(“DNA” blocks) Design 10010011110
(chromosome) decision domain
expression
sequencing “blue eye” decoding
H encoding Genetic Code: (U,C,G,A are the four bases of the nucleotide
building blocks of messengerRNA): UracilCytosinAdeninGuanin  A triplet leads to a particular aminoacid (for protein
synthesis) e.g. UGGtryptophane
14
© Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics Radius R=2.57 [m] Decoding
x1 x2 xn 0 1 0 1 1 1 1 0 1 0 0 1 ….. 0 1
Radius (genotype) Height Material E.g. binary encoding of integers:
10100011 (1*27+0*26+1*25+0*24+0*23+0*22+1*21+1*20)
128 + 0 + 32 + 0 + 0 + 0 + 2 + 1 = 163 Coding and decoding MATLAB® functions available:
decode.m, encode.m
15 © Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics Binary Encoding Issues
Number of bits dedicated to a particular design
variable is very important.
Number of bits needed:
Resolution depends on:
 upper and lower bounds xLB, xUB
 number of bits x nbits xUB xLB
x
ln 2 xLB xUB x=(xUB xLB)/2nbits Example [G]=encode(137.56,50,150,8)
G = 1
1
0
1
1
[X]=decode(G,50,150,8);
X = 137.4510
So Loss in precision !!!
16 ln 1 1 1 x= (15050)/28 = 0.39 © Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics Other Encoding Schemes
Not all GA chromosomes are binary strings
Can use a different ALPHABET for GA coding
Most common is binary alphabet {0,1}
can also have The set of symbols
is the “alphabet”  ternary: {0,1,2} {A,B,C}
 quaternary: {0,1,2,3} {T,G,C,A} => biology
 integer: {1,2,….13,….}
real valued: {3.456 7.889 9.112}
Hexadecimal {1,2,..,A,B,C,D,E,F}
Used for Traveling
Salesman Problem
17 © Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics A representation for the fire
station location problem
1 2 4 3
7 6
5 9
8 11 10 12
13 14
Image by MIT OpenCourseWare. 10101000010010
18 “1” represents a fire station © Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics Fitness and Selection Probability
Typically, selection is the most important and
most computationally expensive step of a GA.
x1
xn 01001110101 F
19 f (J ) Al7075 decode F drives probability
of being selected P(selected ) 1.227 yes F no
Map raw
objective
to Fitness Evaluate
objective simcode
function J f x © Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics Fitness Function
• Choosing the right fitness function is very
important, but also quite difficult
• GAs do not have explicit “constraints”
• Constraints can be handled in different ways:
– via the fitness function – penalty for violation
– via the selection operator (“reject constraint violators”)
– implicitly via representation/coding e.g. only allow
representations of the TSP that correspond to a valid tour – Implement a repair capability for infeasible
individuals
Choosing the right fitness function: an important
genetic algorithm design Issue
20 © Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics Maximization vs. Minimization There are many ways to convert a minimization
problem to a maximization problem and viceversa:
• Nobj
• 1/obj
• obj 21 © Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics Selection by Ranking
• Goal is to select parents for crossover
• Should create a bias towards more fitness
• Must preserve diversity in the population
(1) Selection according to RANKING Example: Let D j P 1 j select the kth most fit member of a population
1
to be a parent with probability Pk
D1
k Better ranking has a higher probability of being
chosen, e.g. 1st 1, 2nd 1/2, 3rd 1/3 ...
22 © Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics Selection by Fitness
(2) Proportional to FITNESS Value Scheme
Example: Let F j P Fitness j select the kth most fit member of a population
to be a parent with probability Pk Fitness(k ) F 1 Probability of being selected for crossover is
directly proportional to raw fitness score. 23 © Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics Roulette Wheel Selection
Roulette Wheel Selection
Probabilistically select
individuals based on
some measure of their
performance. 1
2
6
3
5 4 Sum Sum of individual‟s
selection probabilities 3rd individual in current
population mapped to interval
[0,Sum] Selection: generate random number in [0,Sum]
Repeat process until desired # of individuals selected
Basically: stochastic sampling with replacement (SSR)
24 © Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics Tournament Selection
Dominant performer
placed in intermediate
population of survivors 2 members of current
population chosen randomly n
Population
Filled ? y
Crossover and
Mutation form new
population
Old Population Fitness
101010110111
8
100100001100
4
001000111110
6
25 Survivors
Fitness
101010110111
8
001000111110
6
101010110111
8 © Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics Crossover
0 1 0 1 1 1 1 0 1 1 1 1 ….. 1 1 P1 1 1 1 0 0 1 0 0 0 1 0 1 ….. 0 0 P2 crossover
O1 ? O2 ? Question: How can we operate on parents P1 and P2 to
create offspring O1 and O2 (same length, only 1‟s and 0‟s)?
26 © Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics Crossover in Biology
P1 P2 Child a b cd Crossover produces
either of these results
for each chromosome
27 This is where
the word
crossover
comes from
ac
ac OR ad OR bc OR bd © Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics Crossover Operator (I)
Crossover (mating) is taking 2 solutions,
and creating 1 or 2 more Classical: single point crossover crossover
point P1 0 1 1 0 1 0 1 1 1 1 O1 P2 1 0 0 1 1 1 0 0 0 1 O2 The parents
28 The children
(“offspring”) © Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics Crossover Operator (II)
More on 1point crossover ….
P1 0 1 1 0 1 P2 1 0 0 1 1
i=3 0 1 1 1 1 C1 1 0 0 0 1 C2 l=length
of chromosome i=3 l=5 A crossover bit “i” is chosen (deliberately or randomly),
splitting the chromosomes in half.
Child C1 is the 1st half of P1 and the 2nd half of P2
Child C2 is the 1st half of P2 and the 2nd half of P1
29 © Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics Crossover Operator (III)
• One can also do a 2point crossover or a
multipoint crossover • The essential aspect is to create at least
one child (solution/design) from two (or
more) parent (solutions/designs)
• there are many solutions to do this Some crossover operations:
 single point, versus multiple point crossover
 path relinking 30 © Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics Path Relinking
• Given Parents P1 and P2
• Create a sequence of children
– The first child is a neighbor of P1
– Each child is a neighbor of the previous child
– The last child is a neighbor of P2
C2 C1
P1
31 ... Cn
P2 © Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics Example: Path Relinking
Parents
P1 1 0 0 1 0 0 1 and 0 0 1 0 1 0 0 P2 Children
1 0 0 1 0 0 0
1 0 0 1 1 0 0
1 0 0 0 1 0 0 1 0 1 0 1 0 0
32 Create a path of children,
then select the best one.
Good approach, but solutions
tend to be interpolations of
initial population. © Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics Some Insertion Strategies
• Can replace an entire population at a time (go from
generation k to k+1 with no survivors)
 select N/2 pairs of parents
 create N children, replace all parents
 polygamy is generally allowed • N = # of members
in population
if steady state Can select two parents at a time
 create one child
 eliminate one member of population (weakest?) • “Elitist” strategy
 small number of fittest individuals survive unchanged • “Halloffame”
 remember best past individuals, but don‟t use them for progeny 33 © Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics Initialization
Somehow we need to create an initial population of
solutions to start the GA. How can this be done?
• Random initial population, one of many options
• Use random number generator to create initial population
(caution with seeds !)
• Typically use uniform probability density functions (pdf‟s)
• Typical goal: Select an initial population that has both
quality and diversity Example: Nind  size of binary population
Lind  Individual chromosome length round(rand(1,6)) >> 1 1 1 1 0 0 Need to generate Nind x Lind random numbers from {0,1}
Rule of thumb: Population Size at Least Nind ~ 4 Lind
34 © Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics GA Convergence
Typical Results
Average
Fitness global
optimum
(unknown) Converged too
fast (mutation rate
too small?) generation
Average performance of individuals in a
population is expected to increase, as good individuals
are preserved and bred and less fit individuals die out.
35 © Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics GA Stopping Criteria
Some options: •
•
• 36 X number of generations completed  typically O(100)
Mean deviation in performance of individuals in the
population falls below a threshold J<x (genetic
diversity has become small)
Stagnation  no or marginal improvement from one
generation to the next: (Jn+1Jn)<X © Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics GAs versus other methods
Differ from traditional search/optimization methods:
•
• GAs use probabilistic transition rules, not
deterministic ones • GAs work on an encoding of the design variable
set rather than on the variables themselves • 37 GAs search a population of points in parallel, not
only a single point GAs do not require derivative information or other
auxiliary knowledge  only the objective function
and corresponding fitness levels influence search
© Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics Next Lecture •
•
•
• Speciality GA‟s
Particle Swarm Optimization (PSO)
Tabu Search (TS)
Selection of Optimization Algorithms
– Which algorithm is most suited to my problem? • Design Optimization Applications 38 © Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics Book References
Holland J., “Adaptation in Natural and Artificial Systems”,
University of Michigan Press, 1975
Goldberg, D.E.,” Genetic Algorithms in Search, Optimization
and Machine Learning”, Addison Wesley, 1989 39 © Massachusetts Institute of Technology  Prof. de Weck and Prof. Willcox
Engineering Systems Division and Dept. of Aeronautics and Astronautics MIT OpenCourseWare
http://ocw.mit.edu ESD.77 / 16.888 Multidisciplinary System Design Optimization
Spring 2010 For information about citing these materials or our Terms of Use, visit: http://ocw.mit.edu/terms. ...
View
Full
Document
This note was uploaded on 11/08/2011 for the course AERO 16.851 taught by Professor Ldavidmiller during the Fall '03 term at MIT.
 Fall '03
 lDavidMiller
 Astronautics

Click to edit the document details