Evolutionary Algorithms Techniques that harness evolution Broad range
Evolutionary Algorithms
Techniques that harness evolution • Broad range of applications • Genetic algorithms • Darwinian Process – – – A characteristic pattern Pattern can be copied Occasional variations Competition for limited territory Multifaceted environment Next round of variations based on success
Definitions • • • Genotype Phenotype DNA Mutation (copy errors) Fitness Function
Genetic Representation • Phenotype == Genotype • Discrete, real, tree • Growth and cellular differentiation
Genetic operators • Crossover – One point – Multiple point • Mutation – P for a location is 0. 01 (higher than nature)
Winston’s example Kookie • Chromosome: flour sugar • Mutation – choose a gene and change it • Crossover – • Fitness: – Probability of survival related to quality of the cookie
Algorithm • Create a population • Mutate one or more genes producing new offspring • Mate one or more pairs • Remove from population by fitness • Iterate!
Design constraints • Number of chromosomes in population – Cost of large numbers – Low numbers slow evolution • Mutation rate – Too high can cause out of control systems • Mating rules – Fitness, proximity • Can chromosome have multiple occurrences in a population?
With Kookie • Selection rule – Higher qualities survive – Randomly keep a small number un related to quality • It will work with mutation alone • Adding crossover improves convergence
Ranking Methods • Fitness: – Given qi as the quality measure of the i’th entity – Fi = qi / (Sj qj) • Rank Method – Eliminates bias toward the “best” and reduces bias due to measurement scale – Rank the candidates by fitness – Choose a probability, p, of choosing the highest ranking – Pi = p * (1. 00 – ( P 1 + P 2 + P 3 …Pi-1))
Ranking (cont. ) • Survival of the Most Diverse – It is good to be different! • Need a diversity measure • Sort by the combination of diversity and quality • The use rank method
Examples See Kosa • Digital Design – encode FSA • Analog Design – Tree of build instructions – Components as Genes: type Values Connections
CHC Algorithm Larry J. Eshelman • Use crossover and elitist selection • When converged population appears, then mutate!
Artificial Life • Study aspects of “life” in a simulated environment • Allow experiments we cannot do in real life • Allows us to abstract from life and life properties • Grow AI?
Self Replication • John Von Neumann (1951) • Cellular Automata • Life – – Turing computable – Self replicator
Tierra System • Thomas Ray • Organism are built of instructions is a ”core” • 32 instructions encoded in 5 bits • Work by pattern matching • Simulated enzymes and proteins
Spontaneous Generation • • • Andrew Paragellis Instruction sequences Mutation Random seeding Self replicators emerged
Boppers Artificial Life Lab Rudy Rucker
Boppers • Simple bug-like creatures • Turing Machine based – <current state, read color, write color, new state, turn> – Cycle is • move in current direction • Compute next state, write color and turn
Creatures • Turmite • Two dimension Turing machine • Boids – • actions based on locations of surrounding boids • No internal state • Turboid • Hybrid of the two
Genetics • Have chromosomes and are G. A. • Chromosomes are highly structured – Various areas of chromosome supply direct aspects of behavior!
Windrose
Turmite DNA • IQ = number of states • Turn table - size of windrose • State (indexed by read color): – Next State Table (8 * IQ) – Turn Table (8 * IQ) – Write Color Table (8 * IQ) • Total size is 24 * IQ
Turmite Enzymes • • Body icon Trail Nodes Trail lines Base speed Bopper type Windrose IQ
Boids • • Based on Reynolds Boid Flocking rules Collision Avoidance Velocity Matching Flock Centering
Boid DNA • 18 bytes for 11 varibles • 4 byte size integers: – Watch. Two. Flag = watch one or two closest – Max. Speed – Cruise. Distance - distance from flock mate – Near. Wall. Distance - closest distance allowed
Boid DNA (cont. ) • 7 real parameters – – – – Real. Speed Copy. Weight = fly parallel to neighbor Center. Weight = move to center of flock Attack. Weight = attack other flock Flee. Weight = run from other flock Veer. Weight = fly away from wall Acceleration
Tur. Boid • Features of both! • DNA is like turmite • First 18 bytes of DNA – Turmite state table – Boid parameters
- Slides: 28