A Comparative Study on Crossover in Cartesian Genetic Programming

  • Jakub HusaEmail author
  • Roman Kalkreuth
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10781)


Cartesian Genetic Programming is often used with mutation as the sole genetic operator. Compared to the fundamental knowledge about the effect and use of mutation in CGP, the use of crossover has been less investigated and studied. In this paper, we present a comparative study of previously proposed crossover techniques for Cartesian Genetic Programming. This work also includes the proposal of a new crossover technique which swaps block of the CGP phenotype between two selected parents. The experiments of our study open a new perspective on comparative studies on crossover in CGP and its challenges. Our results show that it is possible for a crossover operator to outperform the standard \((1+\lambda )\) strategy on a limited number of tasks. The question of finding a universal crossover operator in CGP remains open.


Cartesian Genetic Programming Crossover Comparative study 



This work was supported by the Czech science foundation project 16-17538S.


  1. 1.
    Koza, J.: Genetic programming: a paradigm for genetically breeding populations of computer programs to solve problems. Technical Report STAN-CS-90-1314, Department of Computer Science. Stanford University, June 1990Google Scholar
  2. 2.
    Koza, J.R.: Genetic programming: on the programming of computers by means of natural selection. MIT Press, Cambridge (1992)zbMATHGoogle Scholar
  3. 3.
    Koza, J.R.: Genetic Programming II: Automatic Discovery of Reusable Programs. MIT Press, Cambridge (1994)zbMATHGoogle Scholar
  4. 4.
    Miller, J.F., Thomson, P.: Cartesian genetic programming. In: Poli, R., Banzhaf, W., Langdon, W.B., Miller, J., Nordin, P., Fogarty, T.C. (eds.) EuroGP 2000. LNCS, vol. 1802, pp. 121–132. Springer, Heidelberg (2000). CrossRefGoogle Scholar
  5. 5.
    Luke, S., Spector, L.: A Comparison of Crossover and Mutation in Genetic Programming. In: Proceedings of the Second Annual Conference on Genetic Programming 1997, pp. 240–248. Morgan Kaufmann, Stanford University, CA, USA, 13–16 July (1997)Google Scholar
  6. 6.
    Luke, S., Spector, L.: A revised comparison of crossover and mutation in genetic programming. In: Proceedings of the Third Annual Conference on Genetic Programming 1998, pp. 208–213. Morgan Kaufmann, University of Wisconsin, Madison, Wisconsin, USA, 22–25 July (1998)Google Scholar
  7. 7.
    White, D.R., Poulding, S.: A rigorous evaluation of crossover and mutation in genetic programming. In: Vanneschi, L., Gustafson, S., Moraglio, A., De Falco, I., Ebner, M. (eds.) EuroGP 2009. LNCS, vol. 5481, pp. 220–231. Springer, Heidelberg (2009). CrossRefGoogle Scholar
  8. 8.
    Clegg, J., Walker, J.A., Miller, J.F.: A new crossover technique for cartesian genetic programming. In: GECCO 2007: Proceedings of the 9th annual Conference on Genetic and Evolutionary Computation, vol. 2, pp. 1580–1587. ACM Press, London, 7–11 July (2007)Google Scholar
  9. 9.
    Slaný, K., Sekanina, L.: Fitness landscape analysis and image filter evolution using functional-level CGP. In: Ebner, M., O’Neill, M., Ekárt, A., Vanneschi, L., Esparcia-Alcázar, A.I. (eds.) EuroGP 2007. LNCS, vol. 4445, pp. 311–320. Springer, Heidelberg (2007). CrossRefGoogle Scholar
  10. 10.
    Walker, J.A., Miller, J.F., Cavill, R.: A multi-chromosome approach to standard and embedded cartesian genetic programming. In: GECCO 2006: Proceedings of the 8th Annual Conference on Genetic and Evolutionary Computation, vol. 1, pp. 903–910. ACM Press, Seattle, 8–12 July (2006)Google Scholar
  11. 11.
    Cai, X., Smith, S.L., Tyrrell, A.M.: Positional independence and recombination in cartesian genetic programming. In: Collet, P., Tomassini, M., Ebner, M., Gustafson, S., Ekárt, A. (eds.) EuroGP 2006. LNCS, vol. 3905, pp. 351–360. Springer, Heidelberg (2006). CrossRefGoogle Scholar
  12. 12.
    Walker, J.A., Miller, J.F.: Evolution and acquisition of modules in cartesian genetic programming. In: Keijzer, M., O’Reilly, U.-M., Lucas, S., Costa, E., Soule, T. (eds.) EuroGP 2004. LNCS, vol. 3003, pp. 187–197. Springer, Heidelberg (2004). CrossRefGoogle Scholar
  13. 13.
    Kaufmann, P., Platzner, M.: Advanced techniques for the creation and propagation of modules in cartesian genetic programming. In: GECCO 2008: Proceedings of the 10th Annual Conference on Genetic and Evolutionary Computation, pp. 1219–1226. ACM, Atlanta, 12–16 July (2008)Google Scholar
  14. 14.
    Kalkreuth, R., Rudolph, G., Droschinsky, A.: A new subgraph crossover for cartesian genetic programming. In: McDermott, J., Castelli, M., Sekanina, L., Haasdijk, E., García-Sánchez, P. (eds.) EuroGP 2017. LNCS, vol. 10196, pp. 294–310. Springer, Cham (2017). CrossRefGoogle Scholar
  15. 15.
    White, D.R., McDermott, J., Castelli, M., Manzoni, L., Goldman, B.W., Kronberger, G., Jaskowski, W., O’Reilly, U.M., Luke, S.: Better GP benchmarks: community survey results and proposals. Genet. Program Evolvable Mach. 14(1), 3–29 (2013)CrossRefGoogle Scholar
  16. 16.
    Carlet, C.: Boolean functions for cryptography and error correcting codes. Boolean Models Methods Math. Comput. Sci. Eng. 2, 257–397 (2010)CrossRefzbMATHGoogle Scholar
  17. 17.
    Picek, S., Jakobovic, D., Miller, J.F., Batina, L., Cupic, M.: Cryptographic boolean functions: One output, many design criteria. Appl. Soft Comput. 40, 635–653 (2016)CrossRefGoogle Scholar
  18. 18.
    Sarkar, P., Maitra, S.: Nonlinearity bounds and constructions of resilient boolean functions. In: Bellare, M. (ed.) CRYPTO 2000. LNCS, vol. 1880, pp. 515–532. Springer, Heidelberg (2000). CrossRefGoogle Scholar
  19. 19.
    McDermott, J., White, D.R., Luke, S., Manzoni, L., Castelli, M., Vanneschi, L., Jaśkowski, W., Krawiec, K., Harper, R., Jong, K.D., O’Reilly, U.M.: Genetic programming needs better benchmarks. In: Proceedings of the 14th International Conference on Genetic and Evolutionary Computation Conference, GECCO 2008, pp. 791–798. ACM, Philadelphia (2012)Google Scholar
  20. 20.
    Kaufmann, P., Kalkreuth, R.: Parametrizing cartesian genetic programming: an empirical study. In: Kern-Isberner, G., Fürnkranz, J., Thimm, M. (eds.) KI 2017. LNCS (LNAI), vol. 10505, pp. 316–322. Springer, Cham (2017). CrossRefGoogle Scholar

Copyright information

© Springer International Publishing AG, part of Springer Nature 2018

Authors and Affiliations

  1. 1.Faculty of Information TechnologyBrno University of TechnologyBrnoCzech Republic
  2. 2.Department of Computer ScienceTU Dortmund UniversityDortmundGermany

Personalised recommendations