Skip to main content

Continuous Cartesian Genetic Programming with Particle Swarm Optimization

  • Conference paper
  • First Online:
Book cover Intelligent Systems Design and Applications (ISDA 2018 2018)

Part of the book series: Advances in Intelligent Systems and Computing ((AISC,volume 941))

  • 1069 Accesses

Abstract

Cartesian Genetic Programming (CGP) is a type of Genetic Programming, which uses a sequence of integers to represent an executable graph structure. The most common way of optimizing the CGP is to use a simple evolutionary strategy with mutations, which randomly changes the integer values of integer sequence. We propose an alternative genotype-phenotype mapping procedure for CGP allowing usage of real-valued numbers in genotype. Novel representation allows continuous transition between various functions and inputs of each given node (hence the name, Continuous CGP), which means, that the optimization of CGP individual is transformed from combinatorial optimization problem to continuous optimization problem. This allows leveraging various metaheuristic optimization algorithms. In this paper, we present results obtained by Particle Swarm Optimization algorithm, showing that continuous representation is able to outperform classic CGP in some benchmarks and provides competitive results with one of the best performing symbolic regression systems in literature.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 169.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 219.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    https://github.com/Jarino/tengp.

  2. 2.

    https://github.com/Jarino/cgp-optimization.

References

  1. Al-Sahaf, H., Zhang, M., Al-Sahaf, A., Johnston, M.: Keypoints detection and feature extraction: a dynamic genetic programming approach for evolving rotation-invariant texture image descriptors. IEEE Trans. Evol. Comput. 21(6), 825–844 (2017)

    Article  Google Scholar 

  2. Al-Sahaf, H., Zhang, M., Johnston, M.: Binary image classification: a genetic programming approach to the problem of limited training instances. Evol. Comput. 24(1), 143–182 (2016)

    Article  Google Scholar 

  3. Biscani, F., Izzo, D.: esa/pagmo2: pagmo 2.9, August 2018. https://doi.org/10.5281/zenodo.1406840

  4. Castejón, F., Carmona, E.J.: Automatic design of analog electronic circuits using grammatical evolution. Appl. Soft Comput. 62, 1003–1018 (2018)

    Article  Google Scholar 

  5. Clegg, J.: Combining cartesian genetic programming with an estimation of distribution algorithm. In: Proceedings of the 10th Annual Conference on Genetic and Evolutionary Computation, GECCO 2008, pp. 1333–1334. ACM, New York (2008). https://doi.org/10.1145/1389095.1389350

  6. Clegg, J., Walker, J.A., Miller, J.F.: A new crossover technique for cartesian genetic programming. In: Proceedings of the 9th Annual Conference on Genetic and Evolutionary Computation, GECCO 2007, pp. 1580–1587. ACM, New York (2007). https://doi.org/10.1145/1276958.1277276

  7. Goldman, B.W., Punch, W.F.: Analysis of cartesian genetic programming’s evolutionary mechanisms. IEEE Trans. Evol. Comput. 19(3), 359–373 (2015). https://doi.org/10.1109/TEVC.2014.2324539

    Article  Google Scholar 

  8. Holland, J.H.: Adaptation in Natural and Artificial Systems: An Introductory Analysis with Applications to Biology, Control, and Artificial Intelligence. MIT press, Cambridge (1992)

    Book  Google Scholar 

  9. Kalkreuth, R., Rudolph, G., Krone, J.: Improving convergence in cartesian genetic programming using adaptive crossover, mutation and selection. In: 2015 IEEE Symposium Series on Computational Intelligence, pp. 1415–1422, December 2015. https://doi.org/10.1109/SSCI.2015.201

  10. 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.) Genetic Programming, pp. 294–310. Springer International Publishing, Cham (2017)

    Chapter  Google Scholar 

  11. Kaufmann, P., Platzner, M.: Advanced techniques for the creation and propagation of modules in cartesian genetic programming. In: Proceedings of the 10th Annual Conference on Genetic and Evolutionary Computation, GECCO 2008, pp. 1219–1226. ACM, New York (2008). https://doi.org/10.1145/1389095.1389334

  12. Kennedy, J.: Particle Swarm Optimization, pp. 760–766. Springer, Boston (2010). https://doi.org/10.1007/978-0-387-30164-8_630

    Chapter  Google Scholar 

  13. Khan, M.M., Ahmad, A.M., Khan, G.M., Miller, J.F.: Fast learning neural networks using cartesian genetic programming. Neurocomputing 121, 274–289 (2013)

    Article  Google Scholar 

  14. Koza, J.R.: Genetic programming as a means for programming computers by natural selection. Stat. Comput. 4(2), 87–112 (1994)

    Article  Google Scholar 

  15. Lensen, A., Xue, B., Zhang, M.: GPGC: genetic programming for automatic clustering using a flexible non-hyper-spherical graph-based approach. In: Proceedings of the Genetic and Evolutionary Computation Conference, pp. 449–456. ACM (2017)

    Google Scholar 

  16. Meier, A., Gonter, M., Kruse, R.: Accelerating convergence in cartesian genetic programming by using a new genetic operator. In: Proceedings of the 15th Annual Conference on Genetic and Evolutionary Computation, GECCO 2013, pp. 981–988. ACM, New York (2013). https://doi.org/10.1145/2463372.2463481

  17. Miller, J.F., Thomson, P., Fogarty, T.: Designing electronic circuits using evolutionary algorithms. arithmetic circuits: a case study (1997)

    Google Scholar 

  18. Miller, J.F.: An empirical study of the efficiency of learning boolean functions using a cartesian genetic programming approach. In: Proceedings of the 1st Annual Conference on Genetic and Evolutionary Computation - Volume 2, GECCO 1999, pp. 1135–1142. Morgan Kaufmann Publishers Inc., San Francisco (1999)

    Google Scholar 

  19. Miller, J.F., Thomson, P.: Cartesian genetic programming. In: Poli, R., Banzhaf, W., Langdon, W.B., Miller, J., Nordin, P., Fogarty, T.C. (eds.) Genetic Programming, pp. 121–132. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  20. Oesch, C.: P-tree programming. In: 2017 IEEE Symposium Series on Computational Intelligence (SSCI), pp. 1–7, November 2017. https://doi.org/10.1109/SSCI.2017.8280849

  21. Papa, J.P., Rosa, G.H., Papa, L.P.: A binary-constrained geometric semantic genetic programming for feature selection purposes. Pattern Recognit. Lett. 100, 59–66 (2017)

    Article  Google Scholar 

  22. Poli, R., McPhee, N.F.: Covariant parsimony pressure in genetic programming. Technical report, Citeseer (2008)

    Google Scholar 

  23. Uy, N.Q., Hoai, N.X., O’Neill, M., McKay, R.I., Galván-López, E.: Semantically-based crossover in genetic programming: application to real-valued symbolic regression. Genet. Program. Evolvable Mach. 12(2), 91–119 (2011). https://doi.org/10.1007/s10710-010-9121-2

    Article  Google Scholar 

  24. Voss, M.S.: Social programming using functional swarm optimization. In: Proceedings of the 2003 IEEE Swarm Intelligence Symposium, SIS 2003 (Cat. No.03EX706), pp. 103–109, April 2003. https://doi.org/10.1109/SIS.2003.1202254

  25. Walker, J.A., Miller, J.F., Cavill, R.: A multi-chromosome approach to standard and embedded cartesian genetic programming. In: Proceedings of the 8th Annual Conference on Genetic and Evolutionary Computation, GECCO 2006, pp. 903–910. ACM, New York (2006). https://doi.org/10.1145/1143997.1144153

  26. White, D.R., McDermott, J., Castelli, M., Manzoni, L., Goldman, B.W., Kronberger, G., Jaśkowski, W., O’Reilly, U.M., Luke, S.: Better GP benchmarks: community survey results and proposals. Genet. Program. Evolvable Mach. 14(1), 3–29 (2013). https://doi.org/10.1007/s10710-012-9177-2

    Article  Google Scholar 

Download references

Acknowledgment

This work was partially supported by the Slovak Research and Development Agency under the contract APVV-16-0213 and by the Operational Programme Research & Innovation, funded by the ERDF, project No. ITMS 26240120039.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Jaroslav Loebl .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2020 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Loebl, J., Rozinajová, V. (2020). Continuous Cartesian Genetic Programming with Particle Swarm Optimization. In: Abraham, A., Cherukuri, A., Melin, P., Gandhi, N. (eds) Intelligent Systems Design and Applications. ISDA 2018 2018. Advances in Intelligent Systems and Computing, vol 941. Springer, Cham. https://doi.org/10.1007/978-3-030-16660-1_96

Download citation

Publish with us

Policies and ethics