Developments in Cartesian Genetic Programming: self-modifying CGP

  • Authors:
  • Simon Harding;Julian F. Miller;Wolfgang Banzhaf

  • Affiliations:
  • Department of Computer Science, Memorial University of Newfoundland, St. John's, Canada A1B3X5;Department of Electronics, University of York, York, UK YO10 5DD;Department of Computer Science, Memorial University of Newfoundland, St. John's, Canada A1B3X5

  • Venue:
  • Genetic Programming and Evolvable Machines
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

Self-modifying Cartesian Genetic Programming (SMCGP) is a general purpose, graph-based, developmental form of Genetic Programming founded on Cartesian Genetic Programming. In addition to the usual computational functions, it includes functions that can modify the program encoded in the genotype. This means that programs can be iterated to produce an infinite sequence of programs (phenotypes) from a single evolved genotype. It also allows programs to acquire more inputs and produce more outputs during this iteration. We discuss how SMCGP can be used and the results obtained in several different problem domains, including digital circuits, generation of patterns and sequences, and mathematical problems. We find that SMCGP can efficiently solve all the problems studied. In addition, we prove mathematically that evolved programs can provide general solutions to a number of problems: n-input even-parity, n-input adder, and sequence approximation to 驴.