iterative Crossover
inline suspend fun <V, F> PanmicticEvolveScope<V, F>.iterativeCrossover(chance: Double, parallelismLimit: Int, crossinline crossover: suspend (chromosome1: Chromosome<V, F>, chromosome2: Chromosome<V, F>, random: Random) -> Unit)
Executes CrossoverType.Iterative crossing.
Example:
val elitism = 2
Population before: 0, 1, 2, 3, 4, 5, 6
Crossover pairs: 0 to 6, 1 to 5, 2 to 4
Population after: 0, 1, [2-4], 3, [4-2], [5-1], [6-0]
Content copied to clipboard
Parameters
chance
chance of crossover between a pair of chromosomes
parallelism Limit
limit of parallel workers
crossover
specific crossing action (How chromosomes will be crossed)