Skip to main content

Genetic Programming

  • Chapter
  • First Online:
Search and Optimization by Metaheuristics
  • 3293 Accesses

Abstract

Genetic programming (GP) is a variant of GA whose chromosomes have variable length and data structure in the form of hierarchical trees. It is an automated method for evolving computer programs from a high-level statement of a problem. This chapter is dedicated to GP.

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 49.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 64.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 99.99
Price excludes VAT (USA)
  • Durable hardcover 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

References

  1. Alfaro-Cid E, Merelo JJ, Fernandez de Vega F, Esparcia-Alcazar AI, Sharman K. Bloat control operators and diversity in genetic programming: a comparative study. Evol Comput. 2010;18(2):305–32.

    Article  Google Scholar 

  2. Blickle T, Thiele L. Genetic programming and redundancy. In: Hopf J, editor. Proceedings of KI-94 workshop on genetic algorithms within the framework of evolutionary computation. Germany: Saarbrucken; September 1994. p. 33–8.

    Google Scholar 

  3. Crawford-Marks R, Spector L. Size control via size fair genetic operators in the PushGP genetic programming system. In: Proceedings of the genetic and evolutionary computation conference (GECCO), New York, USA, July 2002. pp. 733–739.

    Google Scholar 

  4. Daida JM, Li H, Tang R, Hilss AM. What makes a problem GP-hard? validating a hypothesis of structural causes. In: Cantu-Paz E, et al., editors. Proceedings of genetic and evolutionary computation conference (GECCO), Chicago, IL, USA; July 2003. p. 1665–77.

    Google Scholar 

  5. Dignum S, Poli R. Generalisation of the limiting distribution of program sizes in tree-based genetic programming and analysis of its effects on bloat. In: Proceedings of the 9th annual conference on genetic and evolutionary computation (GECCO), London, UK, July 2007. p. 1588–1595.

    Google Scholar 

  6. Dignum S, Poli R. Operator equalisation and bloat free GP. In: Proceedings of the 11th European conference on genetic programming (EuroGP), Naples, Italy, March 2008. p. 110–121.

    Google Scholar 

  7. Ekart A. Shorter fitness preserving genetic programs. In: Proceedings of the 4th European conference on artificial evolution (AE’99), Dunkerque, France, November 1999. Berlin: Springer; 2000. p. 73–83.

    Google Scholar 

  8. Ekart A, Nemeth SZ. Selection based on the Pareto nondomination criterion for controlling code growth in genetic pregramming. Genet Program Evol Mach. 2001;2(1):61–73.

    Article  MATH  Google Scholar 

  9. Ferreira C. Gene expression programming: a new adaptive algorithm for solving problems. Complex Syst. 2001;13(2):87–129.

    MathSciNet  MATH  Google Scholar 

  10. Hoai NX, McKay RIB, Essam D. Representation and structural difficulty in genetic programming. IEEE Trans Evol Comput. 2006;10(2):157–66.

    Article  Google Scholar 

  11. Kinzett D, Johnston M, Zhang M. Numerical simplification for bloat control and analysis of building blocks in genetic programming. Evol Intell. 2009;2:151–68.

    Article  Google Scholar 

  12. Koza JR. Genetic programming: on the programming of computers by means of natural selection. Cambridge: MIT Press; 1992.

    MATH  Google Scholar 

  13. Langdon WB. Size fair and homologous tree genetic programming crossovers. Genet Program Evol Mach. 2000;1:95–119.

    Article  MATH  Google Scholar 

  14. Langdon WB, Poli R. Fitness causes bloat. In: Proceedings of the world conference on soft computing in engineering design and manufacturing, London, UK, June 1997. p. 13–22.

    Google Scholar 

  15. Luke S. Code growth is not caused by introns. In: Proceedings of the genetic and evolutionary computation conference (GECCO’00), Las Vegas, NV, USA, July 2000. p. 228–235.

    Google Scholar 

  16. Luke S. Modification point depth and genome growth in genetic programming. Evol Comput. 2003;11(1):67–106.

    Article  Google Scholar 

  17. Luke S, Panait L. Lexicographic parsimony pressure. In: Proceedings of the genetic and evolutionary computation conference (GECCO), New York, USA, July 2002. p. 829–836.

    Google Scholar 

  18. Luke S, Panait L. Fighting bloat with nonparametric parsimony pressure. In: Proceedings of the 7th international conference on parallel problem solving from nature (PPSN VII), Granada, Spain, September 2002. p. 411–421.

    Google Scholar 

  19. Luke S, Panait L. A comparison of bloat control methods for genetic programming. Evol Comput. 2006;14(3):309–44.

    Article  Google Scholar 

  20. Madar J, Abonyi J, Szeifert F. Genetic programming for the identification of nonlinear input-output models. Ind Eng Chem Res. 2005;44(9):3178–86.

    Article  Google Scholar 

  21. Nordin P, Francone F, Banzhaf W. Explicitly defined introns and destructive crossover in genetic programming. In: Rosca JP, editor. Proceedings of the workshop on genetic programming: from theory to real-world applications, Tahoe City, July 1995. p. 6–22.

    Google Scholar 

  22. Oltean M, Grosan C. A comparison of several linear genetic programming techniques. Complex Syst. 2003;14:4. 285CC314.

    Google Scholar 

  23. O’Neill M, Ryan C. Grammatical evolution. IEEE Trans Evol Comput. 2001;5(4):349–58.

    Article  Google Scholar 

  24. Ortega A, de la Cruz M, Alfonseca M. Christiansen grammar evolution: grammatical evolution with semantics. IEEE Trans Evol Comput. 2007;11(1):77–90.

    Article  Google Scholar 

  25. Panait L, Luke S. Alternative bloat control methods. In: Proceedings of genetic and evolutionary computation conference (GECCO), Seattle, WA, USA, June 2004. p. 630–641.

    Google Scholar 

  26. Poli R. General schema theory for genetic programming with subtree-swapping crossover. In: Proceedings of the 4th European conference on genetic programming (EuroGP), Lake Como, Italy, April 2001. p. 143–159.

    Google Scholar 

  27. Poli R. A simple but theoretically-motivated method to control bloat in genetic programming. In: Proceedings of the 6th European conference on genetic programming (EuroGP), Essex, UK, April 2003. p. 204–217.

    Google Scholar 

  28. Poli R, Langdon WB. Genetic programming with one-point crossover. In: Chawdhry PK, Roy R, Pant RK, editors. Soft computing in engineering design and manufacturing, Part 4. Berlin: Springer; 1997. p. 180–189.

    Google Scholar 

  29. Poli R, McPhee NF. General schema theory for genetic programming with subtree-swapping crossover: Part II. Evol Comput. 2003;11(2):169–206.

    Article  Google Scholar 

  30. Poli R, McPhee NF. Parsimony pressure made easy. In: Proceedings of the 10th annual conference on genetic and evolutionary computation (GECCO’08), Atlanta, GA, USA, July 2008. p. 1267–1274.

    Google Scholar 

  31. Silva S, Costa E. Dynamic limits for bloat control in genetic programming and a review of past and current bloat theories. Genet Program Evol Mach. 2009;10(2):141–79.

    Article  MathSciNet  Google Scholar 

  32. Silva S, Dignum S. Extending operator equalisation: fitness based self adaptive length distribution for bloat free GP. In: Proceedings of the 12th European conference on genetic programming (EuroGP), Tubingen, Germany, April 2009. p. 159–170.

    Google Scholar 

  33. Soule T, Foster JA. Removal bias: a new cause of code growth in tree based evolutionary programming. In: Proceedings of the IEEE international conference on evolutionary computation, Anchorage, AK, USA, May 1998. p. 781–786.

    Google Scholar 

  34. Syswerda G. A study of reproduction in generational and steady state genetic algorithms. In: Rawlings GJE, editor. Foundations of genetic algorithms. San Mateo: Morgan Kaufmann; 1991. p. 94–101.

    Google Scholar 

  35. Tackett WA. Recombination, selection and the genetic construction of genetic programs. PhD thesis, University of Southern California, Los Angeles, CA, USA, 1994.

    Google Scholar 

  36. Trujillo L. Genetic programming with one-point crossover and subtree mutation for effective problem solving and bloat control. Soft Comput. 2011;15:1551–67.

    Article  Google Scholar 

  37. Vladislavleva EJ, Smits GF, den Hertog D. Order of nonlinearity as a complexity measure for models generated by symbolic regression via Pareto genetic programming. IEEE Trans Evol Comput. 2009;13(2):333–49.

    Article  Google Scholar 

  38. Walker JA, Miller JF. The automatic acquisition, evolution and reuse of modules in Cartesian genetic programming. IEEE Trans Evol Comput. 2008;12(4):397–417.

    Article  Google Scholar 

  39. Zhong J, Ong Y, Cai W. Self-learning gene expression programming. IEEE Trans Evol Comput. 2016;20(1):65–80.

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Ke-Lin Du .

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer International Publishing Switzerland

About this chapter

Cite this chapter

Du, KL., Swamy, M.N.S. (2016). Genetic Programming. In: Search and Optimization by Metaheuristics. Birkhäuser, Cham. https://doi.org/10.1007/978-3-319-41192-7_4

Download citation

Publish with us

Policies and ethics