25 October 2010Artificial Life Lec 61 Artificial Life Lecture 6 Co-evolution – with animats in pursuit-evasion … and in an application to sorting networks.

Slides:



Advertisements
Similar presentations
Logical and Artificial Intelligence in Games Lecture 14
Advertisements

An Exemplar-Based Fitness Function with Dynamic Value Based on Sub-Problem Difficulty Steve Rowe June 2006 Srowe -at- cybernet -dot- com Please put "genetic"
© Negnevitsky, Pearson Education, Lecture 12 Hybrid intelligent systems: Evolutionary neural networks and fuzzy evolutionary systems Introduction.
Algorithm Design Techniques
Population-based metaheuristics Nature-inspired Initialize a population A new population of solutions is generated Integrate the new population into the.
12 October 2010Artificial Life Lecture 31 Artificial Life lecture 3 More on Evolutionary Algorithms In Lecture 2 we covered the basics of evolution and.
Using Parallel Genetic Algorithm in a Predictive Job Scheduling
Tetris – Genetic Algorithm Presented by, Jeethan & Jun.
Tetris and Genetic Algorithms Math Club 5/30/2011.
On the Genetic Evolution of a Perfect Tic-Tac-Toe Strategy
Genetic Algorithms, Part 2. Evolving (and co-evolving) one-dimensional cellular automata to perform a computation.
1 Lecture 8: Genetic Algorithms Contents : Miming nature The steps of the algorithm –Coosing parents –Reproduction –Mutation Deeper in GA –Stochastic Universal.
Intro to AI Genetic Algorithm Ruth Bergman Fall 2002.
Chapter 14 Genetic Algorithms.
Genetic Algorithms Nehaya Tayseer 1.Introduction What is a Genetic algorithm? A search technique used in computer science to find approximate solutions.
Intro to AI Genetic Algorithm Ruth Bergman Fall 2004.
Chapter 6: Transform and Conquer Genetic Algorithms The Design and Analysis of Algorithms.
The Standard Genetic Algorithm Dr. Chrisantha Fernando Systems Biology Centre University of Birmingham Dr. Chrisantha Fernando Systems Biology Centre University.
Genetic Algorithm.
Evolving a Sigma-Pi Network as a Network Simulator by Justin Basilico.
Slides are based on Negnevitsky, Pearson Education, Lecture 12 Hybrid intelligent systems: Evolutionary neural networks and fuzzy evolutionary systems.
Soft Computing Lecture 18 Foundations of genetic algorithms (GA). Using of GA.
SOFT COMPUTING (Optimization Techniques using GA) Dr. N.Uma Maheswari Professor/CSE PSNA CET.
Evolution Strategies Evolutionary Programming Genetic Programming Michael J. Watts
Intro. ANN & Fuzzy Systems Lecture 36 GENETIC ALGORITHM (1)
Genetic algorithms Prof Kang Li
CS 484 – Artificial Intelligence1 Announcements Lab 3 due Tuesday, November 6 Homework 6 due Tuesday, November 6 Lab 4 due Thursday, November 8 Current.
Coevolutionary Models A/Prof. Xiaodong Li School of Computer Science and IT, RMIT University Melbourne, Australia April.
Genetic Algorithms Michael J. Watts
What is Genetic Programming? Genetic programming is a model of programming which uses the ideas (and some of the terminology) of biological evolution to.
Dr.Abeer Mahmoud ARTIFICIAL INTELLIGENCE (CS 461D) Dr. Abeer Mahmoud Computer science Department Princess Nora University Faculty of Computer & Information.
An Introduction to Genetic Algorithms Lecture 2 November, 2010 Ivan Garibay
Genetic Algorithms Genetic Algorithms – What are they? And how they are inspired from evolution. Operators and Definitions in Genetic Algorithms paradigm.
Evolving Virtual Creatures & Evolving 3D Morphology and Behavior by Competition Papers by Karl Sims Presented by Sarah Waziruddin.
1 Chapter 14 Genetic Algorithms. 2 Chapter 14 Contents (1) l Representation l The Algorithm l Fitness l Crossover l Mutation l Termination Criteria l.
EASy Summer 2006Non-Symbolic AI lec 101 Non-Symbolic AI lecture 10 Co-evolution – with animats in pursuit-evasion … and in an application to ‘sorting networks’
Artificial Intelligence Chapter 4. Machine Evolution.
2005MEE Software Engineering Lecture 11 – Optimisation Techniques.
Learning by Simulating Evolution Artificial Intelligence CSMC February 21, 2002.
Evolution Programs (insert catchy subtitle here).
Genetic Algorithms Przemyslaw Pawluk CSE 6111 Advanced Algorithm Design and Analysis
Genetic Algorithms What is a GA Terms and definitions Basic algorithm.
MAE 552 Heuristic Optimization Instructor: John Eddy Lecture #12 2/20/02 Evolutionary Algorithms.
1 Danny Hillis and Co-evolution Between Hosts and Parasites I 590 4/11/2005 Pu-Wen(Bruce) Chang.
GENETIC ALGORITHM Basic Algorithm begin set time t = 0;
D Nagesh Kumar, IIScOptimization Methods: M8L5 1 Advanced Topics in Optimization Evolutionary Algorithms for Optimization and Search.
Genetic Algorithm Dr. Md. Al-amin Bhuiyan Professor, Dept. of CSE Jahangirnagar University.
Artificial Intelligence By Mr. Ejaz CIIT Sahiwal Evolutionary Computation.
1 Comparative Study of two Genetic Algorithms Based Task Allocation Models in Distributed Computing System Oğuzhan TAŞ 2005.
EVOLUTIONARY SYSTEMS AND GENETIC ALGORITHMS NAME: AKSHITKUMAR PATEL STUDENT ID: GRAD POSITION PAPER.
 Presented By: Abdul Aziz Ghazi  Roll No:  Presented to: Sir Harris.
March 1, 2016Introduction to Artificial Intelligence Lecture 11: Machine Evolution 1 Let’s look at… Machine Evolution.
 Negnevitsky, Pearson Education, Lecture 12 Hybrid intelligent systems: Evolutionary neural networks and fuzzy evolutionary systems n Introduction.
Chapter 14 Genetic Algorithms.
Selected Topics in CI I Genetic Programming Dr. Widodo Budiharto 2014.
Evolutionary Algorithms Jim Whitehead
Evolution Strategies Evolutionary Programming
Artificial Intelligence (CS 370D)
Example: Applying EC to the TSP Problem
Artificial Intelligence Chapter 4. Machine Evolution
Introduction to Artificial Intelligence Lecture 11: Machine Evolution
Artificial Intelligence Chapter 4. Machine Evolution
Searching for solutions: Genetic Algorithms
A Gentle introduction Richard P. Simpson
Non-Symbolic AI lecture 10
Non-Symbolic AI lecture 10
학습목표 공진화의 개념을 이해하고, sorting network에의 응용가능성을 점검한다
Beyond Classical Search
Coevolutionary Automated Software Correction
Population Methods.
Presentation transcript:

25 October 2010Artificial Life Lec 61 Artificial Life Lecture 6 Co-evolution – with animats in pursuit-evasion … and in an application to sorting networks *** Think about how you would set about re-implementing either of these as a project of your own

25 October 2010Artificial Life Lec 62 Coevolution of Pursuit and Evasion D. Cliff and G. F. Miller ``Co-Evolution of Pursuit and Evasion II: Simulation Methods and Results''. In P. Maes, M. Mataric, J.-A. Meyer, J. Pollack, and S. W. Wilson (eds) From Animals to Animats 4 MIT Press Bradford Books, pp , Or on as CliffMiller96.pdfhttp://drop.io/alergic

25 October 2010Artificial Life Lec 63 Pursuit/Evasion – gen 200

25 October 2010Artificial Life Lec 64 CoevolutionCoevolution Two (or more) species evolve in a situation where the selection pressure on one species (eg the Predators or Pursuers) depends (at least in part) on the current fitness of the other species (Prey or Evaders).... and vice versa Arm's Race, or 'Red Queen effect' -- you run as fast as you can yet stay in same place (... figuratively !) This provides very much an implicit fitness function rather than an explicit one.

25 October 2010Artificial Life Lec 65 This study of coevolution Studied in deliberately simplified environment - a 2-D infinite plane with no walls or obstacles, just one pursuer, one evader Animats (animal/robot) - term often used in SAB Motors: These animats have left and right wheels. Variable forces can be applied L and R, simple Newtonian physics Fuel use (from limited fuel tank) proportional to square of force. Friction acts to slow you down.

25 October 2010Artificial Life Lec 66 SensorsSensors Each animat has several (typically 2) simulated 'photoreceptors'. Position (relative to straght-ahead) and angle of acceptance (wide/narrow) is genetically specified -- and hence can co-evolve with the 'brain' Each sensor returns proportion of of its angle-of-view which is not obscured by any object on horizon Hence simulation is a very simplified version of real physics, but still has some significant element of physical plausibility.

25 October 2010Artificial Life Lec 67 Neural Network Control System The control system is a CTRNN (continuous-time recurrent neural network model), of precisely the Beer type (see previous lecture). Fully connected ANN, with (fixed) weights and biases that are genetically specified -- ie evolved. 2 neurons connected to 'eyes', 2 to motors.

25 October 2010Artificial Life Lec 68 EvolutionEvolution A Genotype for any one Animat specifies - 1)the sensory morphology 2)the architecture (weights etc) of the ANN The Genetic Algorithm evolves 2 completely distinct populations ('species') Spatially distributed GA -- individuals in the population are spread out over a 'mating' grid, and will only mate, and replace, close neighbours on this grid.

25 October 2010Artificial Life Lec 69 EvaluationEvaluation Evaluation: All in the population of pursuers are tested against the same best-of-last-generation evader. And vice versa. Several trials from random starts: Evader fitness = how long before caught Pursuer fitness = ++ for 'approaching evader' + bonus for hit, sooner the bigger

25 October 2010Artificial Life Lec 610 Random Start – gen 0

25 October 2010Artificial Life Lec 611 A Successful run – gen 999

25 October 2010Artificial Life Lec 612 Potential Circular Trap That last picture showed successful pursuers/evaders from generation 999 But at gen 0, there was a pursuer which failed to catch an evader, and at gen 999 likewise. So in what sense has there been any 'advance'? Possibility of 'no real advance' in coevolution -- cf Stone Scissors Paper game, no strategy can be supreme for ever.

25 October 2010Artificial Life Lec 613 Possible Variations Test evader from gen 200 against pursuer from gen 999. Later work extended this idea, of monitoring current gen against best of previous gens. – Does this escape from the circular trap?

25 October 2010Artificial Life Lec 614 Analysis of behaviour

25 October 2010Artificial Life Lec 615 ApplicationsApplications Can coevolution be used for engineering purposes? Here is an example

25 October 2010Artificial Life Lec 616 Coevolving Parasites "Coevolving Parasites improve Simulated Evolution as an Optimization Procedure". W. Daniel Hillis. In Artificial Life II, Langton Taylor Farmer Rasmussen (eds) Addison-Wesley (1991) pp [Also available in: Physica D, v42, Issues 1-3, pp , June online version accessible via UoS Electronic Library Catalog ] Danny Hillis -- Connection machines --powerful very distributed parallel machines. This work done in late 1980s, 64,536 processors, populations 500 to , 'about 100 to 1000 generations per minute' Evolving minimal sorting networks

25 October 2010Artificial Life Lec 617 Sorting Networks A sorting network is something that can be given any scrambled list of N objects with different values (here N=16) --- and it is in effect an algorithm that will systematically sort the list into order by a sequence of compare and maybe swaps. The sorting network is a series of pairs of numbers, [a b] which can be interpreted as:- Compare the a th and b th items in your scrambled list. If in wrong order, swap, otherwise leave

25 October 2010Artificial Life Lec 618 Picturing Sorting Networks Visual way to represent, 16 rows represent the 16 items to be re- ordered. Starting from left, the vertical bars show rows to be compared/swapped.Numbering rows from 0 to 15, above swaps are: [0 1] [2 3]...[14 15] [0 2] [4 6] [8 10]......

25 October 2010Artificial Life Lec 619 Minimal Sorting Networks The previous diagram has a total of 60 swaps and was (in 1991) the shortest-known, discovered by MW Green It is a perfect sorter, in that if you present it with any scrambled list, after going through all the 60 swaps from left to right then the list comes out perfectly ordered. [ note: for swaps shown as bars in same vertical column, it will not matter which is done first] The problem is to find the shortest network, ideally better than this 60, which still sorts anything.

25 October 2010Artificial Life Lec 620 How to check if it works Do you have to check if it sorts all possible combinations of numbers in the list – NO! It can be shown that if a network correctly sorts any scrambled list of 0s and 1s (so that it finishes up with all the 1s at the top, all the 0s at the bottom), then the network will also sort any list of real-valued items. So can test a 16-network exhaustively with only 2 16 tests (about 32,000) – instead of 16 factorial (about 2x10 13 ). But this is still a lot of tests -- can one save time? – YES!

25 October 2010Artificial Life Lec 621 Genetic Representation We need a genetic encoding, so that strings of characters represent possible sorting networks. But we are not sure how long any sorting network will be before we start – after all, we are looking for the shortest. Hillis chose a sort-of-diploid encoding haploid = 1 string diploid = 2 strings

25 October 2010Artificial Life Lec 622 Diploid encoding A codon pair looks like this or this: Where top and bottom are different, on left, this means test/swap [3 5] (binary 0011 and 0101), followed by test/swap [3 8] --- total 2 test/swaps Where top and bottom are same, as on right, it is just test/swap [3 5] --- only one test/swap

25 October 2010Artificial Life Lec 623 Diploid encoding (ctd) A full genotype is 60 such codon-pairs, --- hence encoding between 60 and 120 test/swaps. cf: homozygous / heterozygous (a bit different !)

25 October 2010Artificial Life Lec 624 ScoringScoring The population is initialised with everyone having the same first 32 exchanges (that are known to be sensible), and thereafter randomised. Then each network is tested on 'how well it sorts -- the percentage of input test scrambled lists which it sorts correctly. Rather than testing on all 2 16 test cases, it could be tested on a random sample. OR (see later) the test cases could be chosen cleverly – coevolution.

25 October 2010Artificial Life Lec 625 Spatially Distributed GA Tournaments: pick pairs of contestants in local neighbourhood (Gaussian spread, nearer is more likely)

25 October 2010Artificial Life Lec 626 (Back to Lec 3 – Microbial GA) This was the really simple way to get a spatially distributed GA within the Microbial GA Just modify the way in which guys were selected for tournaments, so that they were close to each other

25 October 2010Artificial Life Lec 627 Now with Added Demes !!!! Last lecture I briefly mentioned demes – partially overlapping sub-populations with local breeding. Idea from Lee Spector: easiest to do this with a ring-shaped geography of overlapping sub- popns - Easy within the Microbial one- liner ! FROM LEC 3

25 October 2010Artificial Life Lec 628 Microbial with demes Just adjust the choice of b for each tournament. We keep a=POP*drand48(); but we change the original b=POP*drand48(); to …. Demes vn 1: b=(a + deme_width*drand48())%POP; Where the modulo POP (%POP) joins end of popn back to beginning, in a ring. OR….. Demes vn 2 (recommended): b=(a + 1 +deme_width*drand48())%POP; Where the +1 ensures b different from a. Choose deme_width as some suitable fraction of POP, eg POP=30, deme_width=10. FROM LEC 3

25 October 2010Artificial Life Lec 629 ReproductionReproduction Tournament: from pair of contestants, compare scores, winner over-writes loser (ie then has 2 copies). Mating: then select mates locally, with same principles Recombination to produce offspring (Hillis actually had 15 crossover points '1 per chromosome') Mutation: one bit-flip per 1000 sites.

25 October 2010Artificial Life Lec 630 Results – without coevolution Typical run like this -- without coevolution -- for up to 5000 generations, with a popn of Best scores = sorting networks of 65 exchanges -- target was 60. How can one improve this through coevolution ?

25 October 2010Artificial Life Lec 631 Inefficiencies - 1 Two main sources of inefficiency in the GA without coevolution: (1) Local optima -- once the population had found a 3/4 decent solution, quite probably all the neighbouring solutions (genetically similar) were less fit -- so the population would have to cross a valley to reach 'higher ground'.

25 October 2010Artificial Life Lec 632 Inefficiencies - 2 (2) Inefficiency in testing -- once popn was ¾ decent, they all passed most of the test cases, so little differences in scores. The answer: co-evolve a separate population of parasite test-cases, which themselves have a fitness function designed to make them as hard as possible for the sorting networks. This solves both inefficiencies (1) and (2). Parasite coevolution can generate genetic diversity (cf. W Hamilton)

25 October 2010Artificial Life Lec populations – sorters and parasites The population of sorting networks is already spatially distributed on one grid. Have a population of parasites likewise distributed on a similar grid, overlaid. Each parasite is a genetically specified group of 10 to 20 test cases -- rather than all the 2 16 possible ones.

25 October 2010Artificial Life Lec 634 Scoring each population Each sorting network is tested against the parasite that is on corresponding grid square. The score of the sorting network is 'what proportion of tests does it pass' The score of the parasite is 'how many tests does it fail the sorter on' Networks get selected, mated, and reproduce on their grid, parasites completely separately on theirs. Results improved to a minimum size of 61 (has it been beaten since?)

25 October 2010Artificial Life Lec 635 Benefits of Coevolution Prevents getting stuck in local optima -- as soon as this happens, the parasites evolve to zap them. Population is in a constant state of flux. Second advantage: testing is more efficient -- need only test on a few difficult test cases, which themselves change appropriately according to circumstances. Hence computationally more efficient.

25 October 2010Artificial Life Lec 636 The End