Package-level declarations

Functions

Link copied to clipboard
fun crossoverBlend(value1: DoubleArray, value2: DoubleArray, alpha: Double, random: Random)

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

fun crossoverBlend(value1: FloatArray, value2: FloatArray, alpha: Float, random: Random)

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

Link copied to clipboard
fun <T> crossoverKPoint(value1: Array<T>, value2: Array<T>, count: Int, random: Random)
fun crossoverKPoint(value1: BooleanArray, value2: BooleanArray, count: Int, random: Random)
fun crossoverKPoint(value1: ByteArray, value2: ByteArray, count: Int, random: Random)
fun crossoverKPoint(value1: CharArray, value2: CharArray, count: Int, random: Random)
fun crossoverKPoint(value1: DoubleArray, value2: DoubleArray, count: Int, random: Random)
fun crossoverKPoint(value1: FloatArray, value2: FloatArray, count: Int, random: Random)
fun crossoverKPoint(value1: IntArray, value2: IntArray, count: Int, random: Random)
fun crossoverKPoint(value1: LongArray, value2: LongArray, count: Int, random: Random)
fun crossoverKPoint(value1: ShortArray, value2: ShortArray, count: Int, random: Random)
fun <T> crossoverKPoint(value1: MutableList<T>, value2: MutableList<T>, count: Int, random: Random)

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

Link copied to clipboard
fun <T> crossoverOnePoint(value1: Array<T>, value2: Array<T>, random: Random)
fun crossoverOnePoint(value1: BooleanArray, value2: BooleanArray, random: Random)
fun crossoverOnePoint(value1: ByteArray, value2: ByteArray, random: Random)
fun crossoverOnePoint(value1: CharArray, value2: CharArray, random: Random)
fun crossoverOnePoint(value1: DoubleArray, value2: DoubleArray, random: Random)
fun crossoverOnePoint(value1: FloatArray, value2: FloatArray, random: Random)
fun crossoverOnePoint(value1: IntArray, value2: IntArray, random: Random)
fun crossoverOnePoint(value1: LongArray, value2: LongArray, random: Random)
fun crossoverOnePoint(value1: ShortArray, value2: ShortArray, random: Random)
fun <T> crossoverOnePoint(value1: MutableList<T>, value2: MutableList<T>, random: Random)

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

Link copied to clipboard
fun crossoverOrdered(value1: IntArray, value2: IntArray, random: Random)
fun crossoverOrdered(value1: IntArray, value2: IntArray, point1: Int, point2: Int, size: Int = minOf(value1.size, value2.size))

Executes an ordered crossover (OX) on the input chromosome values. The two value are modified in place. This crossover expects Chromosome.value as IntArray. Mixes indexes without conflicts, preserving parental relationships.

Link copied to clipboard
fun crossoverSimulatedBinary(value1: DoubleArray, value2: DoubleArray, eta: Double, random: Random)

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

Link copied to clipboard
fun crossoverSimulatedBinaryBounded(value1: DoubleArray, value2: DoubleArray, eta: Double, low: Double, up: Double, random: Random)

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

Link copied to clipboard
fun <T> crossoverUniform(value1: Array<T>, value2: Array<T>, chance: Double, random: Random)
fun crossoverUniform(value1: BooleanArray, value2: BooleanArray, chance: Double, random: Random)
fun crossoverUniform(value1: ByteArray, value2: ByteArray, chance: Double, random: Random)
fun crossoverUniform(value1: CharArray, value2: CharArray, chance: Double, random: Random)
fun crossoverUniform(value1: DoubleArray, value2: DoubleArray, chance: Double, random: Random)
fun crossoverUniform(value1: FloatArray, value2: FloatArray, chance: Double, random: Random)
fun crossoverUniform(value1: IntArray, value2: IntArray, chance: Double, random: Random)
fun crossoverUniform(value1: LongArray, value2: LongArray, chance: Double, random: Random)
fun crossoverUniform(value1: ShortArray, value2: ShortArray, chance: Double, random: Random)
fun <T> crossoverUniform(value1: MutableList<T>, value2: MutableList<T>, chance: Double, random: Random)

Executes a uniform crossover that modify in-place the input chromosomes. The attributes are swapped according to the chance probability.