genetic programming - Island Model in ECJ -
in genetic programming (gp), when island model used, mean split population size between islands?
for example, if in parameters file have
pop.subpop.0.size = 4000
and have 4 islands, mean each island have population of size 1000? if put line of code in parameters file of each island? possible have different population size each island?
i'm using java , ecj package implement island models in gp.
no, in example have defined 1 island of 4000 individuals. number never automatically splited.
there 2 ways use islands model in ecj:
- using interpopulationexchanger class:
one unique java process share variables. islands subpopulations of population object. therefore, need set sizes each subpopulation in parameter file. in example, have set island (subpopulation) 0 4000 individuals, should set other sizes. example, 10 islands of 4000 individuals each:
exch = ec.exchange.interpopulationexchange pop.subpops = 10 pop.subpop.0.size = 4000 pop.subpop.1.size = 4000 pop.subpop.2.size = 4000 ...etc pop.subpop.10.size = 4000
- using islandexchanger class:
in case, every island executed in different java process, so, every islandid.params file (one per island/process) needs set 1 population:
exch = ec.exchange.interpopulationexchange pop.subpop.0.size = 4000
and number of islands set in server.params file:
exch.num-islands = 10
you can see rest of parameters , more information on page 223 of ecj documentation pdf: https://cs.gmu.edu/~eclab/projects/ecj/docs/manual/manual.pdf
Comments
Post a Comment