skip to main content
10.1145/2908961.2931727acmconferencesArticle/Chapter ViewAbstractPublication PagesgeccoConference Proceedingsconference-collections
research-article

Evolution Evolves with Autoconstruction

Published:20 July 2016Publication History

ABSTRACT

In autoconstructive evolutionary algorithms, individuals implement not only candidate solutions to specified computational problems, but also their own methods for variation of offspring. This makes it possible for the variation methods to themselves evolve, which could, in principle, produce a system with an enhanced capacity for adaptation and superior problem solving power. Prior work on autoconsruction has explored a range of system designs and their evolutionary dynamics, but it has not solved hard problems. Here we describe a new approach that can indeed solve at least some hard problems. We present the key components of this approach, including the use of linear genomes for hierarchically structured programs, a diversity-maintaining parent selection algorithm, and the enforcement of diversification constraints on offspring. We describe a software synthesis benchmark problem that our new approach can solve, and we present visualizations of data from single successful runs of autoconstructive vs. non-autoconstructive systems on this problem. While anecdotal, the data suggests that variation methods, and therefore significant aspects of the evolutionary process, evolve over the course of the autoconstructive runs.

References

  1. C. Adami, C. T. Brown, and W. K. Kellogg. Evolutionary Learning in the 2D Artificial Life System Avida. In Artificial Life IV, pages 377--381, 1994.Google ScholarGoogle Scholar
  2. P. J. Angeline. Adaptive and self-adaptive evolutionary computations. In M. Palaniswami and Y. Attikiouzel, editors, Computational Intelligence: A Dynamic Systems Perspective, pages 152--163. IEEE Press, 1995.Google ScholarGoogle Scholar
  3. P. J. Angeline. Two self-adaptive crossover operators for genetic programming. In P. J. Angeline and K. E. Kinnear, Jr., editors, Advances in Genetic Programming 2, chapter 5, pages 89--110. MIT Press, Cambridge, MA, USA, 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. H.-G. Beyer and S. Meyer-Nieberg. Self-adaptation of evolution strategies under noisy fitness evaluations. Genetic Programming and Evolvable Machines, 7(4):295--328, Dec. 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. A. W. Covert, R. E. Lenski, C. O. Wilke, and C. Ofria. Experiments on the role of deleterious mutations as stepping stones in adaptive evolution. Proceedings of the National Academy of Sciences, 110(34):E3171--E3178, 2013.Google ScholarGoogle ScholarCross RefCross Ref
  6. R. Crawford-Marks and L. Spector. Size control via size fair genetic operators in the PushGP genetic programming system. In GECCO 2002: Proceedings of the Genetic and Evolutionary Computation Conference, pages 733--739. Morgan Kaufmann Publishers, 2002.Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. L. Diosan and M. Oltean. Evolutionary design of evolutionary algorithms. Genetic Programming and Evolvable Machines, 10(3):263--306, Sept. 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. B. Edmonds. Meta-genetic programming: Co-evolving the operators of variation. Elektrik, 9(1):13--29, May 2001. Turkish Journal Electrical Engineering and Computer Sciences.Google ScholarGoogle Scholar
  9. A. E. Eiben, R. Hinterding, and Z. Michalewicz. Parameter control in evolutionary algorithms. IEEE Transations on Evolutionary Computation, 3(2):124--141, July 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. R. Fry, S. L. Smith, and A. M. Tyrrell. A self-adaptive mate selection model for genetic programming. In Proceedings of the 2005 IEEE Congress on Evolutionary Computation, volume 3, pages 2707--2714. IEEE Press, 2005.Google ScholarGoogle ScholarCross RefCross Ref
  11. D. E. Goldberg and U.-M. O'Reilly. Where does the good stuff go, and why? how contextual semantics influence program structure in simple genetic programming. In Proceedings of the First European Workshop on Genetic Programming, pages 16--36. Springer-Verlag, 1998. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. B. W. Goldman and D. R. Tauritz. Self-configuring crossover. In GECCO 2011 1st workshop on evolutionary computation for designing generic algorithms, pages 575--582. ACM, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. K. Harrington, E. Tosch, L. Spector, and J. Pollack. Compositional autoconstructive dynamics. In Unifying Themes in Complex Systems Volume VIII: Proceedings of the Eighth International Conference on Complex Systems, New England Complex Systems Institute Series on Complexity, pages 856--870. NECSI Knowledge Press, 2011.Google ScholarGoogle Scholar
  14. K. I. Harrington, L. Spector, J. B. Pollack, and U.-M. O'Reilly. Autoconstructive evolution for structural problems. In Proceedings of the fourteenth international conference on Genetic and evolutionary computation conference companion, GECCO Companion '12, pages 75--82. ACM, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. T. Helmuth. General Program Synthesis from Examples Using Genetic Programming with Parent Selection Based on Random Lexicographic Orderings of Test Cases. PhD thesis, College of Information and Computer Sciences, University of Massachusetts Amherst, USA, Sept. 2015.Google ScholarGoogle Scholar
  16. T. Helmuth, N. F. McPhee, and L. Spector. Lexicase selection for program synthesis: A diversity analysis. In R. Riolo, W. P. Worzel, and K. Groscurth, editors, Genetic Programming Theory and Practice XIII. Springer, 2015. in press.Google ScholarGoogle Scholar
  17. T. Helmuth, N. F. McPhee, and L. Spector. Plush: Linear genomes for structured push programs. In Genetic Programming Theory and Practice XIV, Genetic and Evolutionary Computation. Springer, 2016.Google ScholarGoogle Scholar
  18. T. Helmuth and L. Spector. Detailed problem descriptions for general program synthesis benchmark suite. Technical Report UM-CS-2015-006, School of Computer Science, University of Massachusetts, Amherst, 2015.Google ScholarGoogle Scholar
  19. T. Helmuth and L. Spector. General program synthesis benchmark suite. In GECCO '15: Proceedings of the 2015 Conference on Genetic and Evolutionary Computation, July 2015. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. T. Helmuth, L. Spector, and J. Matheson. Solving uncompromising problems with lexicase selection. Evolutionary Computation, IEEE Transactions on, 19(5):630--643, Oct 2015.Google ScholarGoogle Scholar
  21. K. Kannappan, L. Spector, M. Sipper, T. Helmuth, W. L. Cava, J. Wisdom, and O. Bernstein. Analyzing a decade of human-competitive ("HUMIE") winners: What can we learn? In R. Riolo, W. P. Worzel, and M. Kotanchek, editors, Genetic Programming Theory and Practice XII, Genetic and Evolutionary Computation, pages 149--166, Ann Arbor, USA, 8-10 May 2014. Springer.Google ScholarGoogle Scholar
  22. W. Kantschik, P. Dittrich, M. Brameier, and W. Banzhaf. Meta-evolution in graph GP. In Genetic Programming, Proceedings of EuroGP'99, pages 15--28. Springer-Verlag, 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. J. Klein and L. Spector. Genetic programming with historically assessed hardness. In R. L. Riolo, T. Soule, and B. Worzel, editors, Genetic Programming Theory and Practice VI, Genetic and Evolutionary Computation, chapter 5, pages 61--75. Springer, 2008.Google ScholarGoogle Scholar
  24. J. R. Koza. Genetic Programming: On the Programming of Computers by Means of Natural Selection. MIT Press, Cambridge, MA, USA, 1992. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. R. M. MacCallum. Introducing a perl genetic programming system: and can meta-evolution solve the bloat problem? In Genetic Programming, Proceedings of EuroGP'2003, pages 364--373. Springer-Verlag, 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. R. I. McKay. Fitness sharing in genetic programming. In Proceedings of the Genetic and Evolutionary Computation Conference (GECCO-2000), pages 435--442. Morgan Kaufmann, 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. R. Moll. iJava--an online interactive textbook for elementary java instruction: Demonstration. J. Comput. Sci. Coll., 26(6):55--57, June 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. C. Ofria. private communication, 2016.Google ScholarGoogle Scholar
  29. A. Robinson and L. Spector. Using genetic programming with multiple data types and automatic modularization to evolve decentralized and coordinated navigation in multi-agent systems. In Late Breaking Papers at the Genetic and Evolutionary Computation Conference (GECCO-2002), pages 391--396. AAAI, 2002.Google ScholarGoogle Scholar
  30. J. Schmidhuber. Evolutionary principles in self-referential learning. on learning now to learn: The meta-meta-meta...-hook. Diploma thesis, Technische Universitat Munchen, Germany, 14 May 1987.Google ScholarGoogle Scholar
  31. S. Silva and S. Dignum. Extending operator equalisation: Fitness based self adaptive length distribution for bloat free GP. In Proceedings of the 12th European Conference on Genetic Programming, EuroGP 2009, pages 159--170. Springer, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. R. Smith, S. Forrest, and A. S. Perelson. Population diversity in an immune system model: Implications for genetic search. In Foundations of Genetic Algorithms 2, pages 153--166. Morgan Kaufmann, 1992.Google ScholarGoogle Scholar
  33. E. Smorodkina and D. Tauritz. Toward automating ea configuration: the parent selection stage. In Evolutionary Computation, 2007. CEC 2007. IEEE Congress on, pages 63--70, Sept 2007.Google ScholarGoogle ScholarCross RefCross Ref
  34. W. M. Spears. Adapting crossover in evolutionary algorithms. In Proceedings of the Fourth Annual Conference on Evolutionary Programming, pages 367--384. MIT Press, 1995.Google ScholarGoogle Scholar
  35. L. Spector. Autoconstructive evolution: Push, pushGP, and pushpop. In Proceedings of the Genetic and Evolutionary Computation Conference (GECCO-2001), pages 137--146. Morgan Kaufmann, 2001.Google ScholarGoogle Scholar
  36. L. Spector. Adaptive populations of endogenously diversifying Pushpop organisms are reliably diverse. In Proceedings of Artificial Life VIII, the 8th International Conference on the Simulation and Synthesis of Living Systems, pages 142--145. The MIT Press, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. L. Spector. Automatic Quantum Computer Programming: A Genetic Programming Approach, volume 7 of Genetic Programming. Kluwer Academic Publishers, Boston/Dordrecht/New York/London, June 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. L. Spector. Towards practical autoconstructive evolution: Self-evolution of problem-solving genetic programming systems. In R. Riolo, T. McConaghy, and E. Vladislavleva, editors, Genetic Programming Theory and Practice VIII, volume 8 of Genetic and Evolutionary Computation, pages 17--33. Springer New York, 2011.Google ScholarGoogle Scholar
  39. L. Spector. Assessment of problem modality by differential performance of lexicase selection in genetic programming: a preliminary report. In Proceedings of the fourteenth international conference on Genetic and evolutionary computation conference companion, GECCO Companion '12, pages 401--408, New York, NY, USA, 2012. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. L. Spector. Clojush: The Push programming language and the PushGP genetic programming system implemented in Clojure. https://github.com/lspector/Clojush, 2016.Google ScholarGoogle Scholar
  41. L. Spector, K. Harrington, B. Martin, and T. Helmuth. What's in an evolved name? the evolution of modularity via tag-based reference. In R. Riolo, E. Vladislavleva, and J. H. Moore, editors, Genetic Programming Theory and Practice IX, Genetic and Evolutionary Computation, chapter 1, pages 1--16. Springer, 2011.Google ScholarGoogle Scholar
  42. L. Spector and T. Helmuth. Uniform linear transformation with repair and alternation in genetic programming. In R. Riolo, J. H. Moore, and M. Kotanchek, editors, Genetic Programming Theory and Practice XI, Genetic and Evolutionary Computation, chapter 8, pages 137--153. Springer, 9-11 May 2013.Google ScholarGoogle Scholar
  43. L. Spector and T. Helmuth. Effective simplification of evolved push programs using a simple, stochastic hill-climber. In GECCO Comp '14: Proceedings of the 2014 conference companion on Genetic and evolutionary computation companion, pages 147--148. ACM, 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  44. L. Spector and J. Klein. Trivial geography in genetic programming. In T. Yu, R. L. Riolo, and B. Worzel, editors, Genetic Programming Theory and Practice III, volume 9 of Genetic Programming, chapter 8, pages 109--123. Springer, 12-14 May 2005.Google ScholarGoogle ScholarDigital LibraryDigital Library
  45. L. Spector, J. Klein, and M. Keijzer. The push3 execution stack and the evolution of control. In GECCO 2005: Proceedings of the 2005 conference on Genetic and evolutionary computation, pages 1689--1696. ACM Press, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  46. L. Spector, J. Klein, and C. Perry. Tags and the evolution of cooperation in complex environments. In Proceedings of the AAAI 2004 Symposium on Artificial Multiagent Learning. AAAI Press, 2004.Google ScholarGoogle Scholar
  47. L. Spector, J. Klein, C. Perry, and M. Feinstein. Emergence of collective behavior in evolving populations of flying agents. In Genetic and Evolutionary Computation -- GECCO-2003, volume 2723 of LNCS, pages 61--73, Chicago, 12-16 July 2003. Springer-Verlag. Google ScholarGoogle ScholarDigital LibraryDigital Library
  48. L. Spector, J. Klein, C. Perry, and M. Feinstein. Emergence of collective behavior in evolving populations of flying agents. Genetic Programming and Evolvable Machines, 6(1):111--125, Mar. 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  49. L. Spector and A. Robinson. Genetic programming and autoconstructive evolution with the push programming language. Genetic Programming and Evolvable Machines, 3(1):7--40, Mar. 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  50. L. Spector and A. Robinson. Multi-type, self-adaptive genetic programming as an agent creation tool. In GECCO 2002: Proceedings of the Bird of a Feather Workshops, Genetic and Evolutionary Computation Conference, pages 73--80. AAAI, 2002.Google ScholarGoogle Scholar
  51. J. Tavares, P. Machado, A. Cardoso, F. B. Pereira, and E. Costa. On the evolution of evolutionary algorithms. In Genetic Programming 7th European Conference, EuroGP 2004, Proceedings, pages 389--398. Springer-Verlag, 2004.Google ScholarGoogle ScholarCross RefCross Ref
  52. F. Vafaee, W. Xiao, P. C. Nelson, and C. Zhou. Adaptively evolving probabilities of genetic operators. In Seventh International Conference on Machine Learning and Applications, ICMLA '08, pages 292--299. IEEE, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  53. J. R. Woodward and J. Swan. The automatic generation of mutation operators for genetic algorithms. In GECCO 2012 2nd Workshop on Evolutionary Computation for the Automated Design of Algorithms, pages 67--74. ACM, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Evolution Evolves with Autoconstruction

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in
      • Published in

        cover image ACM Conferences
        GECCO '16 Companion: Proceedings of the 2016 on Genetic and Evolutionary Computation Conference Companion
        July 2016
        1510 pages
        ISBN:9781450343237
        DOI:10.1145/2908961

        Copyright © 2016 ACM

        Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 20 July 2016

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • research-article

        Acceptance Rates

        GECCO '16 Companion Paper Acceptance Rate137of381submissions,36%Overall Acceptance Rate1,669of4,410submissions,38%

        Upcoming Conference

        GECCO '24
        Genetic and Evolutionary Computation Conference
        July 14 - 18, 2024
        Melbourne , VIC , Australia

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader