cxKPoint

@JvmName(name = "cxKPointArray")
fun <T, F> CellEvolveScope<Array<T>, F>.cxKPoint(count: Int, chance: Double)
@JvmName(name = "cxKPointBooleanArray")
fun <F> CellEvolveScope<BooleanArray, F>.cxKPoint(count: Int, chance: Double)
@JvmName(name = "cxKPointByteArray")
fun <F> CellEvolveScope<ByteArray, F>.cxKPoint(count: Int, chance: Double)
@JvmName(name = "cxKPointCharArray")
fun <F> CellEvolveScope<CharArray, F>.cxKPoint(count: Int, chance: Double)
@JvmName(name = "cxKPointDoubleArray")
fun <F> CellEvolveScope<DoubleArray, F>.cxKPoint(count: Int, chance: Double)
@JvmName(name = "cxKPointFloatArray")
fun <F> CellEvolveScope<FloatArray, F>.cxKPoint(count: Int, chance: Double)
@JvmName(name = "cxKPointIntArray")
fun <F> CellEvolveScope<IntArray, F>.cxKPoint(count: Int, chance: Double)
@JvmName(name = "cxKPointLongArray")
fun <F> CellEvolveScope<LongArray, F>.cxKPoint(count: Int, chance: Double)
@JvmName(name = "cxKPointMutableList")
fun <T, F> CellEvolveScope<MutableList<T>, F>.cxKPoint(count: Int, chance: Double)
@JvmName(name = "cxKPointShortArray")
fun <F> CellEvolveScope<ShortArray, F>.cxKPoint(count: Int, chance: Double)

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

Example:

Count (K points) = 2
Parent 1: ++++++++
Parent 2: --------
Generated cross index: 1, 5
Child 1: ++----++
Child 2: --++++--

Parameters

chance

chance of crossover between a pair of chromosomes

count

k-points for crossover