|
Abstract : |
In real world applications, software engineers recognise the use of memory must be organised via data structures and that software using the data must be independant of the data structures ' implementation details. They achieve this by using abstract data structures, such as records, files and buffers. We demonstrate that genetic programming can automatically implement simple abstract data structures, considering in detail the task of evolving a list. We show general and reasonably efficient implementations can be automatically generated from simple primitives. A model for maintaining evolved code is demonstrated using the list problem. Much publishedwork on genetic programming(GP) evolves functions without"side-effects" to learn patterns in test data. In contrast human written programs often make extensive and explicit use of memory. Indeed memory in some form is required for a programming system, |