Abstract
Genetic programming (GP) is a stochastic, iterative generate-and-test approach to synthesizing programs from tests, i.e. examples of the desired input-output mapping. The number of passed tests, or the total error in continuous domains, is a natural objective measure of a program’s performance and a common yardstick when experimentally comparing algorithms. In GP, it is also by default used to guide the evolutionary search process. An assumption that an objective function should also be an efficient ‘search driver’ is common for all metaheuristics, such as the evolutionary algorithms which GP is a member of. Programs are complex combinatorial structures that exhibit even more complex input-output behavior, and in this chapter we discuss why this complexity cannot be effectively reflected by a single scalar objective. In consequence, GP algorithms are systemically ‘underinformed’ about the characteristics of programs they operate on, and pay for this with unsatisfactory performance and limited scalability. This chapter advocates behavioral program synthesis, where programs are characterized by informative execution traces that enable multifaceted evaluation and substantially change the roles of components in an evolutionary infrastructure. We provide a unified perspective on past work in this area, discuss the consequences of the behavioral viewpoint, outlining the future avenues for program synthesis and the wider application areas that lie beyond.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Brameier M, Banzhaf W (2007) Linear genetic programming. Genetic and evolutionary computation, vol XVI. Springer, New York. http://www.springer.com/west/home/default?SGWID=4-40356-22-173660820-0
Deb K, Pratap A, Agarwal S, Meyarivan T (2002) A fast and elitist multiobjective genetic algorithm: NSGA-II. IEEE Trans Evol Comput 6(2):182–197. doi:10.1109/4235.996017
Grenander U (1989) Advances in pattern theory. Ann Stat 17(1):1–30. doi:10.1214/aos/1176347002. http://dx.doi.org/10.1214/aos/1176347002
Helmuth T, Spector L, Matheson J (2015) Solving uncompromising problems with lexicase selection. IEEE Trans Evol Comput 19(5):630–643. doi:10.1109/TEVC.2014.2362729. http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=6920034
Hofstadter DR (1979) Godel, Escher, Bach: an eternal golden braid. Basic Books, New York
Jin Y, Olhofer M, Sendhoff B (2002) A framework for evolutionary optimization with approximate fitness functions. IEEE Trans Evol Comput 6:481–494
Kocsis ZA, Swan J (2014) Asymptotic genetic improvement programming with type functors and catamorphisms (extended abstract). In: Johnson C, Krawiec K, Alberto Moraglio MO (eds) Semantic methods in genetic programming (SMGP) at parallel problem solving from nature (PPSN XIV), Ljubljana
Krawiec K (2012) On relationships between semantic diversity, complexity and modularity of programming tasks. In: Soule T, Auger A, Moore J, Pelta D, Solnon C, Preuss M, Dorin A, Ong YS, Blum C, Silva DL, Neumann F, Yu T, Ekart A, Browne W, Kovacs T, Wong ML, Pizzuti C, Rowe J, Friedrich T, Squillero G, Bredeche N, Smith SL, Motsinger-Reif A, Lozano J, Pelikan M, Meyer-Nienberg S, Igel C, Hornby G, Doursat R, Gustafson S, Olague G, Yoo S, Clark J, Ochoa G, Pappa G, Lobo F, Tauritz D, Branke J, Deb K (eds) GECCO ’12: Proceedings of the fourteenth international conference on Genetic and evolutionary computation conference. ACM, Philadelphia, pp 783–790. doi:10.1145/2330163.2330272
Krawiec K, Lichocki P (2010) Using co-solvability to model and exploit synergetic effects in evolution. In: Schaefer R, Cotta C, Kolodziej J, Rudolph G (eds) PPSN 2010 11th international conference on parallel problem solving from nature. Lecture notes in computer science, vol 6239. Springer, Krakow, pp 492–501. doi:10.1007/978-3-642-15871-1_50
Krawiec K, O’Reilly UM (2014) Behavioral programming: a broader and more detailed take on semantic GP. In: Igel C, Arnold DV, Gagne C, Popovici E, Auger A, Bacardit J, Brockhoff D, Cagnoni S, Deb K, Doerr B, Foster J, Glasmachers T, Hart E, Heywood MI, Iba H, Jacob C, Jansen T, Jin Y, Kessentini M, Knowles JD, Langdon WB, Larranaga P, Luke S, Luque G, McCall JAW, Montes de Oca MA, Motsinger-Reif A, Ong YS, Palmer M, Parsopoulos KE, Raidl G, Risi S, Ruhe G, Schaul T, Schmickl T, Sendhoff B, Stanley KO, Stuetzle T, Thierens D, Togelius J, Witt C, Zarges C (eds) GECCO ’14: Proceedings of the 2014 conference on Genetic and evolutionary computation. ACM, Vancouver, pp 935–942. doi:10.1145/2576768.2598288. http://doi.acm.org/10.1145/2576768.2598288, best paper
Krawiec K, Solar-Lezama A (2014) Improving genetic programming with behavioral consistency measure. In: Bartz-Beielstein T, Branke J, Filipic B, Smith J (eds) 13th international conference on parallel problem solving from nature. Lecture notes in computer science, vol 8672. Springer, Ljubljana, pp 434–443. doi:10.1007/978-3-319-10762-2_43
Krawiec K, Swan J (2013) Pattern-guided genetic programming. In: Blum C, Alba E, Auger A, Bacardit J, Bongard J, Branke J, Bredeche N, Brockhoff D, Chicano F, Dorin A, Doursat R, Ekart A, Friedrich T, Giacobini M, Harman M, Iba H, Igel C, Jansen T, Kovacs T, Kowaliw T, Lopez-Ibanez M, Lozano JA, Luque G, McCall J, Moraglio A, Motsinger-Reif A, Neumann F, Ochoa G, Olague G, Ong YS, Palmer ME, Pappa GL, Parsopoulos KE, Schmickl T, Smith SL, Solnon C, Stuetzle T, Talbi EG, Tauritz D, Vanneschi L (eds) GECCO ’13: Proceeding of the fifteenth annual conference on genetic and evolutionary computation conference. ACM, Amsterdam, pp 949–956. doi:10.1145/2463372.2463496
Liskowski P, Krawiec K, Helmuth T, Spector L (2015) Comparison of semantic-aware selection methods in genetic programming. In: Proceedings of the seventeenth annual conference on genetic and evolutionary computation companion, GECCO Comp (accepted)
Lungarella M, Metta G, Pfeifer R, Sandini G (2003) Developmental robotics: a survey. Conn Sci 15:151–190
McKay RIB (2000) Fitness sharing in genetic programming. In: Whitley D, Goldberg D, Cantu-Paz E, Spector L, Parmee I, Beyer HG (eds) Proceedings of the genetic and evolutionary computation conference (GECCO-2000). Morgan Kaufmann, Las Vegas, pp 435–442. http://www.cs.bham.ac.uk/~wbl/biblio/gecco2000/GP256.pdf
Miller GA (1983) Informavores. Wiley, New York, pp 111–113
Moraglio A, Krawiec K, Johnson CG (2012) Geometric semantic genetic programming. In: Coello CA, Cutello V, Deb K, Forrest S, Nicosia G, Pavone M (eds) Parallel problem solving from nature, PPSN XII (part 1). Lecture notes in computer science, vol 7491. Springer, Taormina, pp 21–31. doi:10.1007/978-3-642-32937-1_3
Popovici E, Bucci A, Wiegand RP, de Jong ED (2011) Coevolutionary principles. In: Handbook of natural computing. Springer, Heidelberg
Quinlan J (1992) C4.5: programs for machine learning. Morgan Kaufmann, San Mateo
Smith R, Forrest S, Perelson A (1993) Searching for diverse, cooperative populations with genetic algorithms. Evol. Comput. 1(2):127–149
Sparkes A, Aubrey W, Byrne E, Clare A, Khan M, Liakata M, Markham M, Rowland J, Soldatova L, Whelan K, Young M, King R (2010) Towards robot scientists for autonomous scientific discovery. Autom Exp 2(1):1. doi:10.1186/1759-4499-2-1. http://www.aejournal.net/content/2/1/1
Spector L, Robinson A (2002) Genetic programming and autoconstructive evolution with the push programming language. Genet Program Evolvable Mach 3(1):7–40. doi:10.1023/A:1014538503543. http://hampshire.edu/lspector/pubs/push-gpem-final.pdf
Swan J, Woodward J, Özcan E, Kendall G, Burke E (2014) Searching the hyper-heuristic design space. Cogn Comput 6(1):66–73. doi:10.1007/s12559-013-9201-8
Tomassini M, Vanneschi L, Collard P, Clergue M (2005) A study of fitness distance correlation as a difficulty measure in genetic programming. Evol Comput 13(2):213–239. doi:10.1162/1063656054088549
Watson RA (2006) Compositional evolution: the impact of sex, symbiosis and modularity on the gradualist framework of evolution. Vienna series in theoretical biology, vol NA. MIT Press, Cambridge. http://eprints.ecs.soton.ac.uk/10415/
Acknowledgements
Krzysztof Krawiec acknowledges support from grant 09/91/DSPB/ 0572 and National Science Centre grant 2014/15/B/ST6/05205. Una-May O’Reilly acknowledges support from Li Ka Shing Foundation.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2016 Springer International Publishing Switzerland
About this chapter
Cite this chapter
Krawiec, K., Swan, J., O’Reilly, UM. (2016). Behavioral Program Synthesis: Insights and Prospects. In: Riolo, R., Worzel, W., Kotanchek, M., Kordon, A. (eds) Genetic Programming Theory and Practice XIII. Genetic and Evolutionary Computation. Springer, Cham. https://doi.org/10.1007/978-3-319-34223-8_10
Download citation
DOI: https://doi.org/10.1007/978-3-319-34223-8_10
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-34221-4
Online ISBN: 978-3-319-34223-8
eBook Packages: Computer ScienceComputer Science (R0)