cxBlend

@JvmName(name = "cxBlendDoubleArray")
suspend fun <F> PanmicticEvolveScope<DoubleArray, F>.cxBlend(chance: Double, alpha: Double, parallelismLimit: Int = parallelismConfig.workersCount, crossoverType: CrossoverType = CrossoverType.Iterative)
@JvmName(name = "cxBlendFloatArray")
suspend fun <F> PanmicticEvolveScope<FloatArray, F>.cxBlend(chance: Double, alpha: Float, parallelismLimit: Int = parallelismConfig.workersCount, crossoverType: CrossoverType = CrossoverType.Iterative)

Executes a blend crossover that modify in-place the input chromosomes. The blend crossover expects Chromosome.value of floating point numbers.

Parameters

chance

chance of crossover between a pair of chromosomes

alpha

Extent of the interval in which the new values can be drawn for each attribute on both side of the parents’ attributes.

parallelismLimit

limit of parallel workers

crossoverType

describes the strategy of the crossing stage in PanmicticGA