Skip to main content

Extending Program Synthesis Grammars for Grammar-Guided Genetic Programming

  • Conference paper
  • First Online:
Parallel Problem Solving from Nature – PPSN XV (PPSN 2018)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 11101))

Included in the following conference series:

Abstract

Program synthesis is a problem domain that due to its importance is tackled by many different fields, one being Genetic Programming. Two variants, Grammar-Guided Genetic Programming (G3P) and PushGP, have been applied to a vast general program synthesis benchmark suite and solved a variety of problems although with varying success rates. While G3P achieved higher success rates on some problems, PushGP was able to find solutions to more problem instances. Reason why G3P fails at some problems might be missing functionality in the grammars or knowledge that has to discovered during the runs. In this paper the current shortcomings of G3P are analysed and the papers contributions include an example of extending grammars for program synthesis, a fairer comparison between PushGP and G3P with a more similar function set as well as new results on problems that have not been solved with G3P and one that has not been solved with PushGP.

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 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.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.

    200 for Normal IO, Median and Smallest as proposed in [8].

References

  1. Agapitos, A., Lucas, S.M.: Learning recursive functions with object oriented genetic programming. In: Collet, P., Tomassini, M., Ebner, M., Gustafson, S., Ekárt, A. (eds.) EuroGP 2006. LNCS, vol. 3905, pp. 166–177. Springer, Heidelberg (2006). https://doi.org/10.1007/11729976_15

    Chapter  Google Scholar 

  2. Forstenlechner, S.: Github repository: HeuristicLab.CFGGP: Provides context free grammar problems for HeuristicLab (2016). https://github.com/t-h-e/HeuristicLab.CFGGP. Accessed 22 Mar 2018

  3. Forstenlechner, S., Fagan, D., Nicolau, M., O’Neill, M.: A grammar design pattern for arbitrary program synthesis problems in genetic programming. In: McDermott, J., Castelli, M., Sekanina, L., Haasdijk, E., García-Sánchez, P. (eds.) EuroGP 2017. LNCS, vol. 10196, pp. 262–277. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-55696-3_17

    Chapter  Google Scholar 

  4. Forstenlechner, S., Fagan, D., Nicolau, M., O’Neill, M.: Semantics-based crossover for program synthesis in genetic programming. In: Lutton, E., Legrand, P., Parrend, P., Monmarché, N., Schoenauer, M. (eds.) EA 2017. LNCS, vol. 10764, pp. 58–71. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-78133-4_5

    Chapter  Google Scholar 

  5. Gulwani, S.: Automating string processing in spreadsheets using input-output examples. In: Proceedings of the 38th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2011, pp. 317–330. ACM, New York (2011)

    Google Scholar 

  6. Helmuth, T., Spector, L., Matheson, J.: Solving uncompromising problems with lexicase selection. IEEE Trans. Evol. Comput. 19(5), 630–643 (2015)

    Article  Google Scholar 

  7. Helmuth, T., McPhee, N.F., Pantridge, E., Spector, L.: Improving generalization of evolved programs through automatic simplification. In: Proceedings of the Genetic and Evolutionary Computation Conference, GECCO 2017, pp. 937–944. ACM, Berlin, 15–19 July 2017

    Google Scholar 

  8. Helmuth, T., Spector, L.: General program synthesis benchmark suite. In: Proceedings of the 2015 on Genetic and Evolutionary Computation Conference, GECCO 15, pp. 1039–1046. ACM, Madrid, 11–15 July 2015

    Google Scholar 

  9. Katayama, S.: Recent improvements of MagicHaskeller. In: Schmid, U., Kitzelmann, E., Plasmeijer, R. (eds.) AAIP 2009. LNCS, vol. 5812, pp. 174–193. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-11931-6_9

    Chapter  Google Scholar 

  10. Keijzer, M., Ryan, C., Murphy, G., Cattolico, M.: Undirected training of run transferable libraries. In: Keijzer, M., Tettamanzi, A., Collet, P., van Hemert, J., Tomassini, M. (eds.) EuroGP 2005. LNCS, vol. 3447, pp. 361–370. Springer, Heidelberg (2005). https://doi.org/10.1007/978-3-540-31989-4_33

    Chapter  Google Scholar 

  11. Kitzelmann, E.: Inductive programming: a survey of program synthesis techniques. In: Schmid, U., Kitzelmann, E., Plasmeijer, R. (eds.) AAIP 2009. LNCS, vol. 5812, pp. 50–73. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-11931-6_3

    Chapter  Google Scholar 

  12. McKay, R., Hoai, N., Whigham, P., Shan, Y., O’Neill, M.: Grammar-based genetic programming: a survey. Genet. Program. Evol. Mach. 11(3–4), 365–396 (2010)

    Article  Google Scholar 

  13. O’Neill, M., Nicolau, M., Agapitos, A.: Experiments in program synthesis with grammatical evolution: a focus on integer sorting. In: 2014 IEEE Congress on Evolutionary Computation (CEC), pp. 1504–1511, July 2014

    Google Scholar 

  14. O’Neill, M., Ryan, C.: Grammatical Evolution: Evolutionary Automatic Programming in an Arbitrary Language. Kluwer Academic Publishers, Norwell (2003)

    Book  Google Scholar 

  15. Pantridge, E., Helmuth, T., McPhee, N.F., Spector, L.: On the difficulty of benchmarking inductive program synthesis methods. In: Proceedings of the Genetic and Evolutionary Computation Conference Companion, GECCO 2017, pp. 1589–1596. ACM, New York (2017)

    Google Scholar 

  16. Saber, T., Fagan, D., Lynch, D., Kucera, S., Claussen, H., O’Neill, M.: Multi-level grammar genetic programming for scheduling in heterogeneous networks. In: Castelli, M., Sekanina, L., Zhang, M., Cagnoni, S., García-Sánchez, P. (eds.) EuroGP 2018. LNCS, vol. 10781, pp. 118–134. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-77553-1_8

    Chapter  Google Scholar 

  17. Spector, L., Robinson, A.: Genetic programming and autoconstructive evolution with the push programming language. Genet. Program. Evol. Mach. 3(1), 7–40 (2002)

    Article  Google Scholar 

  18. Helmuth, T., Spector, L.: Detailed problem descriptions for general program synthesis benchmark suite. Technical report, School of Computer Science, University of Massachusetts Amherst (2015)

    Google Scholar 

  19. Whigham, P.A.: Grammatical bias for evolutionary learning. Ph.D. thesis, University of New South Wales, Australia (1996)

    Google Scholar 

  20. Yu, T.: A higher-order function approach to evolve recursive programs. In: Yu, T., Riolo, R., Worzel, B. (eds.) Genetic Programming Theory and Practice III. GPEM, pp. 93–108. Springer, Boston (2006). https://doi.org/10.1007/0-387-28111-8_7

    Chapter  Google Scholar 

Download references

Acknowledgments

This research is based upon works supported by the Science Foundation Ireland, under Grant No. 13/IA/1850.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Stefan Forstenlechner .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Forstenlechner, S., Fagan, D., Nicolau, M., O’Neill, M. (2018). Extending Program Synthesis Grammars for Grammar-Guided Genetic Programming. In: Auger, A., Fonseca, C., Lourenço, N., Machado, P., Paquete, L., Whitley, D. (eds) Parallel Problem Solving from Nature – PPSN XV. PPSN 2018. Lecture Notes in Computer Science(), vol 11101. Springer, Cham. https://doi.org/10.1007/978-3-319-99253-2_16

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-99253-2_16

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-99252-5

  • Online ISBN: 978-3-319-99253-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics