Title: Genetic Programming: A Parallel Approach
1Genetic ProgrammingA Parallel Approach
- Wolfgang Golubski
- University of Siegen, Germany
- Dept. of Electricial Engineering Computer
Science
2Structure
- 1. Motivation
- 2. Basic GP-Model
- 3. Parallel GP-Models
- 4. Master-Worker-GP-Model
- 5. Results
- 6. Conclusion
31. Motivation
41. Motivation
- Algorithm (EA, GA, GP) can solve many problems
- The users must have much experiences
- A lot of tests are necessary
- The development process is very time consuming
- gt Parallelization usable by everyone
52. Basic GP-Model
62. Basic GP-Model
Objects or Individuals
- Algorithminitialize populationevaluate
fitnesswhile (no stop command) do recombine
objects reproduce objects evaluate
fitnessend
Population
72. Basic GP-Model Representation
x
x
x
x
x
x
x
X3 X2 2x
82. Basic GP-Model Recombination
C1
C2
C3
C4
D1
D2
D3
D4
D5
92. Basic GP-Model Recombination
C1
C2
C3
C4
D1
D2
D3
D4
D5
102. Basic GP-Model Recombination
C1
C2
C3
C4
D1
D2
D3
D4
D5
112. Basic GP-Model Recombination
C1
C2
C3
C4
D1
D2
D3
D4
D5
C1
C2
C3
C4
D1
D2
D3
D4
D5
123. Parallel GP-Models
133. Parallel GP-Model Global Single-Population
Master-Slave
- Algorithminitialize populationevaluate
fitnesswhile (no stop command) do recombine
objects reproduce objects evaluate
fitnessend
143. Parallel GP-Model Global Single-Population
Master-Slave
- Algorithminitialize populationevaluate
fitnesswhile (no stop command) do recombine
objects reproduce objects evaluate
fitnessend
153. Parallel GP-Model Global Single-Population
Master-Slave
Master
- Algorithminitialize populationevaluate
fitnesswhile (no stop command) do recombine
objects reproduce objects evaluate
fitnessend
163. Parallel GP-Model Global Single-Population
Master-Slave
Master
- Algorithminitialize populationevaluate
fitnesswhile (no stop command) do recombine
objects reproduce objects evaluate
fitnessend
Worker1
Worker4
Worker2
Worker5
Worker6
Worker3
173. Parallel GP-Model Global Single-Population
Master-Slave
Master
- Algorithminitialize populationevaluate
fitnesswhile (no stop command) do recombine
objects reproduce objects evaluate
fitnessend
183. Parallel GP-Model Global Single-Population
Master-Slave
Master
- Algorithminitialize populationevaluate
fitnesswhile (no stop command) do recombine
objects reproduce objects evaluate
fitnessend
Worker1
Worker4
Worker2
Worker5
Worker6
Worker3
193. Parallel GP-Model Single-Population
Fine-Grained
Each object resides on one node !!!
- Algorithminitialize populationevaluate
fitnesswhile (no stop command) do recombine
objects reproduce objects evaluate
fitnessend
203. Parallel GP-Model Single-Population
Fine-Grained
Each object resides on one node !!!
- Algorithminitialize populationevaluate
fitnesswhile (no stop command) do recombine
objects reproduce objects evaluate
fitnessend
gt Recombination only in the direct neighborhood
213. Parallel GP-Model Multiple-Population
Coarse-Grained
- Algorithminitialize populationevaluate
fitnesswhile (no stop command) do recombine
objects reproduce objects evaluate
fitnessend
Node 1
Node 4
Node 2
Node 5
Node 6
Node 3
223. Parallel GP-Model Multiple-Population
Coarse-Grained
- Algorithminitialize populationevaluate
fitnesswhile (no stop command) do recombine
objects reproduce objects evaluate
fitnessend
Node 1
Node 4
Node 2
Node 5
Node 6
Node 3
gt Recombination only in the neighborhood
234. Master-Worker GP-Model
244. Master-Worker GP-Model
Master
Worker 1
Worker 2
Worker 3
Worker 4
254. Master-Worker GP-Model
Master
Distribute GP-Param.
Worker 1
Worker 2
Worker 3
Worker 4
264. Master-Worker GP-Model
Master
Apply Basic GP
Worker 1
Worker 2
Worker 3
Worker 4
274. Master-Worker GP-Model
Master
and interrupts after a fixed number of steps
Worker 1
Worker 2
Worker 3
Worker 4
284. Master-Worker GP-Model
Master
Send fittest individuals
Worker 1
Worker 2
Worker 3
Worker 4
294. Master-Worker GP-Model
Master
Collecting them to a new fittest set
Worker 1
Worker 2
Worker 3
Worker 4
304. Master-Worker GP-Model
Master
Collecting them to a new fittest set
Worker 1
Worker 2
Worker 3
Worker 4
314. Master-Worker GP-Model
Master
distribute fittest individuals
Worker 1
Worker 2
Worker 3
Worker 4
325. Results
335. Results Symbolic Regression
- 42 functions of the form f(x) ?i1..10 ai
xiwhere ai?Z. - 50 sample points of -1,1 for each function
- 100 test runs for each function
- Two test series
345. Results Symbolic Regression
355. Results Symbolic Regression - Test Serie 1
365. Results Symbolic Regression - Test Serie 2
376. Conclusion
386. Conclusion Symbolic Regression
396. Conclusion
- Simple Parallel Master-Worker GP-Model
(implemented in Java and Java RMI) - showing promising results
- more tests on more complcx problems
- vary the synchronization steps
- the existing implementation allows in an easy way
to vary the distribution policy of the master
process.