ABSTRACT
Since Genetic Programming (GP) has been proposed, several flavors of GP have arisen, each with their own strengths and limitations. Grammar-Guided and Strongly-Typed GP (GGGP and STGP, respectively) are two popular flavors that have the advantage of allowing the practitioner to impose syntactic and semantic restrictions on the generated programs. GGGP makes use of (traditionally context-free) grammars to restrict the generation of (and the application of genetic operators on) individuals. By guiding this generation according to a grammar, i.e. a set of rules, GGGP improves performance by searching for an good-enough solution on a subset of the search space. This approach has been extended with Attribute Grammars to encode semantic restrictions, while Context-Free Grammars would only encode syntactic restrictions. STGP is also able to restrict the shape of the generated programs using a very simple grammar together with a type system. In this work, we address the question of which approach has more expressive power. We demonstrate that STGP has higher expressive power than Context-Free GGGP and less expressive power than Attribute Grammatical Evolution.
- Milad Taleby Ahvanooey, Qianmu Li, Ming Wu, and Shuo Wang. 2019. A Survey of Genetic Programming and Its Applications. KSII Trans. Internet Inf. Syst. 13, 4 (2019), 1765--1794. Google ScholarCross Ref
- Franck Binard and Amy P. Felty. 2008. Genetic programming with polymorphic types and higher-order functions. In Genetic and Evolutionary Computation Conference, GECCO 2008, Proceedings, Atlanta, GA, USA, July 12--16, 2008, Conor Ryan and Maarten Keijzer (Eds.). ACM, 1187--1194. Google ScholarDigital Library
- Pablo Ramos Criado. 2017. New techniques for Grammar Guided Genetic Programming: dealing with large derivation trees and high cardinality terminal symbol sets. Ph.D. Dissertation. Universidad Politécnica de Madrid.Google Scholar
- Marina de la Cruz, Alfonso Ortega de la Puente, and Manuel Alfonseca. 2005. Attribute Grammar Evolution. In Artificial Intelligence and Knowledge Engineering Applications: A Bioinspired Approach: First International Work-Conference on the Interplay Between Natural and Artificial Computation, IWINAC 2005, Las Palmas, Canary Islands, Spain, June 15--18, 2005, Proceedings, Part II (Lecture Notes in Computer Science, Vol. 3562), José Mira and José R. Álvarez (Eds.). Springer, 182--191. Google ScholarDigital Library
- Péricles B. C. de Miranda and Ricardo B. C. Prudêncio. 2017. Generation of Particle Swarm Optimization algorithms: An experimental study using Grammar-Guided Genetic Programming. Appl. Soft Comput. 60 (2017), 281--296. Google ScholarCross Ref
- Atze Dijkstra and S. Doaitse Swierstra. 2004. Typing Haskell with an Attribute Grammar. In Advanced Functional Programming, 5th International School, AFP 2004, Tartu, Estonia, August 14--21, 2004, Revised Lectures (Lecture Notes in Computer Science, Vol. 3622), Varmo Vene and Tarmo Uustalu (Eds.). Springer, 1--72. Google ScholarDigital Library
- Sophocles Ephremidis, Christos H. Papadimitriou, and Martha Sideri. 1987. Complexity characterizations of attribute grammar languages. In Proceedings of the Second Annual Conference on Structure in Complexity Theory, Cornell University, Ithaca, New York, USA, June 16--19, 1987. IEEE Computer Society.Google Scholar
- Guilherme Espada, Leon Ingelse, Paulo Canelas, Pedro Barbosa, and Alcides Fonseca. 2022. Data Types as a More Ergonomic Frontend for Grammar-Guided Genetic Programming. In Proceedings of the 21st ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences, GPCE 2022, Auckland, New Zealand, December 6--7, 2022, Bernhard Scholz and Yukiyoshi Kameyama (Eds.). ACM, 86--94. Google ScholarDigital Library
- Alcides Fonseca, Paulo Santos, and Sara Silva. 2020. The Usability Argument for Refinement Typed Genetic Programming. In Parallel Problem Solving from Nature - PPSN XVI - 16th International Conference, PPSN 2020, Leiden, The Netherlands, September 5--9, 2020, Proceedings, Part II (Lecture Notes in Computer Science, Vol. 12270), Thomas Bäck, Mike Preuss, André H. Deutz, Hao Wang, Carola Doerr, Michael T. M. Emmerich, and Heike Trautmann (Eds.). Springer, 18--32. Google ScholarDigital Library
- Stefan Forstenlechner, David Fagan, Miguel Nicolau, and Michael O'Neill. 2017. A Grammar Design Pattern for Arbitrary Program Synthesis Problems in Genetic Programming. In Genetic Programming - 20th European Conference, EuroGP 2017, Amsterdam, The Netherlands, April 19--21, 2017, Proceedings (Lecture Notes in Computer Science, Vol. 10196), James McDermott, Mauro Castelli, Lukás Sekanina, Evert Haasdijk, and Pablo García-Sánchez (Eds.). 262--277. Google ScholarCross Ref
- Stefan Forstenlechner, David Fagan, Miguel Nicolau, and Michael O'Neill. 2018. Extending Program Synthesis Grammars for Grammar-Guided Genetic Programming. In Parallel Problem Solving from Nature - PPSN XV - 15th International Conference, Coimbra, Portugal, September 8--12, 2018, Proceedings, Part I (Lecture Notes in Computer Science, Vol. 11101), Anne Auger, Carlos M. Fonseca, Nuno Lourenço, Penousal Machado, Luís Paquete, and L. Darrell Whitley (Eds.). Springer, 197--208. Google ScholarCross Ref
- Thomas Helmuth and Peter Kelly. 2021. PSB2: the second program synthesis benchmark suite. In GECCO '21: Genetic and Evolutionary Computation Conference, Lille, France, July 10--14, 2021, Francisco Chicano and Krzysztof Krawiec (Eds.). ACM, 785--794. Google ScholarDigital Library
- Ted Kaminski and Eric Van Wyk. 2011. Integrating Attribute Grammar and Functional Programming Language Features. In Software Language Engineering - 4th International Conference, SLE 2011, Braga, Portugal, July 3--4, 2011, Revised Selected Papers (Lecture Notes in Computer Science, Vol. 6940), Anthony M. Sloane and Uwe Aßmann (Eds.). Springer, 263--282. Google ScholarDigital Library
- Sven Karol. 2006. An introduction to attribute grammars. Department of Computer Science. Technische Universitat Dresden, Germany (2006).Google Scholar
- Mohammad Wahab Khan and Mansaf Alam. 2012. A survey of application: Genomics and genetic programming, a new frontier. Genomics 100, 2 (2012), 65--71. Google ScholarCross Ref
- Donald E. Knuth. 1968. Semantics of Context-Free Languages. Math. Syst. Theory 2, 2 (1968), 127--145. Google ScholarCross Ref
- Krzysztof Krawiec, Iwo Bladek, and Jerry Swan. 2017. Counterexample-driven genetic programming. In Proceedings of the Genetic and Evolutionary Computation Conference, GECCO 2017, Berlin, Germany, July 15--19, 2017, Peter A. N. Bosman (Ed.). ACM, 953--960. Google ScholarDigital Library
- Tomás Kren, Josef Moudrík, and Roman Neruda. 2017. Combining top-down and bottom-up approaches for automated discovery of typed programs. In 2017 IEEE Symposium Series on Computational Intelligence, SSCI 2017, Honolulu, HI, USA, November 27 - Dec. 1, 2017. IEEE, 1--8. Google ScholarCross Ref
- Tomás Kren and Roman Neruda. 2014. Generating lambda term individuals in typed genetic programming using forgetful A*. In Proceedings of the IEEE Congress on Evolutionary Computation, CEC 2014, Beijing, China, July 6--11, 2014. IEEE, 1847--1854. Google ScholarCross Ref
- Nuno Lourenço, Filipe Assunção, Francisco B. Pereira, Ernesto Costa, and Penousal Machado. 2018. Structured Grammatical Evolution: A Dynamic Approach. In Handbook of Grammatical Evolution, Conor Ryan, Michael O'Neill, and J. J. Collins (Eds.). Springer, 137--161. Google ScholarCross Ref
- Robert I. McKay, Nguyen Xuan Hoai, Peter Alexander Whigham, Yin Shan, and Michael O'Neill. 2010. Grammar-based Genetic Programming: a survey. Genet. Program. Evolvable Mach. 11, 3--4 (2010), 365--396. Google ScholarDigital Library
- David J. Montana. 1995. Strongly Typed Genetic Programming. Evol. Comput. 3, 2 (1995), 199--230. Google ScholarDigital Library
- Miguel Nicolau. 2004. Automatic grammar complexity reduction in grammatical evolution. In The 3rd Grammatical Evolution Workshop: A workshop of the 2004 Genetic and Evolutionary Computation Conference (GECCO-2004), Seattle, Washington, USA, 26--30 June 2004.Google Scholar
- Miguel Nicolau and Alexandros Agapitos. 2018. Understanding Grammatical Evolution: Grammar Design. In Handbook of Grammatical Evolution, Conor Ryan, Michael O'Neill, and J. J. Collins (Eds.). Springer, 23--53. Google ScholarCross Ref
- Adam Nohejl. 2011. Grammar-based genetic programming. (2011).Google Scholar
- Alfonso Ortega, Marina de la Cruz, and Manuel Alfonseca. 2007. Christiansen Grammar Evolution: Grammatical Evolution With Semantics. IEEE Trans. Evol. Comput. 11, 1 (2007), 77--90. Google ScholarDigital Library
- Benjamin C Pierce. 2002. Types and programming languages. MIT press.Google ScholarDigital Library
- Nadia Polikarpova and Armando Solar-Lezama. 2015. Program Synthesis from Polymorphic Refinement Types. CoRR abs/1510.08419 (2015). arXiv:1510.08419 http://arxiv.org/abs/1510.08419Google Scholar
- Conor Ryan, J. J. Collins, and Michael O'Neill. 1998. Grammatical Evolution: Evolving Programs for an Arbitrary Language. In Genetic Programming, First European Workshop, EuroGP'98, Paris, France, April 14--15, 1998, Proceedings (Lecture Notes in Computer Science, Vol. 1391), Wolfgang Banzhaf, Riccardo Poli, Marc Schoenauer, and Terence C. Fogarty (Eds.). Springer, 83--96. Google ScholarCross Ref
- Michael Sipser. 1996. Introduction to the Theory of Computation. ACM Sigact News 27, 1 (1996), 27--29.Google ScholarDigital Library
- Athanasios Tsakonas. 2006. A comparison of classification accuracy of four genetic programming-evolved intelligent structures. Inf. Sci. 176, 6 (2006), 691--724. Google ScholarDigital Library
- Silvia Regina Vergilio and Aurora Trinidad Ramirez Pozo. 2006. A Grammar-guided Genetic Programming Framework Configured for Data Mining and Software Testing. Int. J. Softw. Eng. Knowl. Eng. 16, 2 (2006), 245--268. Google ScholarCross Ref
- Stefan Wappler and Joachim Wegener. 2006. Evolutionary unit testing of object-oriented software using strongly-typed genetic programming. In Genetic and Evolutionary Computation Conference, GECCO 2006, Proceedings, Seattle, Washington, USA, July 8--12, 2006, Mike Cattolico (Ed.). ACM, 1925--1932. Google ScholarDigital Library
- Peter A Whigham et al. 1995. Grammatically-based genetic programming. In Proceedings of the workshop on genetic programming: from theory to real-world applications, Vol. 16. 33--41.Google Scholar
- Peter A. Whigham, Grant Dick, James MacLaurin, and Caitlin A. Owen. 2015. Examining the "Best of Both Worlds" of Grammatical Evolution. In Proceedings of the Genetic and Evolutionary Computation Conference, GECCO 2015, Madrid, Spain, July 11--15, 2015, Sara Silva and Anna Isabel Esparcia-Alcázar (Eds.). ACM, 1111--1118. Google ScholarDigital Library
Index Terms
- Comparing the expressive power of Strongly-Typed and Grammar-Guided Genetic Programming
Recommendations
Data Types as a More Ergonomic Frontend for Grammar-Guided Genetic Programming
GPCE 2022: Proceedings of the 21st ACM SIGPLAN International Conference on Generative Programming: Concepts and ExperiencesGenetic Programming (GP) is an heuristic method that can be applied to many Machine Learning, Optimization and Engineering problems. In particular, it has been widely used in Software Engineering for Test-case generation, Program Synthesis and ...
Design and behavior study of a grammar-guided genetic programming algorithm for mining association rules
This paper presents a proposal for the extraction of association rules called G3PARM (Grammar-Guided Genetic Programming for Association Rule Mining) that makes the knowledge extracted more expressive and flexible. This algorithm allows a context-free ...
Crossover and mutation operators for grammar-guided genetic programming
AbstractThis paper proposes a new grammar-guided genetic programming (GGGP) system by introducing two original genetic operators: crossover and mutation, which most influence the evolution process. The first, the so-called grammar-based crossover operator,...
Comments