310 likes | 460 Views
Lecture 3a: Creative Design (part 1). Nature-inspired Design. Bob Durrant* http://www.cs.bham.ac.uk/~durranrj/NID.html *Original authors: Dr. Alastair Channon , Dr. Julian Miller. Contents (parts 1 and 2). Creative Design Species Adaptation Genetic Algorithms
E N D
Lecture 3a: Creative Design (part 1) Nature-inspired Design Bob Durrant* http://www.cs.bham.ac.uk/~durranrj/NID.html *Original authors: Dr. Alastair Channon, Dr. Julian Miller
Contents (parts 1 and 2) • Creative Design • Species Adaptation Genetic Algorithms • Generic Evolutionary Design of Solid Objects • Creative Evolution of control and morphology of artificial creatures 2
Creative design A merely novel idea is one which can be described and/or produced by the same set of generative rules as are other, familiar ideas. A genuinely original or creative idea, is one which cannot [M. Boden 1995] • Routine design: optimise variables • search space not modified • Innovative design: extend variables • search space extended • Creative design: introduce new variables • move search space or define new search space 3
The "problem of premature convergence" In a conventional GA, the population quickly converges and this signifies the end of the search (Some figures in this lecture are from Harvey97, "Artificial Evolution for Real Problems".) 7
Schemata Such GAs are based on the idea that recombination (crossover) is the source of evolution's power Mutation not seen as a such an important operator Once population converges, recombination no good so stop (!!) Clearly not much good for long-term / open-ended evolution There has been an over-emphasis on the “Schema Theorem” What are schemata? A schema approx.= a building block, ie. a 'gene' nb: a 'gene' approx.= a set of alleles (eg. Bits) that encodes a functional module in the genotype to phenotype mapping eg. gene for red hair In GA literature, word 'gene' often misused to mean 'allele' 8
Schema Theorem Approximate summary of Schema Theorem: Short schemata (ie. short genes) of above-average fitness will spread (via crossover) at an exponential rate Schema Theorem can be proved given certain conditions lead many to view crossover as the source of GAs' power However, GA changes these conditions (population evolves) So theorem not so valid after all Should not draw strong generalised conclusions from it Ignoring such ill-founded conclusions opens the door to alternative ideas about how GAs should operate Most significantly, that mutation, not crossover, is / can be / should be the most significant genetic operator in a GA ? A view that most biologists would be comfortable with ? 9
SAGA SAGA = Species Adaptation Genetic Algorithms In SAGA, converged population evolves Population evolves as N species, each converged Genotype length can increase (and decrease) So dimensionality of fitness landscape can vary `Solution space' can increase in complexity during evolution 10
How to climb to the top of higher hills Conventional GAs can use low rates of (or even no) mutation Eg. most search in "Genetic Programming" (GP - a subset of GA) is essentially just rapid convergence from a large initially random population SAGA needs a significant rate of mutation Not so much as to disperse the population and/or loose high fitness But enough to drive evolution along high "ridges" in the fitness landscape 11
The need for correlated fitness landscapes In all GAs, but especially in SAGA, the more correlated (smooth) the fitness landscape, the better the chance of achieving good results from mutation Why "especially in SAGA"? Because most evolutionary progress is made through successive mutations Long jumps in genotype space are highly improbable 12
Neutral (not neural!) networks Getting stuck in a local optimum is a worry However, for many problems this is unlikely Due to the presence of "neutral networks", along which all genotypes encode the same phenotype (solution) Eg. in a neural (not neutral!) network, changing the weights on links to a neuron whose output is not currently linked to any other neuron will have no effect on the network's behaviour 13
Population sizes and run lengths Conventional GAs Excluding some GAs that use coevolution Covered in the next lecture Evolution mainly due to convergence by selection and recombination Large population sizes (10,000s or 1Ms) to supply (initial) variation Relatively short run lengths (10s or 100s of generations) SAGAs Evolution mainly due to mutation But selection and recombination both still important! Small population sizes (100s or 10s) Long run lengths (1000s or 1Ms of generations) 14
Analysis of an example SAGA Thompson's hardware evolution experiment Evolved a Field Programmable Gate Array (FPGA) to discriminate between 1kHz and 10kHz tones See Harvey's paper for details and reference Evolved FPGA after 5000 generations, & its functional connections (right): 15
Analysis: Why this is a SAGA Why is this a SAGA, rather than a conventional GA? High level of redundancy possible 60% to 70% of evolved connections redundant Neutral networks Sections of the genotype may be junk in some contexts, but functional in others Functional solution space can grow (and shrink) To a degree, and only in a certain sense Smooth fitness landscape Low population size: 50 High(ish) run length: 5000 generations 16
Analysis: Movement in genotype space Centroid of all genotypes plotted every 10 generations Each allele (bit) has been averaged over the population Axes are the first 2 principal components of centroid's movement Shows the population moving around in genotype space Not just converging 17
Analysis: Punctuated equilibrium Individuals ranked (y) according to fitness (z), at snapshots (x) every 10 generations. Population jumps between neutral networks (Approx. true) 1-individual elitism seems to have been crucial here 18
Generic Evolutionary Design of Solid Objects (Bentley 1996) • ‘From scratch’ creation and optimisation of conceptual design of solid objects 19
Issues • Representation (genotype) • Operators (mutation, recombination) • Fitness criteria • algorithm design 20
Representation desirables • A shape should be represented by a low number of parameters • completeness and smoothness • many-to-one not one-to-many • solid representations 21
x, y, z, height, width, depth, planedist, angle1, angle2 Clipped stretched cube 22
Examples 23
Genotype 24
Representation issues • Overlapping primitives 25
Adding/deleting primitives • Empirically found that with either too few or too many primitives designs were difficult to evolve • Added genotype length varying operators • mutational ‘split primitive’ operation • mutational ‘delete primitive’ operation 26
Recombination • Since chromosomes can have different numbers of primitives (and therefore genes) one must only swap genes in similar primitives abcdefghi jklmnopqr stuvwxyz ABCDEFGHI STUVWXYZ Offspring might be AbcDefgHi stuvwxyz aBCdEFGhI jklmnopqr STUVWXYZ 27
Mutation • 1. Choose a gene group randomly • with probability 0.9 • randomly pick one gene and flip (if not forbidden) • with prob 0.1 • locate the angle genes, flip a random bit in each allele 2. delete group of genes or split group (adding random extra genes) 28
Genetic Algorithm • Steady state • Removal of older (even if fit) chromosomes • The fitness evaluation function was multi-objective • Algorithm produced a single answer (rather than a Pareto optimal set) • Use ‘Sum of Weighted Global Ratios method’ 29
Multiply fitness_ratioji by importancei • fitness of genotype j is just the sum over i objectives Sum of Weighted Global Ratios • As algorithm progresses calculate for each fitness objective i the global_max_fitnessi, global_min_fitnessi • For each genotype j calculate its fitness ratioji 30
Examples (Table design) Size Mass Stability Flat Supportiveness Symmetry 31