Cartesian Genetic Programming

This alert has been successfully added and will be sent to: You will be notified whenever a record that you have chosen has been cited.

To manage your alert preferences, click on the button below. Manage my Alerts

New Citation Alert!

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 CGP).

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 on).

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 cgplibrary can be used.

References

Ahmad A. M., Khan G. M., Mahmud, S. A., Miller J. F. Breast Cancer Detection Using Cartesian Genetic Programming evolved Artificial Neural Networks. Proceedings of the Genetic and Evolutionary Computation Conference (GECCO), (2012) 1031--1038.

Ashmore L. An investigation into cartesian genetic programming within the field of evolutionary art. http://www.emoware.org/evolutionary_art.asp, Department of Computer Science, University of Birmingham (2000)

Clegg J., Walker J. A., Miller J. F. A New Crossover Technique for Cartesian Genetic Programming. Proceedings of Genetic and Evolutionary Computation Conference, ACM Press (2007) 1580--1587.

DiPaola S., Gabora L. Incorporating characteristics of human creativity into an evolutionary art algorithm, Genetic Programming and Evolvable Machines (2009) Vol. 10. For further info see: http://dipaola.org/evolve/

DiPaolo S. Evolving Creative Portrait Painter Programs using Darwinian Techniques with an Automatic Fitness Function. Electronic Visualizationa and the Arts Conference (2005)

Gajda, Z., Sekanina, L. Gate-Level Optimization of Polymorphic Circuits Using Cartesian Genetic Programming, Proceedings of Congress on Evolutionary Computation. IEEE Press (2009)

Gajda Z., Sekanina, L. Reducing the Number of Transistors in Digital Circuits Using Gate-Level Evolutionary Design, Proceedings of Genetic and Evolutionary Computation Conference. ACM, (2007) 245--252.

Garmendia-Doval B., Miller J.F., Morley S.D. Post Docking Filtering using Cartesian Genetic Programming. Genetic Programming Theory and Practice II. O'Reilly U-M., Yu T., Riolo R., Worzel B. (Eds.). University of Michigan Illinois USA. Springer (2004).

Glette K., Torresen J., Paul Kaufmann P., Platzner., M. A Comparison of Evolvable Hardware Architectures for Classification Tasks. In Proceedings of the 8th International Conference on Evolvable Systems: From Biology to Hardware, Springer LNCS 5216 (2008) 22--33.

Goldman, B. W., Punch, W. F. Reducing Wasted Evaluations in Cartesian Genetic Programming, Proceedings of European Conference on Genetic Programming, Springer LNCS 7831 (2013) pp. 61--72.

Goldman, B. W., Punch, W. F. Analysis of Cartesian Genetic Programming's Evolutionary Mechanisms, IEEE Transactions on Evolutionary Computation, (In press)

Goldman, B. W., Punch, W. F. Length bias and search limitations in cartesian genetic programming. In Proceedings of the 15th annual conference on Genetic and evolutionary computation, ACM, (2013) 933--940.

Harding S. L., Leitner, J., Schmidhuber, J. Cartesian Genetic Programming for Image Processing, Genetic Programming Theory and Practice, University of Michigan Illinois USA. Springer. 2012

Harding, S., Graziano, V., Leitner, J., Schmidhuber. J. MT-CGP: Mixed Type Cartesian Genetic Programming, Proceedings of the Genetic and Evolutionary Computation Conference (2011) pp 751--758.

Harding, S., Miller, J. F., Banzhaf, W. SMCGP2: Self Modifying Cartesian Genetic Programming in Two Dimensions, Proceedings of the Genetic and Evolutionary Computation Conference (2011) pp 1491--1498.

Harding S. L., Miller J. F. Banzhaf W. Developments in Cartesian Genetic Programming: Self-modifying CGP. Genetic Programming and Evolvable Machines, Vol. 11 (3/4) (2010) pp 397--439.

Harding S. L., Miller J. F. Banzhaf W. Self Modifying Cartesian Genetic Programming: Finding algorithms that calculate pi and e to arbitrary precision, Proceedings of the Genetic and Evolutionary Computation Conference, 2010.

Harding S. L., Miller J. F., Banzhaf W. A Survey of Self-Modifying CGP. Genetic Programming Theory and Practice, Riolo R., (Eds.). University of Michigan Illinois USA. Springer. 2010

Harding S. L., Miller J. F. Banzhaf W. Self Modifying Cartesian Genetic Programming: Parity. Proceedings of Congress on Evolutionary Computation, IEEE Press (2009) 285--292

Harding S. L., Miller J. F. Banzhaf W. Self Modifying Cartesian Genetic Programming: Fibonacci, Squares, Regression and Summing, Proceedings of the 10th European Conference on Genetic Programming, Springer LNCS (2009) 133--144

Harding S. L., Miller J. F., Banzhaf W. Self-Modifying Cartesian Genetic Programming, Proceedings of Genetic and Evolutionary Computation Conference, ACM Press, (2007) 1021--1028.

Harding S., Banzhaf W. Fast Genetic Programming on GPUs. Proceedings of 10th European Conference on Genetic Programming, Springer LNCS 4445 (2007) 90--101

Harding S. L., Miller J. F. Evolution of Robot Controller Using Cartesian Proceedings of the 6th European Conference on Genetic Programming, Springer LNCS 3447 (2005) 62--72.

Hirayama Y., Clarke T, Miller J. F. Fault Tolerant Control Using Cartesian Genetic Programming, Proceedings of Genetic and Evolutionary Computation Conference, ACM Press, (2008) 1523--1530.

Hrbacek, R., Sekanina, S. Towards highly optimized Cartesian genetic programming: from sequential via SIMD and thread to massive parallel implementation. Proceedings of the 2014 conference on Genetic and evolutionary computation, ACM (2014) 1015--1022

Kalganova T., Miller J. F., Evolving More Efficient Digital Circuits by Allowing Circuit Layout Evolution and Multi-Objective Fitness. Proceedings of the First NASA/DOD Workshop on Evolvable Hardware, IEEE Computer Society (1999) 54--63.

Kalganova T., Miller J. F., Fogarty T. C. Some Aspects of an Evolvable Hardware Approach for Multiple-Valued Combinational Circuit Design Proceedings of the 2nd International Conference on Evolvable Systems: From Biology to Hardware. Springer LNCS 1478 (1998) 78--89.

Kaufmann P., Platzner M. Advanced Techniques for the Creation and Propagation of Modules in Cartesian Genetic Programming. Proceedings of the Genetic and Evolutionary Computation Conference, ACM Press, (2008) 1219--1226.

Kaufmann P., Platzner M. MOVES: A Modular Framework for Hardware Evolution. In Proceedings of the NASA/ESA Conference on Adaptive Hardware and Systems, IEEE Computer Society Press (2007) 447--454

Kaufmann P., Platzner M. Toward Self-adaptive Embedded Systems: Multiobjective Hardware Evolution. In Proceedings of the 20th International Conference on Architecture of Computing Systems, Springer, LNCS 4415 (2007) 119--208.

Khan, G. M., Miller, J. F., Halliday, D. M. Evolution of Cartesian Genetic Programs for Development of Learning Neural Architecture, Evolutionary Computation, Vol. 19, No. 3 (2011) pp 469--523

Khan, M. M., Khan, G. M., J. F. Miller, J. F. "Efficient representation of recurrent neural networks for markovian/non-markovian non-linear control problems," in Proceedings of the 10th International Conference on Intelligent Systems Design and Applications (ISDA2010) (2010) 615--620

Khan, G. M., Miller J. F., Khan, M. M. Evolution of Optimal ANNs for Non-Linear Control Problems Using Cartesian Genetic Programming. Proceedings of International Conference on Artificial Intelligence (ICAI 2010)

Khan, G. M., Halliday, D. M., Miller, J. F.,Intelligent agents capable of developing memory of their environment, Angelo Loula A., Queiroz, J. (Eds.) Advances in Modelling Adaptive and Cognitive Systems, Editora UEFS (2010)

Khan G. M., Halliday D. M., Miller J. F. In Search of Intelligent Genes: The Cartesian Genetic Programming Neuron. Proceedings of Congress on Evolutionary Computation, IEEE Press (2009)

Khan G. M., Halliday D. M., Miller J. F. Breaking the synaptic dogma: evolving a neuro-inspired developmental network. Proceedings of 7th International Conference on Simulated Evolution and Learning, LNCS, 5361 (2008) 11--20

Khan G. M., Halliday D. M., Miller J. F. Coevolution of neuro-developmental programs that play checkers. Evolvable Systems: From Biology to Hardware. Springer LNCS 5216 (2008) 352--36

Khan G. M., Halliday D. M., Miller J. F. Coevolution of Intelligent Agents using Cartesian Genetic Programming. Proceedings of Genetic and Evolutionary Computation Conference, ACM Press, (2007) 269--276.

Kuyucu T., Trefzer M. A., Miller J. F., Tyrrell. A. M. On the Properties of Artificial Development and Its Use in Evolvable Hardware. Proceedings of Symposium on Artificial Life, Part of IEEE Symposium on Computational Intelligence, IEEE Press (2009).

Liu H., Miller J. F., Tyrrell A. M., Intrinsic evolvable hardware implementation of a robust biological development model for digital systems, Proceedings of the NASA/DOD Evolvable Hardware Conference, IEEE Computer Society (2005) 87--92.

Liu H., Miller J. F., Tyrrell A. M. A Biological Development Model for the Design of Robust Multiplier. Applications of Evolutionary Computing: EvoHot 2005, Springer LNCS 3449 (2005) 195--204

Liu H., Miller J. F., Tyrrell A. M. An Intrinsic Robust Transient Fault-Tolerant Developmental Model for Digital Systems. Workshop on Regeneration and Learning in Developmental Systems, Genetic and Evolutionary Computation Conference (2004).

Meier, A., Gonter, M., Kruse, R. Accelerating convergence in cartesian genetic programming by using a new genetic operator. In Proceeding of the fifteenth annual conference on Genetic and evolutionary computation conference, pages 981--988. ACM, 2013.