Teaching GP to program like a human software developer: using perplexity pressure to guide program synthesis approaches
Created by W.Langdon from
gp-bibliography.bib Revision:1.8051
- @InProceedings{Sobania:2019:GECCO,
-
author = "Dominik Sobania and Franz Rothlauf",
-
title = "Teaching {GP} to program like a human software
developer: using perplexity pressure to guide program
synthesis approaches",
-
booktitle = "GECCO '19: Proceedings of the Genetic and Evolutionary
Computation Conference",
-
year = "2019",
-
editor = "Manuel Lopez-Ibanez and Thomas Stuetzle and
Anne Auger and Petr Posik and Leslie {Peprez Caceres} and
Andrew M. Sutton and Nadarajen Veerapen and
Christine Solnon and Andries Engelbrecht and Stephane Doncieux and
Sebastian Risi and Penousal Machado and
Vanessa Volz and Christian Blum and Francisco Chicano and
Bing Xue and Jean-Baptiste Mouret and Arnaud Liefooghe and
Jonathan Fieldsend and Jose Antonio Lozano and
Dirk Arnold and Gabriela Ochoa and Tian-Li Yu and
Holger Hoos and Yaochu Jin and Ting Hu and Miguel Nicolau and
Robin Purshouse and Thomas Baeck and Justyna Petke and
Giuliano Antoniol and Johannes Lengler and
Per Kristian Lehre",
-
isbn13 = "978-1-4503-6111-8",
-
pages = "1065--1074",
-
address = "Prague, Czech Republic",
-
DOI = "doi:10.1145/3321707.3321738",
-
publisher = "ACM",
-
publisher_address = "New York, NY, USA",
-
month = "13-17 " # jul,
-
organisation = "SIGEVO",
-
keywords = "genetic algorithms, genetic programming, Genetic
improvement, grammatical evolution, Software synthesis,
Mining software repositories, Language model, SBSE,
Search-based software engineering, Design and analysis
of algorithms, GitHub",
-
size = "10 pages",
-
abstract = "Program synthesis is one of the relevant applications
of GP with a strong impact on new fields such as
genetic improvement. In order for synthesized code to
be used in real-world software, the structure of the
programs created by GP must be maintainable. We can
teach GP how real-world software is built by learning
the relevant properties of mined human-coded software:
which can be easily accessed through repository hosting
services such as GitHub. So combining program synthesis
and repository mining is a logical step. In this paper,
we analyse if GP can write programs with properties
similar to code produced by human software developers.
First, we compare the structure of functions generated
by different GP initialization methods to a mined
corpus containing real-world software. The results show
that the studied GP initialization methods produce a
totally different combination of programming language
elements in comparison to real-world software. Second,
we propose perplexity pressure and analyze how its use
changes the properties of code produced by GP. The
results are very promising and show that we can guide
the search to the desired program structure. Thus, we
recommend using perplexity pressure as it can be easily
integrated in various search-based algorithms.",
-
notes = "Also known as \cite{3321738} GECCO-2019 A
Recombination of the 28th International Conference on
Genetic Algorithms (ICGA) and the 24th Annual Genetic
Programming Conference (GP)",
- }
Genetic Programming entries for
Dominik Sobania
Franz Rothlauf
Citations