migration

Executes random migration stage. Migration in DistributedGA is a process of chromosomes exchange between subpopulations.

  1. selects some chromosomes in subpopulations

  2. migrate selected chromosomes with strategy: 0 -> 1 -> 2 -> 3 -> ... -> N -> 0, where N - count of DistributedGA.children.

Parameters

percent

percentage of the population that will migrate. If sizes of subpopulations is different, the percent of minimal size will be selected. General count of chromosomes involved in migration is calculated using the formula: percent * min(subpopulations.sizes) * subpopulations.size

For example:

percent is 0.1, subpopulations count is 3, subpopulation sizes are [100, 100, 80], then: count of chromosomes involved in migration =

0.1 * min(100, 100, 80) * 3 = 0.1 * 80 * 3 = 24 by 8 chromosomes from each subpopulation.