Population model (evolutionary algorithm)

A population is the set of all proposed solutions of an EA considered in one iteration, which are also called individuals according to the biological role model.

Due to global mate selection, the genetic information of even slightly better individuals can prevail in a population after a few generations (iteration of an EA), provided that no better other offspring have emerged in this phase.

The resulting local neighbourhoods initially evolve independently and mutants have a higher chance of persisting over several generations.

For this reason, the topic of population models is also frequently discussed in the literature in connection with the parallelization of EAs.

The fundamental idea of this model is to provide the EA population with a special structure defined as a connected graph, in which each vertex is an individual that communicates with its nearest neighbours.

The adjacent figure illustrates that by showing two slightly overlapping neighbourhoods of two individuals marked yellow, through which genetic information can spread between the two demes.

[6][7] There is no clear borderline between adjacent groups, and close niches could be easily colonized by competitive ones and maybe merge solution contents during this process.

[7][16] A commonly used structure for arranging the individuals of a population is a 2D toroidal grid,[17][1][2][15] although the number of dimensions can be easily extended (to 3D) or reduced (to 1D, e.g. a ring,[6][15] see the figure on the right).

Each deme represents a panmictic subpopulation within which mate selection and the acceptance of offspring takes place by replacing the parent.

[20] This means that ring neighbourhoods are well suited for achieving high quality results, even if this requires comparatively long run times.

On the other hand, if one is primarily interested in fast and good, but possibly suboptimal results, 2D topologies are more suitable.

Thus, in the extreme case, an independent execution thread can be assigned to each individual, so that the entire cEA can run on a parallel hardware platform.

Moreover, they can run on both sequential and parallel platforms, which highlights the fact that model and implementation are two different concepts.

Example of an island model consisting of eight islands and two neighbourhood structures: a simple unidirectional ring (black arrows) and a more complex structure (green and black arrows)
Torus structure (right) with two exemplary two-dimensional neighbourhood figures (left). The block-shaped demes of individuals A and B have the two common neighbours shown in yellow.
Examples of neighbouhoods, also called demes, in two-dimensional cellular EAs: linear, compact, diamond and... any other.
Two examples overlapping neighbourhoods (demes) of the one-dimensional ring-shaped neighbourhood model of an EA. The two demes of individuals X and Y overlap minimally, while those of A and B show a maximum overlap.