|
Abstract : |
This chapter describes Parallel Distributed Genetic Programming (PDGP), a form of Genetic Programming (GP) which is suitable for the development of programs with a high degree of parallelism and an ecient and effective reuse of partial results. Programs are represented in PDGP as graphs with nodes representing functions and terminals, and links representing the flow of control and results. In the simplest form of PDGP links are directed and unlabelled, in which case PDGP can be considered a generalisation of standard GP. However, more complex representations can be used, which allow the exploration of a large space of possible programs including standard tree-like programs, logic networks, neural networks, recurrent transition networks, finite state automata, etc. In PDGP, programs are manipulated by special crossover and mutation operators which guarantee the syntactic correctness of the offspring. For this reason PDGP search is very ecient. PDGP programs can be executed in different ways, depending on whether nodes with side effects are used or not. The chapter describes the representations, the operators and the interpreters used in PDGP, and illustrates its behaviour on a number of problems., |