Swan, Jerry, Krawiec, Krzysztof and Ghani, Neil (2017) Polytypic Genetic Programming. In: Squillero, Giovanni, (ed.) 20th European Conference on the Applications of Evolutionary Computation. LNCS . Springer , Amsterdam , pp. 66-81.
Abstract
Program synthesis via heuristic search often requires a great deal of boilerplate code to adapt program APIs to the search mechanism. In addition, the majority of existing approaches are not type-safe: i.e. they can fail at runtime because the search mechanisms lack the strict type information often available to the compiler. In this article, we describe Polytope, a Scala framework that uses polytypic programming, a relatively recent advance in program abstraction. Polytope requires a minimum of boilerplate code and supports a form of strong-typing in which type rules are automatically enforced by the compiler, even for search operations such as mutation which are applied at run-time. By operating directly on language-native expressions, it provides an embeddable optimization procedure for existing code. We give a tutorial example of the specific polytypic approach we adopt and compare both runtime efficiency and required lines of code against the well-known EpochX GP framework, showing comparable performance in the former and the complete elimination of boilerplate for the latter.
Metadata
Item Type: | Proceedings Paper |
---|---|
Authors/Creators: |
|
Editors: |
|
Keywords: | genetic algorithms, genetic programming, genetic Improvement, Polytypic programming, Datatype generic programming, Functional programming, Scala, EBNF grammar, ADT, 6-mux |
Dates: |
|
Institution: | The University of York |
Academic Units: | The University of York > Faculty of Sciences (York) > Computer Science (York) |
Depositing User: | Pure (York) |
Date Deposited: | 20 Jun 2017 13:30 |
Last Modified: | 08 Feb 2025 00:10 |
Published Version: | https://doi.org/10.1007/978-3-319-55792-2_5 |
Status: | Published |
Publisher: | Springer |
Series Name: | LNCS |
Identification Number: | 10.1007/978-3-319-55792-2_5 |
Open Archives Initiative ID (OAI ID): | oai:eprints.whiterose.ac.uk:117964 |
Download
Filename: polytypic_genetic_programming.pdf
Description: Polytypic Genetic Programming - preprint