Exploring Genetic Programming Systems with MAP-Elites
MAP-Elites is an evolutionary computation technique that has proven valuable for exploring and illuminating the genotype-phenotype space of a computational problem. In MAP-Elites, a population is structured based on phenotypic traits of prospective solutions; each cell represents a distinct combination of traits and maintains only the most fit organism found with those traits. The resulting map of trait combinations allows the user to develop a better understanding of how each trait relates to fitness and how traits interact. While MAP-Elites has not been demonstrated to be competitive for identifying the optimal Pareto front, the insights it provides do allow users to better understand the underlying problem. In particular, MAP-Elites has provided insight into the underlying structure of problem representations, such as the value of connection cost or modularity to evolving neural networks. Here, we extend the use of MAP-Elites to examine genetic programming representations, using aspects of program architecture as traits to explore. We demonstrate that MAP-Elites can generate programs with a much wider range of architectures than other evolutionary algorithms do (even those that are highly successful at maintaining diversity), which is not surprising as this is the purpose of MAP-Elites. Ultimately, we propose that MAP-Elites is a useful tool for understanding why genetic programming representations succeed or fail and we suggest that it should be used to choose selection techniques and tune parameters.
We thank members of the MSU Digital Evolution Lab for helpful comments and suggestions on this manuscript. This research was supported by the National Science Foundation (NSF) through the BEACON Center (Cooperative Agreement DBI-0939454), Graduate Research Fellowships to ED and AL (Grant No. DGE-1424871), and NSF Grant No. DEB-1655715 to CO. Michigan State University provided computational resources through the Institute for Cyber-Enabled Research and the Digital Scholarship Lab. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the NSF or MSU.
- 1.Angeline, P.J., Pollack, J.B.: The evolutionary induction of subroutines. Proceedings of the Fourteenth Annual Conference of the Cognitive Science Society pp. 236–241 (1992)Google Scholar
- 2.Arnold, T.A., Emerson, J.W.: Nonparametric Goodness-of-Fit Tests for Discrete Null Distributions. The R Journal 3, 34–39 (2011)Google Scholar
- 4.Chikumbo, O., Goodman, E., Deb, K.: Approximating a multi-dimensional Pareto front for a land use management problem: A modified MOEA with an epigenetic silencing metaphor. In: 2012 IEEE Congress on Evolutionary Computation, pp. 1–9 (2012)Google Scholar
- 7.Helmuth, T., Spector, L.: General Program Synthesis Benchmark Suite. In: Proceedings of the 2015 Annual Conference on Genetic and Evolutionary Computation, GECCO ‘15, pp. 1039–1046. ACM, New York, NY, USA (2015)Google Scholar
- 8.Keijzer, M., Ryan, C., Murphy, G., Cattolico, M.: Genetic Programming, Lecture Notes in Computer Science, vol. 3447. Springer, Berlin, Heidelberg (2005)Google Scholar
- 12.Lalejini, A., Dolson, E.: amlalejini/GPTP-2018-Exploring-Genetic- Programming-Systems-with-MAP-Elites: Initial Release (2018). URL https://doi.org/10.5281/zenodo.1345799
- 13.Lalejini, A., Ofria, C.: What else is in an evolved name? Exploring evolvable specificity with SignalGP. PeerJ Preprints 6:e27122v1 pp. 1–21 (2018)Google Scholar
- 15.Mouret, J.B., Clune, J.: Illuminating search spaces by mapping elites. arXiv:1504.04909 [cs, q-bio] (2015). ArXiv: 1504.04909Google Scholar
- 16.Ofria, C., Dolson, E., Lalejini, A., Fenton, J., Jorgensen, S., Miller, R., Moreno, M., Stredwick, J., Zaman, L., Schossau, J., leg2015, cgnitash, V, A.: amlalejini/Empirical: GPTP 2018 - Exploring Genetic Programming Systems with MAP-Elites (2018). URL https://doi.org/10.5281/zenodo.1346397.
- 18.Pugh, J.K., Soros, L.B., Szerlip, P.A., Stanley, K.O.: Confronting the Challenge of Quality Diversity. In: Proceedings of the 2015 Annual Conference on Genetic and Evolutionary Computation, GECCO ‘15, pp. 967–974. ACM, New York, NY, USA (2015)Google Scholar
- 19.R Core Team: R: A Language and Environment for Statistical Computing. R Foundation for Statistical Computing, Vienna, Austria (2017). URL https://www.R-project.org/
- 20.Roberts, S.C., Howard, D., Koza, J.R.: Evolving modules in Genetic Programming by subtree encapsulation. Genetic Programming, Proceedings of EuroGP’2001 LNCS 2038, 160–175 (2001)Google Scholar
- 21.Spector, L.: Simultaneous Evolution of Programs and their Control Structures. Advances in Genetic Programming 2 pp. 137–154 (1996)Google Scholar
- 22.Spector, L.: Autoconstructive Evolution: Push, PushGP, and Pushpop. GECCO-2001, pp. 137–146 (2001)Google Scholar
- 23.Spector, L.: Assessment of problem modality by differential performance of lexicase selection in genetic programming: a preliminary report. In: Proceedings of the 14th annual conference companion on Genetic and evolutionary computation, pp. 401–408. ACM (2012)Google Scholar
- 24.Spector, L., Martin, B., Harrington, K., Helmuth, T.: Tag-based modules in genetic programming. GECCO ‘11: Proceedings of the 13th annual conference on Genetic and evolutionary computation pp. 1419–1426 (2011)Google Scholar
- 25.Spector, L., McPhee, N.F.: Expressive genetic programming: concepts and applications. In: Proceedings of the Genetic and Evolutionary Computation Conference Companion on - GECCO ‘18, pp. 977–997. ACM Press, Kyoto, Japan (2018)Google Scholar
- 27.Wickham, H.: ggplot2: elegant graphics for data analysis. Springer, New York (2009)Google Scholar