class TournamentPickStrategy
Public Instance Methods
pick(population)
click to toggle source
# File lib/gimuby/genetic/population/pick_strategy/tournament_pick_strategy.rb, line 5 def pick(population) solutions = population.solutions number = get_number_to_pick(population) candidates = solutions.clone while candidates.length > number sol1 = Factory.random_entry(candidates) sol2 = sol1 while sol1 == sol2 sol2 = Factory.random_entry(candidates) end if population.get_fitness(sol1) < population.get_fitness(sol2) candidates.delete(sol2) else candidates.delete(sol1) end end candidates end