public void InitGA() { System.Random rand; rand = (seedRandom) ? new System.Random(1) : new System.Random(); var randGenomGenerator = new RandNeuralGenomeGeneratorBase( rand, new Sigmoid(), weightRange, inputCount, outputCount, hiddenLayers, createBias); var reinsertion = new ReinsertBest <Synapse>( (int)(poplLne * reinsertPart)); var breeding = NewBreeding(rand); var generationGenerator = new GenerationGeneratorBase <Synapse>( poplLne, reinsertion, breeding); population = new PopulationBase <Synapse>( poplLne, randGenomGenerator, generationGenerator); }
public GAEvolveSum( Random rand, double partToReinsert, int targetSum, int poplLen, int genomeNumbers, int nbInterval, double geneMutChance, int geneMutRange) { ES_RandGenomeGenerator randGenomeGenerator; GenerationGeneratorBase <int> generationGenerator; IReinsertion <int> reinsertion; IBreeding <int> breeding; RandomInst = rand; TargetSum = targetSum; FitnessEval = new ES_FitnessEval(targetSum); randGenomeGenerator = new ES_RandGenomeGenerator(genomeNumbers, nbInterval, rand); reinsertion = new ReinsertBest <int>( (int)(poplLen * partToReinsert)); breeding = NewBreeding( poplLen, partToReinsert, geneMutChance, geneMutRange); generationGenerator = new GenerationGeneratorBase <int>( poplLen, reinsertion, breeding); Population = new PopulationBase <int>( poplLen, randGenomeGenerator, generationGenerator); }
public ShakespeareSolver( string targetStr, Random rand, double partToReinsert, int popLen, double geneMutChance, int geneMutRange) { TargetStr = targetStr; FitnessEval = new Sh_FitnessEval(TargetStr, chars); var randGenomeGenerator = new Sh_RandGenomeGenerator( rand, targetStr.Length, geneMutRange, chars); var reinsertion = new ReinsertBest <char>( (int)(popLen * partToReinsert)); var breeding = NewBreeding( rand, popLen, partToReinsert, geneMutChance, geneMutRange); var generationGenerator = new GenerationGeneratorBase <char>( popLen, reinsertion, breeding); Population = new PopulationBase <char>( popLen, randGenomeGenerator, generationGenerator); }
public void InitGAInternal() { var randomGenomeGenerator = new RandNeuralGenomeGeneratorBase( rand, new Sigmoid(), randomWeight, inputCount, outputCount, hiddenLayers, createBias); var reinsertion = new ReinsertBest <Synapse>( (int)(poplLen * partToReinsert)); var breeding = NewBreeding(rand); var generationGenerator = new GenerationGeneratorBase <Synapse>( poplLen, reinsertion, breeding); population = new PopulationBase <Synapse>( poplLen, randomGenomeGenerator, generationGenerator); }