You are on page 1of 14

J.F.

Miller

Jagdeep Matharu - 4831400 Seminar 4V82

What is CGP?
CGP is a form of Automatic computer program Evaluation (GP) Developed be Miller and Thompson 1997. Inspired from evaluation of digital circuit. Capable of encoding computer programs, electronic circuits, neural network.

Representation
Programs are represented as directed acyclic graphs which are encoded in the form of a linear string of integer Genes are Address in data (Connection genes) Address in a function lookup table (Function genes) Address in output data (Output genes) Genotype is string of integers. Eg. 0 0 1 1 0 0 1 3 1 2 0 1 0 4 4 2 5 4 2 5 7 3

CGP Genotype

CGP General form

Contd

Genotype-to-Phenotype mapping
Result from the decoding of a genotype is called phenotype. Many-to-one genotype to phenotype mapping. Some genes in phenotype can be ignored

Decoding
Genotype

Phenotype

Evolution of CGP Genotypes


Most CGP system use only mutation. Point-mutation Mutation rate Gene location is change with other valid random value. Function with other random valid address of function. Input gene value with valid output from any other node or terminal node value. Output with address of output of other node in genotype or terminal node value. Crossover

Contd

Evaluation strategies
1+ algorithm

Contd
An offspring is always chosen if it is equal as fit or has better fitness than the parent.

Genetic Redundancy
Node redundancy Genes those are not used in fitness calculation. Functional redundancy Sub-function that actually may be implemented with fewer nodes bloat Input redundancy Node functions are not connected to some of the input node Neutrality Adaptive evolution may cross regions with poor fitness in fitness landscape.

References
CGP Home. Accessed November 27, 2012. http://www.cartesiangp.co.uk/ J.F. Miller(ed.), Cartesian Genetic Programming , Natural Computing Series, DOI 10.1007/978-3-642-173103 2,

You might also like