1 | # Copyright 2006 by Sean Luke and George Mason University |
---|
2 | # Licensed under the Academic Free License version 3.0 |
---|
3 | # See the file "LICENSE" for more information |
---|
4 | |
---|
5 | # |
---|
6 | # The following is an example of Inter-subpopulation exchange |
---|
7 | # within the same process, using three subpopulations, |
---|
8 | # with the GP Ant example. In the example below, we've set |
---|
9 | # up three subpopulations, and the exchange is as follows: |
---|
10 | # subpop 0 sends inds to subpops 1 and 2, subpop 1 sends |
---|
11 | # inds to subpop 2, and subpop 2 sends inds to subpop 0. |
---|
12 | # All three subpops start exchanging immediately (after |
---|
13 | # population initialization) and thereafter send every two |
---|
14 | # generations. They exchange 3 individuals each. |
---|
15 | # |
---|
16 | # If you're looking instead for multi-process, network island |
---|
17 | # models, see the 3-Island and 8-Island examples |
---|
18 | # |
---|
19 | |
---|
20 | parent.0 = ../app/ant/ant.params |
---|
21 | |
---|
22 | pop.subpops = 3 |
---|
23 | |
---|
24 | pop.subpop.0 = ec.Subpopulation |
---|
25 | pop.subpop.0.size = 200 |
---|
26 | pop.subpop.0.species = ec.gp.GPSpecies |
---|
27 | pop.subpop.0.species.fitness = ec.gp.koza.KozaFitness |
---|
28 | pop.subpop.0.species.ind = ec.gp.GPIndividual |
---|
29 | pop.subpop.0.duplicate-retries = 100 |
---|
30 | pop.subpop.0.species.ind.numtrees = 1 |
---|
31 | pop.subpop.0.species.ind.tree.0 = ec.gp.GPTree |
---|
32 | pop.subpop.0.species.ind.tree.0.tc = tc0 |
---|
33 | pop.subpop.0.species.pipe = ec.breed.MultiBreedingPipeline |
---|
34 | pop.subpop.0.species.pipe.generate-max = false |
---|
35 | pop.subpop.0.species.pipe.num-sources = 2 |
---|
36 | pop.subpop.0.species.pipe.source.0 = ec.gp.koza.CrossoverPipeline |
---|
37 | pop.subpop.0.species.pipe.source.0.prob = 0.9 |
---|
38 | pop.subpop.0.species.pipe.source.1 = ec.breed.ReproductionPipeline |
---|
39 | pop.subpop.0.species.pipe.source.1.prob = 0.1 |
---|
40 | |
---|
41 | pop.subpop.1 = ec.Subpopulation |
---|
42 | pop.subpop.1.size = 200 |
---|
43 | pop.subpop.1.species = ec.gp.GPSpecies |
---|
44 | pop.subpop.1.species.fitness = ec.gp.koza.KozaFitness |
---|
45 | pop.subpop.1.species.ind = ec.gp.GPIndividual |
---|
46 | pop.subpop.1.duplicate-retries = 100 |
---|
47 | pop.subpop.1.species.ind.numtrees = 1 |
---|
48 | pop.subpop.1.species.ind.tree.0 = ec.gp.GPTree |
---|
49 | pop.subpop.1.species.ind.tree.0.tc = tc0 |
---|
50 | pop.subpop.1.species.pipe = ec.breed.MultiBreedingPipeline |
---|
51 | pop.subpop.1.species.pipe.generate-max = false |
---|
52 | pop.subpop.1.species.pipe.num-sources = 2 |
---|
53 | pop.subpop.1.species.pipe.source.0 = ec.gp.koza.CrossoverPipeline |
---|
54 | pop.subpop.1.species.pipe.source.0.prob = 0.9 |
---|
55 | pop.subpop.1.species.pipe.source.1 = ec.breed.ReproductionPipeline |
---|
56 | pop.subpop.1.species.pipe.source.1.prob = 0.1 |
---|
57 | |
---|
58 | pop.subpop.2 = ec.Subpopulation |
---|
59 | pop.subpop.2.size = 200 |
---|
60 | pop.subpop.2.species = ec.gp.GPSpecies |
---|
61 | pop.subpop.2.species.fitness = ec.gp.koza.KozaFitness |
---|
62 | pop.subpop.2.species.ind = ec.gp.GPIndividual |
---|
63 | pop.subpop.2.duplicate-retries = 100 |
---|
64 | pop.subpop.2.species.ind.numtrees = 1 |
---|
65 | pop.subpop.2.species.ind.tree.0 = ec.gp.GPTree |
---|
66 | pop.subpop.2.species.ind.tree.0.tc = tc0 |
---|
67 | pop.subpop.2.species.pipe = ec.breed.MultiBreedingPipeline |
---|
68 | pop.subpop.2.species.pipe.generate-max = false |
---|
69 | pop.subpop.2.species.pipe.num-sources = 2 |
---|
70 | pop.subpop.2.species.pipe.source.0 = ec.gp.koza.CrossoverPipeline |
---|
71 | pop.subpop.2.species.pipe.source.0.prob = 0.9 |
---|
72 | pop.subpop.2.species.pipe.source.1 = ec.breed.ReproductionPipeline |
---|
73 | pop.subpop.2.species.pipe.source.1.prob = 0.1 |
---|
74 | |
---|
75 | exch = ec.exchange.InterPopulationExchange |
---|
76 | |
---|
77 | exch.subpop.0.select = ec.select.TournamentSelection |
---|
78 | exch.subpop.0.mod = 2 |
---|
79 | exch.subpop.0.start = 0 |
---|
80 | exch.subpop.0.size = 3 |
---|
81 | exch.subpop.0.num-dest = 2 |
---|
82 | exch.subpop.0.dest.0 = 1 |
---|
83 | exch.subpop.0.dest.1 = 2 |
---|
84 | |
---|
85 | exch.subpop.1.select = ec.select.TournamentSelection |
---|
86 | exch.subpop.1.mod = 2 |
---|
87 | exch.subpop.1.start = 0 |
---|
88 | exch.subpop.1.size = 3 |
---|
89 | exch.subpop.1.num-dest = 1 |
---|
90 | exch.subpop.1.dest.0 = 2 |
---|
91 | |
---|
92 | exch.subpop.2.select = ec.select.TournamentSelection |
---|
93 | exch.subpop.2.mod = 2 |
---|
94 | exch.subpop.2.start = 0 |
---|
95 | exch.subpop.2.size = 3 |
---|
96 | exch.subpop.2.num-dest = 1 |
---|
97 | exch.subpop.2.dest.0 = 0 |
---|
98 | |
---|