Jump to content

Compositional pattern-producing network

From Wikipedia, the free encyclopedia

Compositional pattern-producing networks (CPPNs) are a variation of artificial neural networks (ANNs) that have an architecture whose evolution is guided by genetic algorithms.[1]

While ANNs often contain only sigmoid functions and sometimes Gaussian functions, CPPNs can include both types of functions and many others. The choice of functions for the canonical set can be biased toward specific types of patterns and regularities. For example, periodic functions such as sine produce segmented patterns with repetitions, while symmetric functions such as Gaussian produce symmetric patterns. Linear functions can be employed to produce linear or fractal-like patterns. Thus, the architect of a CPPN-based genetic art system can bias the types of patterns it generates by deciding the set of canonical functions to include.

Furthermore, unlike typical ANNs, CPPNs are applied across the entire space of possible inputs so that they can represent a complete image. Since they are compositions of functions, CPPNs in effect encode images at infinite resolution and can be sampled for a particular display at whatever resolution is optimal.

CPPNs can be evolved through neuroevolution techniques such as neuroevolution of augmenting topologies (called CPPN-NEAT).

CPPNs have been shown to be a very powerful encoding when evolving the following:

See also[edit]


  • Kayvan Ghaderi; Fardin Akhlghian; Parham Moradi (2012). "A new digital image watermarking approach based on DWT-SVD and CPPN-NEAT". 2012 2nd International eConference on Computer and Knowledge Engineering (ICCKE). pp. 12–17. doi:10.1109/ICCKE.2012.6395344. ISBN 978-1-4673-4476-0. S2CID 19009756.


  1. ^ Stanley, Kenneth O. "Compositional pattern producing networks: A novel abstraction of development." Genetic programming and evolvable machines 8.2 (2007): 131-162.

External links[edit]