Evolutionary Computing Introduction 1
Introduction, Part I
• Positioning of EC and the basic EC metaphor• Historical perspective• Biological inspiration:
– Darwinian evolution theory (simplified!)– Genetics (simplified!)
• Motivation for EC• What can EC do: examples of application areas • Demo: evolutionary magic square solver
Evolutionary Computing Introduction 2
Borg Vog on s
Bio top
Art
L ife Scien ces Social Scien ces
M ath em atics Physics
Softw are En g in eerin g
Neural Nets Evo lu tion ary Com pu tin g Fu zzy System s
Com pu tation al In telligence etc
Com pu ter Science etc
Exact Sciences etc
Science Po litics Spo rts etc
Society Ston es & Seas etc
Earth etc
Un iverse
You are here
Evolutionary Computing Introduction 3
Positioning of EC
• EC is part of computer science
• EC is not part of life sciences/biology
• Biology delivered inspiration and terminology
• EC can be applied in biological research
Evolutionary Computing Introduction 4
Fathers of evolutionary computing
Charles Darwin 1809 - 1882“Father of the evolution theory”
Gregor Mendel 1822-1884“Father of genetics”
John von Neumann 1903 –1957“Father of the computer”
Alan Mathison Turing 1912 - 1954 “Father of the computer”
Evolutionary Computing Introduction 5
Evolutionary Computing: the Basic Metaphor
EVOLUTION
Environment
Individual
Fitness
PROBLEM SOLVING
Problem
Candidate Solution
Quality
Quality chance for seeding new solutions
Fitness chances for survival and reproduction
Evolutionary Computing Introduction 6
Historical perspective 1: The dawn of EC
• 1948, Turing proposes “genetical or evolutionary search”
• 1962, Bremermann optimization through evolution and recombination
• 1964, Rechenberg introduces evolution strategies
• 1965, L. Fogel, Owens and Walsh introduce evolutionary programming
• 1975, Holland introduces genetic algorithms
Evolutionary Computing Introduction 7
Historical perspective 2: The rise of EC
• 1985: first international conference (ICGA)
• 1990: first international conference in Europe (PPSN)
• 1993: first scientific EC journal (MIT Press)
• 1997: launch of European EC Research Network (EvoNet)
Evolutionary Computing Introduction 8
Historical perspective 3: The present of EC
• 3 major conferences, 10 – 15 small ones
• 3 scientific core EC journals + 2 Web-based ones
• 750-1000 papers published in 2001 (estimate)
• EvoNet has over 150 member institutes
• uncountable (meaning: many) applications
• uncountable (meaning: ?) consultancy and R&D firms
Evolutionary Computing Introduction 9
Common model of evolutionary processes
Organic evolution:• Population of individuals• Individuals have a fitness• Variation operators: recombination, mutation• Selection towards higher fitness: “survival of the
fittest”
Open-ended adaptation in a dynamically changing world
Evolutionary Computing Introduction 10
Darwinism
Evolutionary progress towards higher life forms =
Optimization according to some fitness-criterion(optimization on a fitness landscape)
Basic idea of (rephrased) Darwinism:
Evolutionary Computing Introduction 11
Darwinian evolution
• Fitness: capability of an individual to survive and reproduce in an environment
• Adaptation: the state of being and process of becoming suitable w.r.t. the environment
• Natural selection: reproductive advantage by adaptation to an environment (survival of the fittest)
• Phenotypic variability: small, random, apparently undirected deviation of offspring from parents
Note: fitness in natural evolution is a derived, secondary measure, i.e., we (humans) assign a high fitness to individuals with many offspring.
Evolutionary Computing Introduction 12
Adaptive landscape metaphor (S. Wright, 1932)
Example landscape for two traits
Evolutionary Computing Introduction 13
Adaptive landscape metaphor (cont’d)
Selection “pushes” population up the landscape
Genetic drift: random variations in feature distribution (+ or -) by sampling error
Genetic drift can cause the population “melt down” hills, thus crossing valleys and leaving local optima
Evolutionary Computing Introduction 14
Natural Genetics
• The information required to build a living organism is coded in the DNA of that organism
• Genotype (DNA inside) determines phenotype (outside)
• Genes phenotypic traits is a many-to-many mapping
• Small changes in the genetic material give rise to small changes in the organism (e.g., height, hair colour)
• Within a species, most of the genetic material is the same
Evolutionary Computing Introduction 15
The DNA
Building plan of living beings: DNA• Alphabet: Nucleotide bases purines A,G;
pyrimidines T,C• Structure: Double-helix spiral• Information is redundant, purines
complement pyrimidines and the DNA contains much rubbish
Evolutionary Computing Introduction 16
Genetic code
Nucleotidebase triplets
(codons)
Aminoacids
mapping
For all natural life on earth, the genetic code is the same !
Evolutionary Computing Introduction 17
Transcription, translation
DNA RNA PROTEINtranscription translation
A central claim in molecular genetics: only one way flow
Genotype Phenotype
Genotype Phenotype
Lamarckism (saying that acquired features can be inherited) is thus wrong!
Evolutionary Computing Introduction 18
Example: Homo Sapiens
• Human DNA is organised into chromosomes• Human body cells contains 23 pairs of
chromosomes which together define the physical attributes of the individual:
Evolutionary Computing Introduction 19
Reproductive Cells
• Gametes (sperm and egg cells) contain 23 individual chromosomes rather than 23 pairs
• Gametes are formed by a special form of cell splitting called meiosis
• During meiosis the pairs of chromosome undergo an operation called crossing-over
Evolutionary Computing Introduction 20
Crossing-over during meiosis
Chromosome pairs link up and swap parts of themselves:
Before After
After crossing-over one of each pair goes into each gamete
Evolutionary Computing Introduction 21
Fertilisation
Sperm cell from Father Egg cell from Mother
New person cell
Evolutionary Computing Introduction 22
Mutation
• Occasionally some of the genetic material changes very slightly during this process (replication error)
• This means that the child might have genetic material information not inherited from either parent
• This can be– catastrophic: offspring in not viable (most likely)– neutral: new feature not influences fitness – advantageous: strong new feature occurs
Evolutionary Computing Introduction 23
Genetic information vocabulary & hierarchy
Name Function #/Organism
Nucleotide Basic symbol 4
Codon Unit encoding an amino acid 64
Gene Unit encoding a protein 1000’s
Chromosome Meiotic unit few
Genome Total information of the organism 1
Evolutionary Computing Introduction 24
Motivation for EC 1Nature has always served as a source ofinspiration for engineers and scientists
The best problem solver known in nature is:– the (human) brain that created “the wheel, New
York, wars and so on” (after Douglas Adams’ Hitch-Hikers Guide)
– the evolution mechanism that created the human brain (after Darwin’s Origin of Species)
Answer 1 neurocomputingAnswer 2 evolutionary computing
Evolutionary Computing Introduction 25
Fact 1Developing, analyzing, applying problem solving methods a.k.a. algorithms is a central theme in mathematics and computer science
Fact 2 Time for thorough problem analysis decreases Complexity of problems to be solved increases
Motivation for EC 2
Consequence:Robust problem solving technology needed
Evolutionary Computing Introduction 26
Classification of problem (application) types
Evolutionary Computing Introduction 27
What can EC do
• optimization e.g. time tables for university, call center, or hospital
• design (special type of optimization?) e.g., jet engine nozzle, satellite boom
• modeling e.g. profile of good bank customer, or poisonous drug
• simulation e.g. artificial life, evolutionary economy, artificial societies
• entertainment / art e.g., the Escher evolver
Evolutionary Computing Introduction 28
Illustration in optimization: university timetabling
Enormously big search space
Timetables must be good
“Good” is defined by a number of competing criteria
Timetables must be feasible
Vast majority of search space is infeasible
Evolutionary Computing Introduction 29
Evolutionary Computing Introduction 30
Illustration in design: NASA satellite structure
Optimized satellite designs to maximize vibration isolation
Evolving: design structures
Fitness: vibration resistance
Evolutionary “creativity”
Evolutionary Computing Introduction 31
Evolutionary Computing Introduction 32
Illustration in modelling: loan applicant creditibility
British bank evolved creditability model to predict loan paying behavior of new applicants
Evolving: prediction models
Fitness: model accuracy on historical data
Evolutionary machine learning
Evolutionary Computing Introduction 33
Illustration in simulation:evolving artificial societies
Simulating trade, economic competition, etc. to calibrate models
Use models to optimize strategies and policies
Evolutionary economy
Survival of the fittest is universal (big/small fish)
Evolutionary Computing Introduction 34
Incest prevention keeps evolution from rapid degeneration
(we knew this)
Multi-parent reproduction, makes evolution more efficient
(this does not exist on Earth in carbon)
2nd sample of Life
Illustration in simulation 2:biological interpetations
Pictu
re c
enso
red
Evolutionary Computing Introduction 35
Illustration in art: the Escher evolver
City Museum The Hague (NL)Escher Exhibition (2000)
Real Eschers + computer images on flat screens
Evolving: population of pic’s
Fitness: visitors’ votes (inter-active subjective selection)
Evolution for the people
Evolutionary Computing Introduction 36
Demonstration: magic square
• Given a 10x10 grid with a small 3x3 square in it• Problem: arrange the numbers 1-100 on the
grid such that – all horizontal, vertical, diagonal sums are
equal (505)– a small 3x3 square forms a solution for 1-9
Evolutionary Computing Introduction 37
Demonstration: magic square
Evolutionary approach to solving this puzzle:Evolutionary approach to solving this puzzle:• Creating random begin arrangement• Making N mutants of given arrangement• Keeping the mutant (child) with the least error• Stopping when error is zero
Evolutionary Computing Introduction 38
Demonstration: magic square
Application
• Software by M. Herdy, TU Berlin• Interesting parameters:
• Step1: small mutation, slow & hits the optimum• Step10: large mutation, fast & misses (“jumps over” optimum)• Mstep: mutation step size modified on-line, fast & hits optimum
• Start: double-click on icon below • Exit: click on TUBerlin logo (top-right)