Download Evolutionary computing

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Sociocultural evolution wikipedia , lookup

Memetics wikipedia , lookup

Gene expression programming wikipedia , lookup

Social Bonding and Nurture Kinship wikipedia , lookup

Hologenome theory of evolution wikipedia , lookup

Dawkins vs. Gould wikipedia , lookup

Population genetics wikipedia , lookup

Theistic evolution wikipedia , lookup

Introduction to evolution wikipedia , lookup

Inclusive fitness wikipedia , lookup

Adaptation wikipedia , lookup

Punctuated equilibrium wikipedia , lookup

Catholic Church and evolution wikipedia , lookup

Microbial cooperation wikipedia , lookup

Sociobiology wikipedia , lookup

Genetics and the Origin of Species wikipedia , lookup

State switching wikipedia , lookup

Saltation (biology) wikipedia , lookup

The eclipse of Darwinism wikipedia , lookup

Transcript
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
1
Universe
Borg
Vogons
Art
Life Sciences
You are here
Society
Stones & Seas
etc
Science
Politics
Sports
etc
Exact Sciences
etc
Physics
Computer Science
etc
Software Engineering
Computational Intelligence
etc
Neural Nets
Evolutionary Computing
etc
Biotop
Social Sciences
Mathematics
Earth
Evolutionary Computing
Introduction
Fuzzy Systems
2
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
3
Charles Darwin 1809 - 1882
“Father of the evolution theory”
Gregor Mendel 1822-1884
“Father of genetics”
Fathers of evolutionary computing
John von Neumann 1903 –1957
“Father of the computer”
Evolutionary Computing
Alan Mathison Turing 1912 - 1954
“Father of the computer”
Introduction
4
Evolutionary Computing: the Basic Metaphor
EVOLUTION
PROBLEM SOLVING
Environment
Problem
Individual
Candidate Solution
Fitness
Quality
Fitness  chances for survival and reproduction
Quality  chance for seeding new solutions
Evolutionary Computing
Introduction
5
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
6
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
7
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
8
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
9
Darwinism
Basic idea of (rephrased) Darwinism:
Evolutionary progress towards higher life forms
=
Optimization according to some fitness-criterion
(optimization on a fitness landscape)
Evolutionary Computing
Introduction
10
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
11
Adaptive landscape metaphor (S. Wright, 1932)
Example landscape for two traits
Evolutionary Computing
Introduction
12
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
13
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
14
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
15
Genetic code
Nucleotide
base triplets
(codons)
mapping
Amino
acids
For all natural life on earth,
the genetic code is the same !
Evolutionary Computing
Introduction
16
Transcription, translation
DNA
transcription
RNA
translation
PROTEIN
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
17
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
18
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
19
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
20
Fertilisation
Sperm cell from Father
Egg cell from Mother
New person cell
Evolutionary Computing
Introduction
21
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
22
Genetic information vocabulary & hierarchy
Name
Function
Nucleotide
Basic symbol
4
Codon
Unit encoding an amino acid
64
Gene
Unit encoding a protein
Chromosome
Meiotic unit
Genome
Total information of the organism
Evolutionary Computing
#/Organism
1000’s
few
Introduction
1
23
Motivation for EC 1
Nature has always served as a source of
inspiration 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’ HitchHikers Guide)
the evolution mechanism that created the human
brain (after Darwin’s Origin of Species)
Answer 1  neurocomputing
Answer 2  evolutionary computing
Evolutionary Computing
Introduction
24
Motivation for EC 2
Fact 1
Developing, 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
Consequence:
Robust problem solving technology needed
Evolutionary Computing
Introduction
25
Classification of problem (application) types
Evolutionary Computing
Introduction
26
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
27
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
28
Evolutionary Computing
Introduction
29
Illustration in design: NASA satellite structure
Optimized satellite designs
to maximize vibration isolation
Evolving: design structures
Fitness: vibration resistance
Evolutionary “creativity”
Evolutionary Computing
Introduction
30
Evolutionary Computing
Introduction
31
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
32
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
33
Illustration in simulation 2:
biological interpetations
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
Evolutionary Computing
Introduction
34
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 (interactive subjective selection)
Evolution for the people
Evolutionary Computing
Introduction
35
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
36
Demonstration: magic square
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
37
Demonstration: magic square
• 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)
Evolutionary Computing
Introduction
38