Dynamic Inbreeding
Dynamic-inbreeding mating (Algorithm 4, §A.7): sample m candidate partners from the pool and prefer the best candidate drawn from the same niche as the individual; if none of the sampled candidates share the individual's niche, fall back to the geometrically closest candidate. This keeps recombination local to a niche while still allowing occasional cross-niche mating.
Parameters
m
the number of candidate partners sampled per mating; must be at least 1
Functions
Link copied to clipboard
open override fun selectMate(individual: Solution, pool: List<Solution>, niches: NicheResult, compareSolutions: (Solution, Solution) -> Int, rnStream: RNStreamIfc): Solution
Selects a mate for individual from pool, possibly using the niches structure.