public TrainingSetNeuralGeneticAlgorithm(FeedforwardNetwork network, bool reset, double[][] input, double[][] ideal, int populationSize, double mutationPercent, double allowedPercentageToMate) { MutationPercent = mutationPercent; MatingPopulation = allowedPercentageToMate * 2; PopulationSize = populationSize; PercentToMate = allowedPercentageToMate; Input = input; Ideal = ideal; Chromosomes = new TrainingSetNeuralChromosome[PopulationSize]; for (var i = 0; i < Chromosomes.Length; i++) { var chromosomeNetwork = (FeedforwardNetwork)network.Clone(); if (reset) { chromosomeNetwork.Reset(); } var c = new TrainingSetNeuralChromosome(this, chromosomeNetwork); c.UpdateGenes(); SetChromosome(i, c); } SortChromosomes(); }
public TrainingSetNeuralGeneticAlgorithm(FeedforwardNetwork network, bool reset, double[][] input, double[][] ideal, int populationSize, double mutationPercent, double allowedPercentageToMate) { MutationPercent = mutationPercent; MatingPopulation = allowedPercentageToMate * 2; PopulationSize = populationSize; PercentToMate = allowedPercentageToMate; Input = input; Ideal = ideal; Chromosomes = new TrainingSetNeuralChromosome[PopulationSize]; for (var i = 0; i < Chromosomes.Length; i++) { var chromosomeNetwork = (FeedforwardNetwork)network.Clone(); if (reset) chromosomeNetwork.Reset(); var c = new TrainingSetNeuralChromosome(this, chromosomeNetwork); c.UpdateGenes(); SetChromosome(i, c); } SortChromosomes(); }