Transcript Lecture 3
CAP6938
Neuroevolution and
Developmental Encoding
Overview of NEAT and
CPPNs
Dr. Kenneth Stanley
August 28, 2006
Why an Overview?
•
•
•
•
Preparation for declaring projects
Get an idea what is possible
Sufficient background without details
Technical details coming later in semester
NEAT: NeuroEvoluton of
Augmenting Topologies
• Evolutionary algorithm applied to evolving
artificial neural networks (ANNs)
• Evolution (i.e. genetic algorithms) is a way
to optimize ANN topology and weights
• NEAT evolves increasingly complex ANNs
• Able to solve difficult control and decisionmaking tasks
Evolution:Survival of the Roundest
Gen 1
Select as parents
Gen 2
Select as parents
Gen 3
Champ!
NeuroEvolution
• Evolve ANNs
• Evaluated for performance on a task
–
–
–
–
–
–
–
Controlling a vehicle or robot
Drawing a picture
Recognizing an image
Warning about danger
Playing a board game
Playing a video game
Playing music
• The fittest survive and reproduce
ANNs can Sense and React
NEAT Features
• NEAT is unique: Networks complexify over
evolution
Crash Warning Champ
• So they can find the right complexity for the task
• NEAT solves problems with systems of diverse
networks using historical marking and speciation
• A first step in evolving complex systems
NEAT Applications
• NEAT makes new applications possible
and has set performance records
Double Pole Balancing Record
Vehicle Warnings
Keepaway Record
NERO: Real-time Neuroevolution
in a Video Game
Robot Duel
Go
Hopper
Not Just About Control and
Classification
Interactive Picture Evolution
Interactive Drum Pattern Evolution
Interactive Particle Effect Evolution
Interactive Chord Progression Evolution
Guitar Effect-Pedal Emulation
Non-neural NEAT
• ANNs aren’t the only thing that can
complexify
• Anything with arbitrary structure can
potentially be evolved
– Cellular Automata
– Lego Structures
– FSMs
– L-systems
L-System Plant Geometry Generator
by Hung-Wen Chen
What Can’t NEAT Do?
• “Regular” NEAT is a direct encoding
• It doesn’t encode regularities or symmetries
• Regularity and symmetry are believed to be
essential to representing and searching complex
structures: gene reuse
• Giant complex structures in nature are
composed of patterns
• Patterns have regularities
• Indirect encodings capture such information
efficiently
Indirect Encoding
• Most are developmental encodings
– Based on embryo to adult development
– “Artificial Embryogeny”
– This is how encoding works in nature
• Many have been proposed
• None close to natural complexity
Proposed Indirect Encodings
What’s missing?
• None implement complexification as in
NEAT: maybe genes can be added and
marked like in NEAT
– For example: L-system NEAT?
• Something’s still missing…
A Recent Discovery
• Drawn by a NEAT-evolved neural
network!?
Compositional Pattern Producing
Networks (CPPNs)
• Networks of functions composed to
produce patterns with regularities
• An abstraction of natural development
without developmental simulation
• Complexifying repeating patterns,
regularities, symmetries, repetition with
variation, etc.
CPPN-NEAT
•
•
•
•
A new kind of indirect encoding
Elegantly captures regularities
Convert patterns into phenotypes
An entirely new research area
Exploiting Regularity Without Development by Kenneth O. Stanley, To appear in: Proceedings of the AAAI Fall
Symposium on Developmental Systems. Meno Park, CA: AAAI Press, 2006 (8 pages)
Music is a Pattern over Time
• A CPPN is a pattern generator that can
produce repetition with variation, just like
music
• A CPPN can produce several related
patterns from an underlying simpler
pattern (multiple instruments)
• Music generation is a promising
demonstration
Homework for 8/30/06
• Neural network weight-learning algorithms
Fausett pp. 39-80 (in Chapter 2)
Fausett pp. 289-316 (in Chapter 6)
Chapter 1 of Sutton (on RL): Online Book ch.1
Optional: Kaelbling RL survey paper
• Remember proposals/partners due 9/11