650 likes | 790 Views
Introduction to Evolutionary Computing (EC). Chapter 1. Contents (I). What is EC? Positioning of EC and the basic EC metaphor Historical perspective Biological inspiration: Darwinian evolution theory (simplified!) Genetics (three fundamental features of biological evolution)
E N D
Contents (I) • What is EC? Positioning of EC and the basic EC metaphor • Historical perspective • Biological inspiration: • Darwinian evolution theory (simplified!) • Genetics (three fundamental features of biological evolution) • Particulate genes and population genetics • The adaptive genetic code • The Genotype/Phenotype Dichotomy
Contents (II) • Traditional variants of EC • Motivation for EC • What can EC do: examples of application areas • Demo: evolutionary magic square solver
What is EC? (1) • Evolutionary Computing is a relatively new research direction, of great importance both theoretically and especially in terms of applications viewpoint. • Although the history of evolutionary computation dates back to the 1950s and 1960s, only within the last decade have evolutionary algorithms became practicable for solving real-world problems on desktop computers.
What is EC? (2) • Evolutionary computing began by lifting ideas from biological evolutionary theory into computer science, and continues to look toward new biological research findings for inspiration. • Darwin’s principle “Survival of the fittest” can be used as a starting point in introducing evolutionary computation.
What is EC? (3) • Evolutionary Computation is the research field belonging to Artificially Intelligence. • Fogel (1995) declared Artificial Intelligence as “They solve problems, but they do not solve the problem of how to solve problems.” • In contrast, Evolutionary Computation: “provides a method for solving the problem of how to solve problems”.
Traditional variants of EC. • EC deals with a range of problem-solving techniques based on principles of biological evolution, such as natural selection and genetic inheritance. • EC studies basic principles of genetic algorithms (GA), evolutionary programming (EP), evolution strategy (ES), genetic programming (GP). • Other researchs: Genetic Chromodynamics, Linear Classification Systems, Codificarea Delta, Algoritmi Genetici Dezordonați
Different Views of EC/EA/GA/EP The techniques and technology that is discussed in this course can be viewed as: • An approach to computational intelligence and for soft computing • A search/ optimizationparadigm • As an approach for machine learning • As a method to simulate biological systems • As a subfield of artificial life • As generators for new ideas, new designs and for music and computer art
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
EC as Search Search Techniques Backtracking HillClimbing Simulated A* EC Annealing
EC as Machine Learning Machine Learning Learning from Examples Reinforcement Learning Classifier Systems
EC as Randomized Algorithms Algorithms Deterministic Algorithms Randomized Algorithms EC
EVOLUTION Environment Individual Fitness Population Chromosome Gene PROBLEM SOLVING Problem Candidate Solution Quality Set of potential solutions Encoding of potential solutions Part of encoding The Main Evolutionary Computing Metaphor Fitness chances for survival and reproduction Quality chance for seeding new solutions
Brief History 1: the ancestorsDarwin, Mendel and the Modern Synthesis • 1859 - publication of the ‘Origin of Species’ by Charles Darwin • Explained evolution as due to natural selection acting on heritable variation • Very similar ideas proposed by A. R. Wallace at about the same time • 1865 - Gregor Mendel presents his work on ‘Experiments in Plant Hybridisation’ • Demonstrated the particulate nature of inheritance (Darwin had assumed it was blending) • These two achievements together paved the way for the ‘Modern Synthesis’…
The Modern Synthesis (aka neo-Darwinism) • One problem that had worried Darwin was ‘regression’ of traits • Darwin assumed blending of heritable material • Hence the ‘value’ of any trait would tend to converge in a population as evolution progressed • The resulting lack of variation in the population would give natural selection nothing to act on, so evolution would stall • Mendel’s results went un-noticed by evolutionists for about 30 years
The Modern Synthesis (continued) • Once rediscovered, Mendel’s laws of particulate (i.e. genetic) inheritance were incorporated into Darwinian evolutionary theory • The result was the ‘modern synthetic theory of evolution’, or ‘neo-Darwinism’ • Emphasizes natural selection acting on genetic variation in populations • Primarily mathematical in nature, modeling gene spread in populations • Population genetics • Quantitative genetics • Subsequently, the physical basis of particulate inheritance was found • Discovery of DNA by James Watson and Francis Crick, 1962 Nobel Laureates in Medicine
The Emergence of Evolutionary Computing • Evolutionary ideas (using simulated evolution to solve engineering and design problems) were being applied in optimization as early as the mid 20th century, e.g. • Box (1957) Evolutionary operation: a method for increasing industrial productivity. Applied Statistics 6, 81-101 • Bremermann (1962) Optimization through evolution and recombination. In: Self-Organizing Systems. • In the 1970’s Genetic Algorithms became a prominent research area • John Holland presented a mathematical definition of GAs, and theory explaining their performance • Holland (1975) Adaptation in Natural and Artificial Systems • Holland was mainly interested in adaptive systems, but his student Ken De Jongcatalyzed research on for GAs for optimization, formulating a test suite of problems • De Jong (1975) An Analysis of the Behavior of a Class of Genetic Adaptive Systems. PhD thesis, University of Michigan
Brief History 2: the ancestors • 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 • 1992, Koza introduces genetic programming
A Brief History (2) of Evolutionary Computation(cont.) • The designers of each of the EC techniques saw that their particular problems could be solved via simulated evolution. • Fogel was concerned with solving prediction problems. • Rechenberg & Schwefel were concerned with solving parameter optimization problems. • Holland was concerned with developing robust adaptive systems.
A Brief History (2) of Evolutionary Computation(cont.) • Each of these researchers successfully developed appropriate ECs for their particular problems independently. • In the US, Genetic Algorithms have become the most popular EC technique due to a book by David E. Goldberg (1989) entitled, “Genetic Algorithms in Search, Optimization & Machine Learning”. • This book explained the concept of Genetic Search in such a way the a wide variety of engineers and scientist could understand and apply.
A Brief History of Evolutionary Computation(cont.) • However, a number of other books helped fuel the growing interest in EC: • Lawrence Davis’, “Handbook of Genetic Algorithms”, (1991), • Zbigniew Michalewicz’ book (1992), “Genetic Algorithms + Data Structures = Evolution Programs”. • John R. Koza’s “Genetic Programming” (1992) • D. B. Fogel’s 1995 book entitled, “Evolutionary Computation: Toward a New Philosophy of Machine Intelligence”. • These books not only fueled interest in EC but they also were instrumental in bringing together the EP, ES, and GA concepts together in a way that fostered unity and an explosion of new and exciting forms of EC.
Brief History 3: 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
EC in the early 21st Century • 3 major EC conferences, about 10 small related ones • 3 scientific core EC journals • 750-1000 papers published in 2003 (estimate) • EvoNet has over 150 member institutes • uncountable (meaning: many) applications • uncountable (meaning: ?) consultancy and R&D firms
Darwinian Evolution 1: Survival of the fittest • All environments have finite resources (i.e., can only support a limited number of individuals) • Lifeforms have basic instinct / lifecycles geared towards reproduction • Therefore some kind of selection is inevitable. Competition-based selection is one of the two cornerstones of evolutionary progress. • Those individuals that compete for the resources most effectively have increased chance of reproduction • Note: fitness in natural evolution is a derived, secondary measure, i.e., we (humans) assign a high fitness to individuals with many offspring
Darwinian Evolution 2: Diversity drives change • Phenotypic traits: • Behaviour / physical differences that affect response to environment • Partly determined by inheritance, partly by factors during development • Unique to each individual, partly as a result of random changes • If phenotypic traits: • Lead to higher chances of reproduction • Can be inherited then they will tend to increase in subsequent generations, leading to new combinations of traits …
Darwinian Evolution: Summary • Population consists of diverseset of individuals • Combinations of traits that are better adapted tend to increase representation in population Individuals are “units of selection” • Variations occur through random changes yielding constant source of diversity, coupled with selection means that: Population is the “unit of evolution” • Note the absence of “guiding force”
Adaptive landscape metaphor (Wright, 1932) • Can envisage population with n traits as existing in a n+1-dimensional space (landscape) with height corresponding to fitness • Each different individual (phenotype) represents a single point on the landscape • Population is therefore a “cloud” of points, moving on the landscape over time as it evolves - adaptation
Adaptive landscape metaphor (cont’d) • Selection “pushes” population up the landscape • Genetic drift: • random variations in feature distribution • (+ or -) arising from sampling error • can cause the population “melt down” hills, thus crossing valleys and leaving local optima
Natural Genetics • The information required to build a living organism is coded in the DNA of that organism. • The main role of DNA molecules is the long-term storage of information. • O moleculă de ADN conține zone numite gene • Structura ADN-ului este unică nu numai pentru o specie anume ci și pentru orice individ al oricărei specii animale sau vegetale. • La om ADN-ul conține circa 3,27 miliarde de perechi de baze (3,27 miliarde de „trepte” în helixul dublu).
Genotype vs. Phenotype • "Genotype" is an organism's full hereditary information, even if not expressed. • "Phenotype" is an organism's actual observed properties, such as morphology, development, or behavior. • Genotype (DNA inside) determines phenotype • Genes are the functional units of inheritance encoding phenotypic traits (characteristics); is a complex mapping • One gene may affect many traits (pleiotropy) • Many genes may affect one trait (polygeny) • Small changes in the genotype lead to small changes in the organism (e.g., height, hair colour)
Phenotype: a board configuration 1 3 5 2 6 4 7 8 Obvious mapping Genotype: a permutation of the numbers 1 - 8 The 8 queens problem: representation
Genes and the Genome • Genes are encoded in strands of DNA called chromosomes • In most cells, there are two copies of each chromosome (diploidy) • The complete genetic material in an individual’s genotype is called the Genome • Within a species, most of the genetic material is the same
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:
Reproductive Cells • Gametes (sperm and egg cells) contain 23 individual chromosomes rather than 23 pairs • Cells with only one copy of each chromosome are called Haploid • Gametes are formed by a special form of cell splitting called meiosis • During meiosis the pairs of chromosome undergo an operation called crossing-over
Crossing-over during meiosis • Chromosome pairs align and duplicate • Inner pairs link at a centromere and swap parts of themselves • Outcome is one copy of maternal/paternal chromosome plus two entirely new combinations • After crossing-over one of each pair goes into each gamete
Sperm cell from Father Egg cell from Mother New person cell (zygote) Fertilisation
After fertilisation • New zygote rapidly divides etc creating many cells all with the same genetic contents • Although all cells contain the same genes, depending on, for example where they are in the organism, they will behave differently • This process of differential behaviour during development is called ontogenesis • All of this uses, and is controlled by, the same mechanism for decoding the genes in DNA
Genetic code (I) • All proteins in life on earth are composed of sequences built from 20 different amino acids (alanină, valină, leucină, izoleucină, prolină, triptofan, fenilalanină, metionină, glicocol, serină, treonină, tirozină, asparagină, glutamină, cisteină, acid aspartic, acid glutamic, arginină, lisină, histidină (acesta din urmă constituie un aminoacid esențial pentru copiii cu vârsta sub 1 an). Dintre aceștia, 8 sunt esențiali, adică nu pot fi produși de organismul uman și trebuie aduși din exterior, prin alimentație (valina, leucina, izoleucina, triptofanul, fenilalanina, metionina, lisina și treonina).) • DNA is built from four nucleotides in a double helix spiral: purines A,G; pyrimidines T,C • Triplets of these form codons, each of which codes for a specific amino acid.
Genetic code (II) • All proteins in life on earth are composed of sequences built from 20 different amino acids • DNA is built from four nucleotides in a double helix spiral: purines A,G; pyrimidines T,C • Triplets of these form codons, each of which codes for a specific amino acid • Much redundancy: • purines complement pyrimidines • the DNA contains much rubbish • 43=64 codons code for 20 amino acids • Genetic code = the mapping from codons to amino acids • For all natural life on earth,the genetic code is the same !
The Genetic Code (DNA) Genetic code (III)
Transcription, translation A central claim in molecular genetics: only one way flow GenotypePhenotype GenotypePhenotype Lamarckism (saying that acquired features can be inherited) is thus wrong!
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 • Redundancy in the genetic code forms a good way of error checking
Motivations 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’ Hitch-Hikers Guide) • the evolution mechanism that created the human brain (after Darwin’s Origin of Species) • Answer 1 neurocomputing • Answer 2 evolutionary computing
Motivations for EC: 2 – technical view • Developing, analyzing, applying problem solving methods a.k.a. algorithms is a central theme in mathematics and computer science • Time for thorough problem analysis decreases • Complexity of problems to be solved increases • Consequence: Robust problem solving technology needed Paralel and distributed systems evaluated on HPC or LAN
Problem types solved by EC • In terms of starting ideas and applications, Evolutionary Computing highlights two aspects: • use ideas and concepts of complex adaptive systems to solve computational problems (search, optimization) • use computers and computational models in order to model complex adaptive systems • EC developed methods are general, independent of the problem, and the criterion function • The advantage of evolutionary algorithms includes its ability to address problems for which there is no human expertise. • From the optimization point of view, the main advantage of EC techniques is that they do not have much mathematical requirements about the optimization problems. All they need is an evaluation of the objective function.
Problem type 1 : Optimisation • We have a model of our system and seek inputs that give us a specified goal • e.g. • Traveling Salesman Problem • time tables for university, call center, or hospital • design specifications, Automated DSE, etc