compositional pattern producing networks

16
2/22/2015 1 Compositional Pattern Producing Networks: A Novel Abstraction of Development Kenneth Stanley Genetic Programming and Evolvable Machines ‘07

Upload: warunikaranaweera

Post on 11-Feb-2016

5 views

Category:

Documents


0 download

DESCRIPTION

Based on the paper by Kenneth Stanley, 2007

TRANSCRIPT

Page 1: Compositional pattern producing networks

2/22/2015 1

Compositional Pattern Producing Networks:

A Novel Abstraction of Development

Kenneth Stanley

Genetic Programming and Evolvable Machines ‘07

Page 2: Compositional pattern producing networks

What is a CPPN?

• A variation of artificial neural networks

Page 3: Compositional pattern producing networks

What is a CPPN?

Adopts the process of biological development and evolution to evolve images, 3D shapes, robots, etc

Page 4: Compositional pattern producing networks

Development and evolution

• Development: Single cell (genotype) to functioning organs (phenotype)

• Evolution: Single-celled creatures to complex beings

Page 5: Compositional pattern producing networks

Biological development: Fruit Fly

Anterior: head end

Posterior: tail end

Step 1: Identifying the position Head and tail ends are identified by the morphogen gradient

Page 6: Compositional pattern producing networks

Biological development: Fruit Fly

Anterior: head end

Posterior: tail end

Anterior

Posterior

Step 2: Generating a pattern Based on the position, the body is repeatedly segmented

Page 7: Compositional pattern producing networks

Biological development: Fruit Fly

Anterior: head end

Posterior: tail end

Anterior

Posterior

Anterior

Posterior

Step 3: Expressed phenotype Each segment gets symmetric pairs of body parts (e.g.: wings and legs)

Page 8: Compositional pattern producing networks

CPPN encodes development

Step 1: Identifying the position - x,y pixel coordinates

Step 2: Generating a pattern - CPPN

Step 3: Expressed phenotype - Attributes of the pixel

Page 9: Compositional pattern producing networks

Generating Patterns: CPPN

• Uses functions to represent patterns

– Sine function (repetition)

– Gaussian function (symmetry)

Page 10: Compositional pattern producing networks

Generating Patterns: CPPN

Symmetry in fruit fly: Wings, legs

Gaussian function can model symmetry

Page 11: Compositional pattern producing networks

Patterns generate more patterns

Symmetry and repitition

Page 12: Compositional pattern producing networks

Final CPPN

Page 13: Compositional pattern producing networks

Evolving CPPNs

• CPPN-NEAT: Neuroevolution of augmenting topologies

• User chooses parents

• Mutation: Edit weights, add edges and nodes

• Cross over: Cross two or more CPPNs

Page 14: Compositional pattern producing networks

Evolving CPPNs

Generation 1

Generation 15

Generation 33

Page 15: Compositional pattern producing networks

Applications

• Picbreeder (evolving 2D images): Stanley et al., CHI 2008

• EndlessForms (evolving 3D shapes): Clune et al., SIGEVOlution, 2011

• Evolving soft robots: Clune et al., SIGEVOlution, 2014

Picbreeder

EndlessForms

Page 16: Compositional pattern producing networks

Thank you!