Genetic Algorithms
What are we going to talk about?
• Evolution in biology• Evolution in programming• Components of a genetic algorithm• Strengths and limitations• Real world examples
Evolution in biology• Darwin
• Variation
• Selection
• Heredity
Evolution in biology• Modern evolution theory
• Discovery of DNA
• The gene as heredity and variation operator
Evolution in programming
Evolution in programming
ComponentExample
Component - Representation
Phenotype Genotype
Frame: 16 parameters
3 wheels: 9 parameters
“DNA” string of 25 values
8.7 4.7 9.5 5.9 6.2 1.3 … 9.3 1.0 8.7 3.8 1.7
Component - Population
Component - Fitness Function
Distance traveled
Component - Parent selection mechanism
0,1 0,5
0,4 0,1
Chance forreproduction
Component - Variation operators
part of parent 1 + part of parent 2 + mutation
8.7 4.7 9.5 5.9 6.2 1.3 1.8 … 1.0 8.7 3.8 1.7
8.5 9.1 0.1 3.5 8.0 1.5 2.2 … 1.6 5.5 2.8 4.5
8.7 4.7 3.4 5.9 6.2 1.7 2.2 … 1.6 5.5 2.8 4.5
Parent 1Parent 2
Offspring(+ mutation)
Component - survivor selection mechanism
Strengths• “Parachutist” comparison
– Parallelism:• multiple parachutists
– Mutation:• search in vicinity
– Selection:• focus on most successful
parachutists– Reproduction:
• give them walkie-talkies
Strengths
• Parallelism– CPU efficient– Problems with multiple objectives
• Blind watchmakers– Randomness = open mind
• Anytime behaviour
Strengths
• Wide range of applications
Limitations
• Defining the problem / strategy– Genotypes– Fitness function– Rate of mutation / crossover– Parental selection
• Premature convergence• Analytically solvable problems
Examples - Anaconda
• Kumar Chellapilla David B. Fogel
• Expert level
Examples - Anaconda
• your checker +1, enemy checker –1, no checker 0
• doesn’t know winning condition
• 15 neural networks that competed against each other
Examples - Faceprint
• Make composition drawings of criminals
• Hard to describe individual facial features
Examples - Faceprint
• 5 numbers for facial features
• 5 proportion
• Fitness is how close the picture is to the criminal
Examples – Movie Recommenders
• Film database– Genres
• How much will you like a filmif it is from the X, Y and Z genres?
• Neural network– Trained with Evolutionary Algorithm
Examples – Movie Recommenders
Score(will you like it?)
Genre (0 or 1):
Action
Adventure
Animation
Biography
…
Western
Examples – Movie Recommenders
• Phenotypes: 240 weights
• Genotypes: 8-bit floats
• DNA = long binary string– E.g. 110010010010100011 … 00100001010100
• Population of 200 DNA-strings– Evolved by crossover, mutation & selection
Examples – Movie Recommenders
• 11% better predictor than before
Thanks
Are there any questions?
Top Related