Abstract
In Genetic Programming (GP) systems, particularly those that target general program synthesis problems, it is common to use imperative programming languages to represent evolving code. In this work, we consider the benefits of using a purely functional, rather than an imperative, approach. We then demonstrate some of these benefits via an experimental comparison of the pure functional language Haskell and the imperative language Python when solving program synthesis benchmarks within a grammar-guided GP system. Notably, we discover that the Haskell programs yield a higher success rate on unseen data, and that the evolved programs often have a higher degree of interpretability. We also discuss the broader issues of adapting a grammar-based GP system to functional languages, and highlight some of the challenges involved with carrying out comparisons using existing benchmark suites.
Original language | English |
---|---|
Title of host publication | GECCO '22: Proceedings of the Genetic and Evolutionary Computation Conference Companion |
Publisher | Association for Computing Machinery |
Pages | 1844–1853 |
Number of pages | 10 |
ISBN (Print) | 9781450392686 |
DOIs | |
Publication status | Published - 19 Jul 2022 |
Event | Genetic and Evolutionary Computation Conference 2022 - hybrid, Boston, United States Duration: 9 Jul 2022 → 13 Jul 2022 https://gecco-2022.sigevo.org/ |
Conference
Conference | Genetic and Evolutionary Computation Conference 2022 |
---|---|
Abbreviated title | GECCO 2022 |
Country/Territory | United States |
City | Boston |
Period | 9/07/22 → 13/07/22 |
Internet address |
Keywords
- functional programming
- genetic programming
- program synthesis
ASJC Scopus subject areas
- Artificial Intelligence
- Software
- Computational Mathematics
- Theoretical Computer Science