public Evolver(IPopulationGenerator <T> generator, int populationSize, BreederBase <T> breeder, MutatorBase <T> mutator, Func <T, double> fitnessFunc) : this(GeneratePopulation(generator, populationSize), breeder, mutator, fitnessFunc) { }
public Evolver(List <T> initialPopulation, BreederBase <T> breeder, MutatorBase <T> mutator, Func <T, double> fitnessFunc) { _breeder = breeder; _populationSize = initialPopulation.Count; _mutator = mutator; _fitnessFunc = fitnessFunc; Population = initialPopulation; IsParallel = true; //default value, % of old population which won't make it to new one DeathRate = 0.7; }