Some Steps Towards a Form of Parallel Distributed Genetic Programming

—Genetic Programming is a method of program discovery con- sisting of a special kind of genetic algorithm capable of operating on non- linear chromosomes (parse trees) representing programs and an interpreter which can run the programs being optimised. This paper describes PDGP (Parallel Distributed Genetic Programming), a new form of genetic pro- gramming which is suitable for the development of fine-grained parallel programs. PDGP is based on a graph-like representation for parallel pro- grams which is manipulated by crossover and mutation operators which guarantee the syntactic correctness of the offspring. The paper describes these operators and reports some preliminary results obtained with this paradigm. be used to develop (grow) structures, like neural nets (5; 6) or electronic circuits (14; 13), which can be thought of as perform- ing some form of parallel computation. Also, in conjunction with an interpreter implementing a parallel virtual-machine, GP can be used to develop certain kinds of parallel programs (3) or to translate sequential programs into parallel ones (19). (The development of parallel programs should not be confused with the parallel implementations of GP, which are essentially meth- ods of speeding-up the genetic search of standard tree-like pro- grams (2; 4; 16; 8; 18). These methods are usually based on the use of multiple processors, each one handling a separate popula- tion, a subset of fitness evaluations or a subset of fitness cases.) This paper describes PDGP (Parallel Distributed Genetic Pro- gramming), a new form of genetic programming which is suit- able for the development of fine-grained or medium-grained par- allel programs. PDGP is based on a graph-like representation for parallel programs and genetic operators which guarantee the syntactic correctness of the offspring. In the following sections the representation and operators used in PDGP are described and some preliminary results obtained with this paradigm are reported.

[1]  Marco Tomassini,et al.  Parallel genetic programming: an application to trading models evolution , 1996 .

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

[3]  R. Poli Genetic programming for image analysis , 1996 .

[4]  John R. Koza,et al.  Automated WYWIWYG design of both the topology and component values of electrical circuits using genetic programming , 1996 .

[5]  J. K. Kinnear,et al.  Advances in Genetic Programming , 1994 .

[6]  John R. Koza,et al.  Use of automatically defined functions and architecture-altering operations in automated circuit synthesis with genetic programming , 1996 .

[7]  L. Darrell Whitley,et al.  Adding Learning to the Cellular Development of Neural Networks: Evolution and the Baldwin Effect , 1993, Evolutionary Computation.

[8]  John R. Koza,et al.  Genetic programming 2 - automatic discovery of reusable programs , 1994, Complex Adaptive Systems.

[9]  Lee Spector,et al.  Evolving Graphs and Networks with Edge Encoding: Preliminary Report , 1996 .

[10]  Conor Ryan,et al.  Paragen: a novel technique for the autoparallelisation of sequential programs using GP , 1996 .

[11]  Forrest H. Bennett,et al.  Automatic creation of an efficient multi-agent architecture using genetic programming with architect , 1996 .

[12]  Jordan B. Pollack,et al.  Massively parallel genetic programming , 1996 .

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

[14]  Dimitris C. Dracopoulos,et al.  Speeding up genetic programming: a parallel BSP implementation , 1996 .

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

[16]  John R. Koza,et al.  Parallel genetic programming: a scalable implementation using the transputer network architecture , 1996 .

[17]  Larry D. Pyeatt,et al.  A comparison between cellular encoding and direct encoding for genetic neural networks , 1996 .