Ontogenetic programming

In nature, the structure and behavior of a mature organism is determined not only by its genetic endowment, but also by complex developmental processes that the organism undergoes while immersed in its environment (ontogeny). By contrast, an individual in a genetic programming system is generally expected to solve problems immediately, without the benefit of a developmental phase. Various morphological systems have been used in previous genetic programming systems to allow programs to "grow" into more complex forms prior to evaluation. Runtime memory mechanisms allow evolved programs to acquire information from their environments while they solve problems, and to change their future behavior on the basis of such information. Ontogenetic programming combines these ideas to allow for runtime modification of program structure. In particular, an ontogenetic programming system includes program self-modification functions in the genetic programming function set, thereby allowing evolved programs to modify themselves during the course of a run. We demonstrate the ontogenetic programming methodology with the HiGP genetic programming system, and we show how ontogenetic programming can be used to solve problems that would not otherwise be solvable. We also discuss variants of the technique that could be used in other genetic programming systems.

[1]  John R. Koza,et al.  Genetic programming - on the programming of computers by means of natural selection , 1993, Complex adaptive systems.

[2]  Lee Spector,et al.  Simultaneous evolution of programs and their control structures , 1996 .

[3]  Lee Spector,et al.  High-performance, parallel, stack-based genetic programming , 1996 .

[4]  Katsunori Shimohara,et al.  Development and Evolution of Hardware Behaviors , 1995, Towards Evolvable Hardware.

[5]  Timothy Perkis,et al.  Stack-based genetic programming , 1994, Proceedings of the First IEEE Conference on Evolutionary Computation. IEEE World Congress on Computational Intelligence.

[6]  J. Batali,et al.  Innate biases and critical periods: Combining evolution and learning in the acquisition of syntax , 1994 .

[7]  Peter J. Angeline,et al.  Morphogenic Evolutionary Computations: Introduction, Issues and Example , 1995, Evolutionary Programming.

[8]  Robert G. Reynolds,et al.  Morphogenic Evolutionary Computations: Introduction, Issues and Examples , 1995 .

[9]  Astro Teller,et al.  The evolution of mental models , 1994 .

[10]  M. F.,et al.  Bibliography , 1985, Experimental Gerontology.

[11]  Frank Dellaert,et al.  Toward an evolvable model of development for autonomous agent synthesis , 1994 .

[12]  Una-May O'Reilly,et al.  Genetic Programming II: Automatic Discovery of Reusable Programs. , 1994, Artificial Life.

[13]  Karl Sims,et al.  Evolving 3D Morphology and Behavior by Competition , 1994, Artificial Life.

[14]  Hitoshi Iba,et al.  Temporal Data Processing Using Genetic Programming , 1995, ICGA.

[15]  Frédéric Gruau,et al.  Genetic micro programming of neural networks , 1994 .