diff --git a/src/eva2/cli/Main.java b/src/eva2/cli/Main.java index 243456ca..04ddf956 100644 --- a/src/eva2/cli/Main.java +++ b/src/eva2/cli/Main.java @@ -273,7 +273,7 @@ public class Main implements OptimizationStateListener, InterfacePopulationChang CommandLine commandLine = null; switch(optimizerName) { - case "DifferentialEvolution": + case "DifferentialEvolution": { System.out.println("DE"); opt.addOption("F", true, "Differential Weight"); opt.addOption("CR", true, "Crossover Rate"); @@ -309,10 +309,11 @@ public class Main implements OptimizationStateListener, InterfacePopulationChang } break; + } case "GeneticAlgorithm": System.out.println("Genetic Algorithm"); break; - case "ParticleSwarmOptimization": + case "ParticleSwarmOptimization": { opt.addOption("initialVelocity", true, "Initial Velocity"); opt.addOption("speedLimit", true, "Speed Limit"); opt.addOption("topology", true, "Particle Swarm Topology (0-7)"); @@ -323,12 +324,14 @@ public class Main implements OptimizationStateListener, InterfacePopulationChang opt.addOption("algType", true, "Type of PSO"); break; - case "EvolutionStrategies": - //double cm, cr; - //int mu, lambda; + } + case "EvolutionStrategies": { + double cm, cr; + int mu, lambda; boolean plusStrategy; //this.optimizer = OptimizerFactory.createEvolutionStrategy() break; + } default: throw new Exception("Unsupported Optimizer"); } diff --git a/src/eva2/optimization/modules/Processor.java b/src/eva2/optimization/modules/Processor.java index e4cb12fd..14b35fc1 100644 --- a/src/eva2/optimization/modules/Processor.java +++ b/src/eva2/optimization/modules/Processor.java @@ -196,7 +196,7 @@ public class Processor extends Thread implements InterfaceProcessor, InterfacePo } catch (Exception ex) { } catch (Error error) { } - //statistics.stopOptPerformed(false); + //statistics.stopOptimizationPerformed(false); setOptimizationRunning(false); // normal finish if (optimizationStateListener != null) { optimizationStateListener.performedStop(); // is only needed in client server mode @@ -235,7 +235,7 @@ public class Processor extends Thread implements InterfaceProcessor, InterfacePo while (isOptimizationRunning() && (runCounter < statistics.getStatisticsParameter().getMultiRuns())) { LOGGER.info(String.format("Starting Optimization %d/%d", runCounter + 1, statistics.getStatisticsParameter().getMultiRuns())); - statistics.startOptPerformed(getInfoString(), runCounter, optimizationParameters, getInformerList()); + statistics.startOptimizationPerformed(getInfoString(), runCounter, optimizationParameters, getInformerList()); this.optimizationParameters.getProblem().initializeProblem(); this.optimizationParameters.getOptimizer().setProblem(this.optimizationParameters.getProblem()); @@ -268,7 +268,7 @@ public class Processor extends Thread implements InterfaceProcessor, InterfacePo maybeFinishParamCtrl(optimizationParameters); userAborted = !isOptimizationRunning(); // stop is "normal" if opt wasnt set false by the user (and thus still true) //////////////// Default stats - statistics.stopOptPerformed(!userAborted, optimizationParameters.getTerminator().lastTerminationMessage()); // stop is "normal" if opt wasnt set false by the user (and thus still true) + statistics.stopOptimizationPerformed(!userAborted, optimizationParameters.getTerminator().lastTerminationMessage()); // stop is "normal" if opt wasnt set false by the user (and thus still true) //////////////// PP or set results without further PP if (!userAborted) { diff --git a/src/eva2/optimization/stat/AbstractStatistics.java b/src/eva2/optimization/stat/AbstractStatistics.java index 18e1383a..7d5b4c21 100644 --- a/src/eva2/optimization/stat/AbstractStatistics.java +++ b/src/eva2/optimization/stat/AbstractStatistics.java @@ -21,9 +21,9 @@ import java.text.SimpleDateFormat; import java.util.*; /** - * An abstract class handling statistics. Most important stuff happens in startOptPerformed, stopOptPerformed - * and createNextGenerationPerformed. Any measures (run based or multi-run based) are reset in startOptPerformed, - * updated per iteration in createNextGenerationPerformed and reported to listeners in stopOptPerformed. + * An abstract class handling statistics. Most important stuff happens in startOptimizationPerformed, stopOptimizationPerformed + * and createNextGenerationPerformed. Any measures (run based or multi-run based) are reset in startOptimizationPerformed, + * updated per iteration in createNextGenerationPerformed and reported to listeners in stopOptimizationPerformed. * Several different verbosity levels are regarded. * The method plotCurrentResults should be implemented to plot further results per iteration. *
@@ -39,9 +39,6 @@ import java.util.*; * * Listeners implementing InterfaceTextListener receive String output (human readable). * Listeners implementing InterfaceStatisticsListener receive the raw data per iteration. - * - * @author mkron - * @see StatsParameter */ public abstract class AbstractStatistics implements InterfaceTextListener, InterfaceStatistics { private transient PrintWriter resultOut; @@ -254,7 +251,7 @@ public abstract class AbstractStatistics implements InterfaceTextListener, Inter } @Override - public void startOptPerformed(String infoString, int runNumber, Object params, List