Dr. Kenneth Stanley February 6, 2006

Slides:



Advertisements
Similar presentations
On the Genetic Evolution of a Perfect Tic-Tac-Toe Strategy
Advertisements

Evolution of Biodiversity
Neuro-Evolution of Augmenting Topologies Ben Trewhella.
Genetic Algorithms. Some Examples of Biologically Inspired AI Neural networks Evolutionary computation (e.g., genetic algorithms) Immune-system-inspired.
Evolving Neural Network Agents in the NERO Video Game Author : Kenneth O. Stanley, Bobby D. Bryant, and Risto Miikkulainen Presented by Yi Cheng Lin.
1. 2 overview Background on video games Background on video games Neural networks Neural networks NE NE NEAT NEAT rtNEAT rtNEAT NERO NERO.
Intro to AI Genetic Algorithm Ruth Bergman Fall 2004.
Multiple Sequence Alignment CSC391/691 Bioinformatics Spring 2004 Fetrow/Burg/Miller (Slides by J. Burg)
Evolving Multi-modal Behavior in NPCs Jacob Schrum – Risto Miikkulainen –
Evolutionary Robotics NEAT / HyperNEAT Stanley, K.O., Miikkulainen (2001) Evolving Neural Networks through Augmenting Topologies. Competing Conventions:
1 Evolutionary Growth of Genomes for the Development and Replication of Multi-Cellular Organisms with Indirect Encodings Stefano Nichele and Gunnar Tufte.
Using Genetic Programming to Learn Probability Distributions as Mutation Operators with Evolutionary Programming Libin Hong, John Woodward, Ender Ozcan,
SOFT COMPUTING (Optimization Techniques using GA) Dr. N.Uma Maheswari Professor/CSE PSNA CET.
Evolutionary Computation. Evolutionary Complexification Two major goals in intelligent systems are the discovery and improvement of solutions to complex.
CAP6938 Neuroevolution and Developmental Encoding Working with NEAT Dr. Kenneth Stanley September 27, 2006.
Chapter 16 Evolution of Populations. Variation and Gene Pools Genetic variations (differences) are studied in populations (group of individuals of the.
Genetic Algorithms Michael J. Watts
CAP6938 Neuroevolution and Developmental Encoding Developmental Encoding 2 Dr. Kenneth Stanley October 9, 2006.
CAP6938 Neuroevolution and Developmental Encoding Real-time NEAT Dr. Kenneth Stanley October 18, 2006.
Learning by Simulating Evolution Artificial Intelligence CSMC February 21, 2002.
Mike Taks Bram van de Klundert. About Published 2005 Cited 286 times Kenneth O. Stanley Associate Professor at University of Central Florida Risto Miikkulainen.
Compositional Assemblies Behave Similarly to Quasispecies Model
1 Genetic Algorithms K.Ganesh Introduction GAs and Simulated Annealing The Biology of Genetics The Logic of Genetic Programmes Demo Summary.
Introduction to History of Life. Biological evolution consists of change in the hereditary characteristics of groups of organisms over the course of generations.
Introduction to Genetic Algorithms. Genetic Algorithms We’ve covered enough material that we can write programs that use genetic algorithms! –More advanced.
1. Genetic Algorithms: An Overview  Objectives - Studying basic principle of GA - Understanding applications in prisoner’s dilemma & sorting network.
CAP6938 Neuroevolution and Artificial Embryogeny Competitive Coevolution Dr. Kenneth Stanley February 20, 2006.
CAP6938 Neuroevolution and Artificial Embryogeny Leaky Integrator Neurons and CTRNNs Dr. Kenneth Stanley March 6, 2006.
CAP6938 Neuroevolution and Artificial Embryogeny Evolving Adaptive Neural Networks Dr. Kenneth Stanley March 1, 2006.
Innovative and Unconventional Approach Toward Analytical Cadastre – based on Genetic Algorithms Anna Shnaidman Mapping and Geo-Information Engineering.
CAP6938 Neuroevolution and Developmental Encoding Intro to Neuroevolution Dr. Kenneth Stanley September 18, 2006.
Contribution of second order evolution to evolutionary algorithms Virginie LEFORT July 11 th.
1 Autonomic Computer Systems Evolutionary Computation Pascal Paysan.
CAP6938 Neuroevolution and Artificial Embryogeny Approaches to Neuroevolution Dr. Kenneth Stanley February 1, 2006.
CAP6938 Neuroevolution and Artificial Embryogeny Evolutionary Computation Theory Dr. Kenneth Stanley January 25, 2006.
Bio 7: General Biology II Evolutionary, Organismal, & Ecological Biology Dr. Diane Livio myetudes.org/portal MW 2:30-4:30 (CMS 229)
CAP6938 Neuroevolution and Artificial Embryogeny Evolutionary Comptation Dr. Kenneth Stanley January 23, 2006.
CAP6938 Neuroevolution and Artificial Embryogeny Real-time NEAT Dr. Kenneth Stanley February 22, 2006.
CAP6938 Neuroevolution and Artificial Embryogeny Real-time NEAT Dr. Kenneth Stanley February 22, 2006.
Genetic Algorithm (Knapsack Problem)
Haploid-Diploid Evolutionary Algorithms
Introduction to Genetic Algorithms
Dr. Kenneth Stanley September 11, 2006
Introduction to Evolutionary Computing
Evolutionary Algorithms Jim Whitehead
Reconstructing the Evolutionary History of Complex Human Gene Clusters
CAP6938 Neuroevolution and Artificial Embryogeny Artificial Embryogeny
Dr. Kenneth Stanley January 30, 2006
HyperNetworks Engın denız usta
Dr. Kenneth Stanley September 13, 2006
Dr. Kenneth Stanley September 25, 2006
Genetic Variation Notes
Multy- Objective Differential Evolution (MODE)
Exam #3 W 12/5 at 7-8:30pm in ETC for the 9am class and ECJ 1
Haploid-Diploid Evolutionary Algorithms
Evolution of populations
Basics of Genetic Algorithms (MidTerm – only in RED material)
Evolution of populations
Evolution of Populations
Dr. Kenneth Stanley September 20, 2006
Natural Selection & Evolution
Homework #4 is due 12/4/07 (only if needed)
GENETIC ALGORITHMS & MACHINE LEARNING
There is a Great Diversity of Organisms
Basics of Genetic Algorithms
EE368 Soft Computing Genetic Algorithms.
Boltzmann Machine (BM) (§6.4)
History of Biological Diversity Evolution: Darwin’s travel
Evolution—Population Genetics
Machine Learning: UNIT-4 CHAPTER-2
Presentation transcript:

Dr. Kenneth Stanley February 6, 2006 CAP6938 Neuroevolution and Artificial Embryogeny NeuroEvolution of Augmenting Topologies (NEAT) Dr. Kenneth Stanley February 6, 2006

TWEANN Problems Reminder Competing conventions problem Topology matching problem Initial population topology randomization Defective starter genomes Unnecessarily high-dimensional search space Loss of innovative structures More complex can’t compete in the short run Need to protect innovation NEAT directly addresses these challenges

Solutions: NEAT Historical markings match up different structures Speciation Keeps incompatible networks apart Protects innovation Incremental growth from minimal structure, i.e. complexification Avoids searching in unnecessarily high-d space Makes finding high-d solutions possible

Genetic Encoding in NEAT

Topological Innovation

Link Weight Mutation A random number is added or subtracted from the current weight/parameter The number can be chosen from uniform, Gaussian (normal) or other distributions Continuous parameters work best if capped The probability of mutating a particular gene may be low or high, and is separate from the magnitude added Probabilities and mutation magnitudes have a significant effect

Link Weight Mutation in NEAT C++ randnum=randposneg()*randfloat()*power; if (mut_type==GAUSSIAN) { randchoice=randfloat(); if (randchoice>gausspoint) ((*curgene)->lnk)->weight+=randnum; else if (randchoice>coldgausspoint) ((*curgene)->lnk)->weight=randnum; } else if (mut_type==COLDGAUSSIAN) //Cap the weights at 3.0 if (((*curgene)->lnk)->weight > 3.0) ((*curgene)->lnk)->weight = 3.0; else if (((*curgene)->lnk)->weight < -3.0) ((*curgene)->lnk)->weight = -3.0;

Topology Matching Problem Problem arises from adding new genes Same gene may be in different positions Different genes may be in same positions

Biological Motivation New genes appeared over biological evolution as well Nature has a solution to still know which is which Process of aligning and matching genes is called synapsis Uses homology to align genes: “. . .Crossing over thus generates homologous recombination; that is, it occurs between 2 regions of DNA containing identical or nearly identical sequences.” (Watson et al. 1987)

Artificial Synapsys: Tracking Genes through Historical Markings The numbers tell exactly when in history particular topological features appeared, so now they can be matched up any time in the future. In other words, they reveal gene homology.

Matching up Genes

Second Component: Speciation Protects Innovation Originally used for multimodal function optimization (Mahfood 1995) Organisms grouped by similarity (compatibility) Fitness sharing (Goldberg 1987, Spears 1995): Organisms in a species share the reward of their fitness peak To facilitate this, NEAT needs A compatibility measure Clustering based on compatibility, for fitness sharing

Measuring Compatibility Possible in NEAT through historical markings 3 factors affect compatibility via historical markings on connection genes: Excess Disjoint Average Weight Distance W Compatibility distance

Clustering Into Species

Dynamic Compatibility Thresholding

Fitness Sharing: Assigning Offspring to Species

Third Component: Complexification from Minimal Structure Addresses initialization problem Search begins in minimal-topology space Lower-dimensional structures easily optimized Useful innovations eventually survive So search transitions into good part of higher-dim. space The ticket to high-dimensional space

NEAT Performed Well on Double Pole Balancing Without Velocity Inputs

DPNV Solutions Are Compact

Harder DPNV (0.3m short pole) solution

Visualizing Speciation

Next Class: More NEAT Implementation issues Where NEAT can be changed Areas for advancement Issues in applying NEAT (e.g. sensors and outputs) Evolving a Roving Eye for Go by Kenneth O. Stanley and Risto Miikkulainen (2004) Neuroevolution of an Automobile Crash Warning System by Kenneth O. Stanley and Risto Miikkulainen (2005) Homework due 2/15/05: Working domain and phenotype code. Turn in summary, code, and examples demonstrating how it works.

Project Milestones (25% of grade) 2/6: Initial proposal and project description 2/15: Domain and phenotype code and examples 2/27: Genes and Genotype to Phenotype mapping 3/8: Genetic operators all working 3/27: Population level and main loop working 4/10: Final project and presentation due (75% of grade)