elitism

object elitism
class Object
trait Matchable
class Any

Type members

Types

type Elitism[S, I] = (S, Vector[I], Vector[I], Random) => (S, Vector[I])

Value members

Concrete methods

def addHits[I](cell: I => Vector[Int], population: Vector[I], hitmap: HitMap): HitMap
def keepFirst[G, I](genome: I => G)(population: Vector[I], newIndividuals: Vector[I]): Vector[I]
def keepFirstFront[I](population: Vector[I], fitness: I => Vector[Double]): Vector[I]
def keepHighestRanked[I, K](population: Vector[I], ranks: Vector[K], mu: Int, rng: Random)(implicit KO: Order[K]): Vector[I]

Returns the mu individuals with the highest ranks.

Returns the mu individuals with the highest ranks.

def keepNiches[I, N](niche: I => N, keep: Vector[I] => Vector[I]): Vector[I] => Vector[I]

** Clone strategies ***

** Clone strategies ***

def keepOnFirstFront[I](population: Vector[I], fitness: I => Vector[Double], mu: Int, random: Random): Vector[I]
def maximiseO[I, F](f: I => F, mu: Int)(implicit FO: Order[F]): Vector[I] => Vector[I]
def mergeHistories[G, I, P](genome: I => G, history: Lens[I, Vector[P]], historyAge: Lens[I, Long], historySize: Int): (Vector[I], Vector[I]) => Vector[I]
def nicheElitism[I, N](population: Vector[I], keep: Vector[I] => Vector[I], niche: I => N): Vector[I]