compositional pattern producing networks
DESCRIPTION
Based on the paper by Kenneth Stanley, 2007TRANSCRIPT
![Page 1: Compositional pattern producing networks](https://reader036.vdocuments.site/reader036/viewer/2022070419/563dba59550346aa9aa4d6f9/html5/thumbnails/1.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022070419/563dba59550346aa9aa4d6f9/html5/thumbnails/2.jpg)
What is a CPPN?
• A variation of artificial neural networks
![Page 3: Compositional pattern producing networks](https://reader036.vdocuments.site/reader036/viewer/2022070419/563dba59550346aa9aa4d6f9/html5/thumbnails/3.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022070419/563dba59550346aa9aa4d6f9/html5/thumbnails/4.jpg)
Development and evolution
• Development: Single cell (genotype) to functioning organs (phenotype)
• Evolution: Single-celled creatures to complex beings
![Page 5: Compositional pattern producing networks](https://reader036.vdocuments.site/reader036/viewer/2022070419/563dba59550346aa9aa4d6f9/html5/thumbnails/5.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022070419/563dba59550346aa9aa4d6f9/html5/thumbnails/6.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022070419/563dba59550346aa9aa4d6f9/html5/thumbnails/7.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022070419/563dba59550346aa9aa4d6f9/html5/thumbnails/8.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022070419/563dba59550346aa9aa4d6f9/html5/thumbnails/9.jpg)
Generating Patterns: CPPN
• Uses functions to represent patterns
– Sine function (repetition)
– Gaussian function (symmetry)
![Page 10: Compositional pattern producing networks](https://reader036.vdocuments.site/reader036/viewer/2022070419/563dba59550346aa9aa4d6f9/html5/thumbnails/10.jpg)
Generating Patterns: CPPN
Symmetry in fruit fly: Wings, legs
Gaussian function can model symmetry
![Page 11: Compositional pattern producing networks](https://reader036.vdocuments.site/reader036/viewer/2022070419/563dba59550346aa9aa4d6f9/html5/thumbnails/11.jpg)
Patterns generate more patterns
Symmetry and repitition
![Page 12: Compositional pattern producing networks](https://reader036.vdocuments.site/reader036/viewer/2022070419/563dba59550346aa9aa4d6f9/html5/thumbnails/12.jpg)
Final CPPN
![Page 13: Compositional pattern producing networks](https://reader036.vdocuments.site/reader036/viewer/2022070419/563dba59550346aa9aa4d6f9/html5/thumbnails/13.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022070419/563dba59550346aa9aa4d6f9/html5/thumbnails/14.jpg)
Evolving CPPNs
Generation 1
Generation 15
Generation 33
![Page 15: Compositional pattern producing networks](https://reader036.vdocuments.site/reader036/viewer/2022070419/563dba59550346aa9aa4d6f9/html5/thumbnails/15.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022070419/563dba59550346aa9aa4d6f9/html5/thumbnails/16.jpg)
Thank you!