UCL logo

UCL Discovery

UCL home » Library Services » Electronic resources » UCL Discovery

Evolving Data Structures Using Genetic Programming

Langdon, WB; (1995) Evolving Data Structures Using Genetic Programming. : Gower Street, London, WC1E 6BT, UK.

Full text not available from this repository.


Genetic programming (GP) is a subclass of genetic algorithms (GAs), in which evolving programs are directly represented in the chromosome as trees. Recently it has been shown that programs which explicitly use directly addressable memory can be generated using GP. It is established good software engineering practice to ensure that programs use memory via abstract data structures such as stacks, queues and lists. These provide an interface between the program and memory, freeing the program of memory management details which are left to the data structures to implement. The main result presented herein is that GP can automatically generate stacks and queues. Typically abstract data structures support multiple operations, such as put and get. We show that GP can simultaneously evolve all the operations of a data structure by implementing each such operation with its own independent program tree. That is, the chromosome consists of a fixed number of independent program trees. Moreover, crossover only mixes genetic material of program trees that implement the same operation. Program trees interact with each other only via shared memory and shared “Automatically Defined Functions” (ADFs). ADFs, “pass by reference” when calling them, Pareto selection, “good software engineering practice” and partitioning the genetic population into “demes” where also investigated whilst evolving the queue in order to improve the GP solutions.

Type: Report
Title: Evolving Data Structures Using Genetic Programming
Publisher version: http://www.cs.ucl.ac.uk/staff/W.Langdon/ftp/papers...
Additional information: keywords: genetic algorithms, genetic programming, Automatic Programming, Machine Learning, Artificial Evolution, Data Structures, Object Oriented Programming, Push down Stack, First-in first-out (FIFO) Queue, Automatically Defined Functions (ADF), Pareto fitness, Demes notes: Discussed on GP mailing list 6–13 Jan 95, subj:GPdata. Presented at ICGA-95. Reworked into \citeLangdon:1995:GPdata size: 10 pages
UCL classification: UCL > Provost and Vice Provost Offices
UCL > Provost and Vice Provost Offices > UCL BEAMS
UCL > Provost and Vice Provost Offices > UCL BEAMS > Faculty of Engineering Science
UCL > Provost and Vice Provost Offices > UCL BEAMS > Faculty of Engineering Science > Dept of Computer Science
URI: http://discovery.ucl.ac.uk/id/eprint/1327886
Downloads since deposit
Download activity - last month
Download activity - last 12 months
Downloads by country - last 12 months

Archive Staff Only

View Item View Item