Cartesian Genetic Programming

Created by W.Langdon from gp-bibliography.bib Revision:1.4534

  author =       "Julian Miller and Andrew Turner",
  title =        "Cartesian Genetic Programming",
  booktitle =    "GECCO 2015 Introductory Tutorials",
  year =         "2015",
  editor =       "Anabela Simoes",
  isbn13 =       "978-1-4503-3488-4",
  keywords =     "genetic algorithms, genetic programming, cartesian
                 genetic programming",
  pages =        "179--198",
  month =        "11-15 " # jul,
  organisation = "SIGEVO",
  address =      "Madrid, Spain",
  URL =          "",
  DOI =          "doi:10.1145/2739482.2756571",
  publisher =    "ACM",
  publisher_address = "New York, NY, USA",
  abstract =     "Cartesian Genetic Programming (CGP) is a well-known
                 form of Genetic Programming developed by Julian Miller
                 in 1999-2000. In its classic form, it uses a very
                 simple integer address-based genetic representation of
                 a program in the form of a directed graph. Graphs are
                 very useful program representations and can be applied
                 to many domains (e.g. electronic circuits, neural
                 networks). It can handle cyclic or acyclic graphs. In a
                 number of studies, CGP has been shown to be
                 comparatively efficient to other GP techniques. It is
                 also very simple to program. The classical form of CGP
                 has undergone a number of developments which have made
                 it more useful, efficient and flexible in various ways.
                 These include self-modifying CGP (SMCGP), cyclic
                 connections (recurrent-CGP), encoding artificial neural
                 networks and automatically defined functions (modular

                 SMCGP uses functions that cause the evolved programs to
                 change themselves as a function of time. This makes it
                 possible to find general solutions to classes of
                 problems and mathematical algorithms (e.g. arbitrary
                 parity, n-bit binary addition, sequences that provably
                 compute pi and e to arbitrary precision, and so

                 Recurrent-CGP allows evolution to create programs which
                 contain cyclic, as well as acyclic, connections. This
                 enables application to tasks which require internal
                 states or memory. It also allows CGP to create
                 recursive equations.

                 CGP encoded artificial neural networks represent a
                 powerful training method for neural networks. This is
                 because CGP is able to simultaneously evolve the
                 networks connections weights, topology and neuron
                 transfer functions. It is also compatible with
                 Recurrent-CGP enabling the evolution of recurrent
                 neural networks.

                 The tutorial will cover the basic technique, advanced
                 developments and applications to a variety of problem
                 domains. It will present a live demo of how the open
                 source cgp library can be used.",
  notes =        "Also known as \cite{2756571} Distributed at

Genetic Programming entries for Julian F Miller Andrew James Turner