From e7d7e8506a511d78f9e323ac09587f79ad503f42 Mon Sep 17 00:00:00 2001 From: Eduardo Pedroni Date: Sun, 13 Apr 2014 10:41:25 +0100 Subject: Performance suddenly decreased, looking into why --- src/jcgp/backend/modules/es/MuPlusLambda.java | 22 +++------------------- 1 file changed, 3 insertions(+), 19 deletions(-) (limited to 'src/jcgp/backend/modules/es/MuPlusLambda.java') diff --git a/src/jcgp/backend/modules/es/MuPlusLambda.java b/src/jcgp/backend/modules/es/MuPlusLambda.java index 67236f9..6a3883b 100644 --- a/src/jcgp/backend/modules/es/MuPlusLambda.java +++ b/src/jcgp/backend/modules/es/MuPlusLambda.java @@ -17,8 +17,6 @@ import jcgp.backend.resources.parameters.ParameterStatus; */ public class MuPlusLambda implements EvolutionaryStrategy { - private int fittestChromosome; - private IntegerParameter parents, offspring; private BooleanParameter report; @@ -62,22 +60,13 @@ public class MuPlusLambda implements EvolutionaryStrategy { @Override public void evolve(Population population, Mutator mutator, Resources resources) { // select fittest chromosomes - fittestChromosome = 0; - - if (report.get()) resources.reportln("[ES] Selecting fittest chromosome..."); - for (int i = 0; i < resources.populationSize(); i++) { - if (report.get()) resources.reportln("[ES] Chromosome " + i + ", fitness: " + population.getChromosome(i).getFitness()); - if (population.getChromosome(i).getFitness() >= population.getChromosome(fittestChromosome).getFitness()) { - fittestChromosome = i; - } - } - if (report.get()) resources.reportln("[ES] Selected chromosome: " + fittestChromosome); + if (report.get()) resources.reportln("[ES] Selected chromosome: " + population.getFittestIndex()); // create copies of fittest chromosome, mutate them for (int i = 0; i < resources.populationSize(); i++) { - if (i != fittestChromosome) { + if (i != population.getFittestIndex()) { if (report.get()) resources.reportln("[ES] Copying fittest chromosome to population position " + i); - population.copyChromosome(fittestChromosome, i); + population.copyChromosome(population.getFittestIndex(), i); if (report.get()) resources.reportln("[ES] Mutating copied chromosome"); mutator.mutate(population.getChromosome(i), resources); } @@ -87,11 +76,6 @@ public class MuPlusLambda implements EvolutionaryStrategy { } - @Override - public int getFittestChromosome() { - return fittestChromosome; - } - @Override public Parameter[] getLocalParameters() { return new Parameter[] {parents, offspring, report}; -- cgit v1.2.3