The first Population is created using the initializePopulation method of the Initializer object, which typically calls the Population's populate() method in turn. On generational systems, subsequent populations are created on a generation-by-generation basis by the Breeder object, replacing the previous Population.
In a multithreaded area of a run, Populations should be considered immutable. That is, once they are created, they should not be modified, nor anything they contain. This protocol helps ensure read-safety under multithreading race conditions.
Parameters
base.subpops int >= 1 | (the number of subpopulations) |
base.subpop.n classname, inherits or = ec.Subpopulation | (the class for subpopulation #n) |
base.default-subpop int >= 0 | (the default subpopulation index. The parameter base of this subpopulation will be used as the default base for all subpopulations which do not define one themselves./tr> |
Parameter bases
base.subpop.n | Subpopulation #n. |
|
|
|
|
|
|