public GeneticSimulation(int populationSize, int defaultGeneCount, IFitnessFunctionProvider fitnessComputer, IRecombinationProvider recombinator, ISelectionProvider maleSelector, ISelectionProvider femaleSelector) { this.fitnessComputer = fitnessComputer; this.recombinator = recombinator; this.maleSelector = maleSelector; this.femaleSelector = femaleSelector; this.populationSize = populationSize; this.defaultChromosomeLength = defaultGeneCount; this.geneMutationRate = 0.01d; this.geneDuplicationRate = 0.0d; this.geneDropRate = 0.0d; this.randomizer = new Random(); this.ResetSimulation(); }
public GeneticSimulation(int populationSize, int defaultGeneCount, IFitnessFunctionProvider fitnessComputer, IRecombinationProvider recombinator, ISelectionProvider selector) : this(populationSize, defaultGeneCount, fitnessComputer, recombinator, selector, selector) { }
// Errechnet mithilfe eines IFitnessFunctionProvider Interface die Fitness des Chromosoms public void computeFitness(IFitnessFunctionProvider provider) { this.fitness = provider.ComputeFitness(this.genes); }