* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download Evolutionary computing
Survey
Document related concepts
Sociocultural evolution 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
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
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