[Quantproject-developers] QuantProject/b1_ADT/Optimizing/Genetic GeneticOptimizer.cs, 1.15, 1.16
Brought to you by:
glauco_1
|
From: Marco M. <mi...@us...> - 2006-08-04 15:30:44
|
Update of /cvsroot/quantproject/QuantProject/b1_ADT/Optimizing/Genetic In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv24699/b1_ADT/Optimizing/Genetic Modified Files: GeneticOptimizer.cs Log Message: Fixed bug: now parameters elitismRate, mutationRate and crossoverRate are properly used by constructors Index: GeneticOptimizer.cs =================================================================== RCS file: /cvsroot/quantproject/QuantProject/b1_ADT/Optimizing/Genetic/GeneticOptimizer.cs,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** GeneticOptimizer.cs 2 Jul 2006 19:53:26 -0000 1.15 --- GeneticOptimizer.cs 4 Aug 2006 15:30:41 -0000 1.16 *************** *** 33,37 **** /// The class needs to be initialized by an object implementing /// IGenomeManager interface ! /// Default GO parameters: crossoverRate = 0.85, mutationRate = 0.02, elitismRate = 0.01, /// populationSize = 1000, generationNumber = 100 /// keepOnRunningUntilConvergenceIsReached = false, minConvergenceRate = 0.80 --- 33,37 ---- /// The class needs to be initialized by an object implementing /// IGenomeManager interface ! /// Default GO parameters: crossoverRate = 0.85, mutationRate = 0.05, elitismRate = 0.01, /// populationSize = 1000, generationNumber = 100 /// keepOnRunningUntilConvergenceIsReached = false, minConvergenceRate = 0.80 *************** *** 164,172 **** int generationNumber) { ! this.genomeManager = genomeManager; ! this.populationSize = populationSize; ! this.generationNumber = generationNumber; this.random = new Random(ConstantsProvider.SeedForRandomGenerator); - this.commonInitialization(); } --- 164,169 ---- int generationNumber) { ! this.commonInitialization(genomeManager, populationSize, generationNumber); this.random = new Random(ConstantsProvider.SeedForRandomGenerator); } *************** *** 174,182 **** int generationNumber, int seedForRandomGenerator) { ! this.genomeManager = genomeManager; ! this.populationSize = populationSize; ! this.generationNumber = generationNumber; this.random = new Random(seedForRandomGenerator); - this.commonInitialization(); } --- 171,176 ---- int generationNumber, int seedForRandomGenerator) { ! this.commonInitialization(genomeManager, populationSize, generationNumber); this.random = new Random(seedForRandomGenerator); } *************** *** 185,196 **** IGenomeManager genomeManager) { this.crossoverRate = crossoverRate; this.mutationRate = mutationRate; this.elitismRate = elitismRate; - this.populationSize = populationSize; - this.generationNumber = generationNumber; - this.genomeManager = genomeManager; this.random = new Random(ConstantsProvider.SeedForRandomGenerator); - this.commonInitialization(); } --- 179,187 ---- IGenomeManager genomeManager) { + this.commonInitialization(genomeManager, populationSize, generationNumber); this.crossoverRate = crossoverRate; this.mutationRate = mutationRate; this.elitismRate = elitismRate; this.random = new Random(ConstantsProvider.SeedForRandomGenerator); } *************** *** 199,219 **** IGenomeManager genomeManager, int seedForRandomGenerator) { this.crossoverRate = crossoverRate; this.mutationRate = mutationRate; this.elitismRate = elitismRate; - this.populationSize = populationSize; - this.generationNumber = generationNumber; - this.genomeManager = genomeManager; this.random = new Random(seedForRandomGenerator); - this.commonInitialization(); } ! private void commonInitialization() { ! this.mutationRate = 0.20; ! this.crossoverRate = 0.99; ! this.elitismRate = 0.0; this.minConvergenceRate = 0.80; this.keepOnRunningUntilConvergenceIsReached = false; this.genomeSize = this.genomeManager.GenomeSize; this.minValueForGenes = this.genomeManager.MinValueForGenes; --- 190,213 ---- IGenomeManager genomeManager, int seedForRandomGenerator) { + this.commonInitialization(genomeManager, populationSize, generationNumber); this.crossoverRate = crossoverRate; this.mutationRate = mutationRate; this.elitismRate = elitismRate; this.random = new Random(seedForRandomGenerator); } ! private void commonInitialization(IGenomeManager genomeManager, ! int populationSize, int generationNumber) { ! //default parameters for the GO ! this.mutationRate = 0.05; ! this.crossoverRate = 0.85; ! this.elitismRate = 0.01; this.minConvergenceRate = 0.80; this.keepOnRunningUntilConvergenceIsReached = false; + + this.genomeManager = genomeManager; + this.populationSize = populationSize; + this.generationNumber = generationNumber; this.genomeSize = this.genomeManager.GenomeSize; this.minValueForGenes = this.genomeManager.MinValueForGenes; |