RouletteWheelSelection

Fitness-proportional ("roulette wheel") selection: an alternate selection operator. Because the framework minimizes the (penalized) objective and that value may be negative, raw fitness-proportional weights are not meaningful. This operator therefore uses a windowed weight: for each individual, weight = worst - f, where f is the penalized objective and worst is the largest (worst) penalized objective in the population. The best individual receives the largest weight and the worst receives zero. When all individuals are equal (total weight 0), selection is uniform. Parents are drawn by roulette over the weights.

Constructors

Link copied to clipboard
constructor()

Functions

Link copied to clipboard
open override fun select(population: List<Solution>, numToSelect: Int, solver: GeneticAlgorithmSolver): List<Solution>

Selects parents from the current evaluated population.

Link copied to clipboard
open override fun toString(): String