cxOnePoint

@JvmName(name = "cxOnePointArray")
suspend fun <T, F> PanmicticEvolveScope<Array<T>, F>.cxOnePoint(chance: Double, parallelismLimit: Int = parallelismConfig.workersCount, crossoverType: CrossoverType = CrossoverType.Iterative)
@JvmName(name = "cxOnePointBooleanArray")
suspend fun <F> PanmicticEvolveScope<BooleanArray, F>.cxOnePoint(chance: Double, parallelismLimit: Int = parallelismConfig.workersCount, crossoverType: CrossoverType = CrossoverType.Iterative)
@JvmName(name = "cxOnePointByteArray")
suspend fun <F> PanmicticEvolveScope<ByteArray, F>.cxOnePoint(chance: Double, parallelismLimit: Int = parallelismConfig.workersCount, crossoverType: CrossoverType = CrossoverType.Iterative)
@JvmName(name = "cxOnePointCharArray")
suspend fun <F> PanmicticEvolveScope<CharArray, F>.cxOnePoint(chance: Double, parallelismLimit: Int = parallelismConfig.workersCount, crossoverType: CrossoverType = CrossoverType.Iterative)
@JvmName(name = "cxOnePointDoubleArray")
suspend fun <F> PanmicticEvolveScope<DoubleArray, F>.cxOnePoint(chance: Double = 0.9, parallelismLimit: Int = parallelismConfig.workersCount, crossoverType: CrossoverType = CrossoverType.Iterative)
@JvmName(name = "cxOnePointFloatArray")
suspend fun <F> PanmicticEvolveScope<FloatArray, F>.cxOnePoint(chance: Double, parallelismLimit: Int = parallelismConfig.workersCount, crossoverType: CrossoverType = CrossoverType.Iterative)
@JvmName(name = "cxOnePointIntArray")
suspend fun <F> PanmicticEvolveScope<IntArray, F>.cxOnePoint(chance: Double, parallelismLimit: Int = parallelismConfig.workersCount, crossoverType: CrossoverType = CrossoverType.Iterative)
@JvmName(name = "cxOnePointLongArray")
suspend fun <F> PanmicticEvolveScope<LongArray, F>.cxOnePoint(chance: Double, parallelismLimit: Int = parallelismConfig.workersCount, crossoverType: CrossoverType = CrossoverType.Iterative)
@JvmName(name = "cxOnePointMutableList")
suspend fun <T, F> PanmicticEvolveScope<MutableList<T>, F>.cxOnePoint(chance: Double, parallelismLimit: Int = parallelismConfig.workersCount, crossoverType: CrossoverType = CrossoverType.Iterative)
@JvmName(name = "cxOnePointShortArray")
suspend fun <F> PanmicticEvolveScope<ShortArray, F>.cxOnePoint(chance: Double, parallelismLimit: Int = parallelismConfig.workersCount, crossoverType: CrossoverType = CrossoverType.Iterative)

Executes a one point crossover on the input sequence individuals. The two values are modified in place.

Example:

Parent 1: ++++++++
Parent 2: --------
Generated cross index: 4
Child 1: +++++---
Child 2: -----+++

Parameters

chance

chance of crossover between a pair of chromosomes

parallelismLimit

limit of parallel workers

crossoverType

describes the strategy of the crossing stage in PanmicticGA