From 4326044a1b69d6fbc02782626f2f34e1b24e528e Mon Sep 17 00:00:00 2001 From: Fabian Becker Date: Thu, 13 Nov 2014 14:50:13 +0100 Subject: [PATCH] Organize imports. Fix missing data header in F8Problem. Fix several tip texts. --- src/eva2/OptimizerFactory.java | 4 +- src/eva2/examples/TestingGAB1.java | 2 +- src/eva2/examples/TestingPlusCmaEs.java | 2 +- src/eva2/gui/JTextoutputFrame.java | 5 +- src/eva2/gui/Main.java | 8 +-- .../editor/OptimizationObjectivesEditor.java | 4 +- ...OptimizationObjectivesWithParamEditor.java | 2 +- .../go/InterfaceOptimizationParameters.java | 2 +- src/eva2/optimization/go/MOCCOStandalone.java | 2 +- .../go/StandaloneOptimization.java | 2 +- .../mocco/MOCCOParameterizeGDF.java | 6 +-- .../mocco/MOCCOParameterizeRefPoint.java | 2 +- .../mocco/MOCCOParameterizeSTEP.java | 6 +-- .../mocco/MOCCOParameterizeTchebycheff.java | 2 +- src/eva2/optimization/mocco/MOCCOState.java | 4 +- .../optimization/operator/crossover/CM1.java | 2 +- .../optimization/operator/crossover/CM6.java | 2 +- .../migration/MOClusteringSeparation.java | 2 +- .../operator/migration/MOConeSeparation.java | 2 +- .../migration/MOXMeansSeparation.java | 2 +- .../operator/mutation/CMAParamSet.java | 2 +- .../operator/mutation/MutateESRankMuCMA.java | 2 +- .../MetricD1ApproxParetoFront.java | 2 +- .../MetricD1TrueParetoFront.java | 2 +- .../paretofrontmetrics/MetricErrorRatio.java | 2 +- .../MetricMaximumParetoFrontError.java | 2 +- .../MetricSWithReference.java | 2 +- .../operator/postprocess/PostProcess.java | 2 +- .../strategies/BinaryScatterSearch.java | 2 +- .../strategies/ClusterBasedNichingEA.java | 2 +- .../strategies/ClusteringHillClimbing.java | 53 ++++--------------- .../optimization/strategies/EsDpiNiching.java | 6 +-- .../strategies/EvolutionStrategyIPOP.java | 2 +- .../strategies/EvolutionaryProgramming.java | 2 +- .../strategies/IslandModelEA.java | 2 +- src/eva2/optimization/strategies/LTGA.java | 2 +- src/eva2/optimization/strategies/MLTGA.java | 2 +- .../strategies/MemeticAlgorithm.java | 2 +- .../strategies/MultiObjectiveEA.java | 2 +- .../strategies/NelderMeadSimplex.java | 2 +- .../strategies/ParticleSwarmOptimization.java | 4 +- .../PopulationBasedIncrementalLearning.java | 6 +-- src/eva2/optimization/strategies/Tribes.java | 8 +-- .../optimization/strategies/tribes/Tribe.java | 2 +- .../strategies/tribes/TribesExplorer.java | 2 +- .../strategies/tribes/TribesSwarm.java | 2 +- src/eva2/optimization/tools/FileTools.java | 2 +- .../problems/AbstractOptimizationProblem.java | 10 ++-- src/eva2/problems/AbstractProblemDouble.java | 15 +++--- .../problems/AbstractProblemDoubleOffset.java | 12 ++--- src/eva2/problems/F8Problem.java | 10 +++- ...InterfaceAdditionalPopulationInformer.java | 2 - src/eva2/problems/PSymbolicRegression.java | 2 +- src/eva2/problems/SimpleProblemWrapper.java | 4 +- 54 files changed, 103 insertions(+), 136 deletions(-) diff --git a/src/eva2/OptimizerFactory.java b/src/eva2/OptimizerFactory.java index cfb8125b..8827e71d 100644 --- a/src/eva2/OptimizerFactory.java +++ b/src/eva2/OptimizerFactory.java @@ -4,7 +4,6 @@ import eva2.optimization.enums.DEType; import eva2.optimization.enums.MutateESCrossoverType; import eva2.optimization.enums.PSOTopology; import eva2.optimization.enums.PostProcessMethod; -import eva2.optimization.population.InterfacePopulationChangedEventListener; import eva2.optimization.individuals.*; import eva2.optimization.modules.OptimizationParameters; import eva2.optimization.operator.archiving.ArchivingNSGAII; @@ -25,11 +24,12 @@ import eva2.optimization.operator.selection.SelectBestIndividuals; import eva2.optimization.operator.terminators.CombinedTerminator; import eva2.optimization.operator.terminators.EvaluationTerminator; import eva2.optimization.operator.terminators.InterfaceTerminator; +import eva2.optimization.population.InterfacePopulationChangedEventListener; import eva2.optimization.population.PBILPopulation; import eva2.optimization.population.Population; -import eva2.problems.AbstractOptimizationProblem; import eva2.optimization.statistics.InterfaceStatistics; import eva2.optimization.strategies.*; +import eva2.problems.AbstractOptimizationProblem; import eva2.tools.math.RNG; import java.util.ArrayList; diff --git a/src/eva2/examples/TestingGAB1.java b/src/eva2/examples/TestingGAB1.java index c9aeae2b..317c9adb 100644 --- a/src/eva2/examples/TestingGAB1.java +++ b/src/eva2/examples/TestingGAB1.java @@ -5,8 +5,8 @@ import eva2.optimization.modules.OptimizationParameters; import eva2.optimization.operator.selection.SelectXProbRouletteWheel; import eva2.optimization.operator.terminators.EvaluationTerminator; import eva2.optimization.population.Population; -import eva2.problems.B1Problem; import eva2.optimization.strategies.GeneticAlgorithm; +import eva2.problems.B1Problem; import java.util.BitSet; diff --git a/src/eva2/examples/TestingPlusCmaEs.java b/src/eva2/examples/TestingPlusCmaEs.java index 6d9399ac..296c560b 100644 --- a/src/eva2/examples/TestingPlusCmaEs.java +++ b/src/eva2/examples/TestingPlusCmaEs.java @@ -6,8 +6,8 @@ import eva2.optimization.modules.OptimizationParameters; import eva2.optimization.operator.crossover.CrossoverESDefault; import eva2.optimization.operator.mutation.MutateESCovarianceMatrixAdaption; import eva2.optimization.operator.terminators.EvaluationTerminator; -import eva2.problems.FM0Problem; import eva2.optimization.strategies.EvolutionStrategies; +import eva2.problems.FM0Problem; public class TestingPlusCmaEs { diff --git a/src/eva2/gui/JTextoutputFrame.java b/src/eva2/gui/JTextoutputFrame.java index 3f097135..3b1973d5 100644 --- a/src/eva2/gui/JTextoutputFrame.java +++ b/src/eva2/gui/JTextoutputFrame.java @@ -5,7 +5,10 @@ import eva2.optimization.tools.FileTools; import javax.swing.*; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; -import javax.swing.text.*; +import javax.swing.text.AbstractDocument; +import javax.swing.text.AttributeSet; +import javax.swing.text.BadLocationException; +import javax.swing.text.DocumentFilter; import java.awt.*; import java.awt.event.*; import java.io.Serializable; diff --git a/src/eva2/gui/Main.java b/src/eva2/gui/Main.java index 9e0b1735..f166586a 100644 --- a/src/eva2/gui/Main.java +++ b/src/eva2/gui/Main.java @@ -1,18 +1,18 @@ package eva2.gui; import eva2.EvAInfo; -import eva2.optimization.modules.*; -import eva2.optimization.statistics.InterfaceStatisticsParameters; -import eva2.util.ClassPreloader; -import eva2.util.EvAComAdapter; import eva2.optimization.OptimizationStateListener; import eva2.optimization.go.InterfaceOptimizationParameters; +import eva2.optimization.modules.*; import eva2.optimization.statistics.AbstractStatistics; import eva2.optimization.statistics.InterfaceStatisticsListener; +import eva2.optimization.statistics.InterfaceStatisticsParameters; import eva2.tools.BasicResourceLoader; import eva2.tools.EVAERROR; import eva2.tools.ReflectPackage; import eva2.tools.StringTools; +import eva2.util.ClassPreloader; +import eva2.util.EvAComAdapter; import javax.help.HelpSet; import javax.help.JHelpContentViewer; diff --git a/src/eva2/gui/editor/OptimizationObjectivesEditor.java b/src/eva2/gui/editor/OptimizationObjectivesEditor.java index ef145601..15b8a6e9 100644 --- a/src/eva2/gui/editor/OptimizationObjectivesEditor.java +++ b/src/eva2/gui/editor/OptimizationObjectivesEditor.java @@ -3,10 +3,10 @@ package eva2.gui.editor; import eva2.gui.PropertyEditorProvider; import eva2.gui.PropertyOptimizationObjectives; -import eva2.problems.InterfaceOptimizationObjective; -import eva2.problems.InterfaceOptimizationTarget; import eva2.optimization.tools.AbstractObjectEditor; import eva2.optimization.tools.GeneralOptimizationEditorProperty; +import eva2.problems.InterfaceOptimizationObjective; +import eva2.problems.InterfaceOptimizationTarget; import eva2.tools.BasicResourceLoader; import javax.swing.*; diff --git a/src/eva2/gui/editor/OptimizationObjectivesWithParamEditor.java b/src/eva2/gui/editor/OptimizationObjectivesWithParamEditor.java index 7b69d452..f6bb5e44 100644 --- a/src/eva2/gui/editor/OptimizationObjectivesWithParamEditor.java +++ b/src/eva2/gui/editor/OptimizationObjectivesWithParamEditor.java @@ -3,9 +3,9 @@ package eva2.gui.editor; import eva2.gui.PropertyEditorProvider; import eva2.gui.PropertyOptimizationObjectivesWithParam; -import eva2.problems.InterfaceOptimizationObjective; import eva2.optimization.tools.AbstractObjectEditor; import eva2.optimization.tools.GeneralOptimizationEditorProperty; +import eva2.problems.InterfaceOptimizationObjective; import eva2.tools.BasicResourceLoader; import javax.swing.*; diff --git a/src/eva2/optimization/go/InterfaceOptimizationParameters.java b/src/eva2/optimization/go/InterfaceOptimizationParameters.java index 8c631ab7..1db140c9 100644 --- a/src/eva2/optimization/go/InterfaceOptimizationParameters.java +++ b/src/eva2/optimization/go/InterfaceOptimizationParameters.java @@ -2,9 +2,9 @@ package eva2.optimization.go; import eva2.optimization.operator.postprocess.InterfacePostProcessParams; import eva2.optimization.operator.terminators.InterfaceTerminator; +import eva2.optimization.strategies.InterfaceOptimizer; import eva2.problems.InterfaceAdditionalPopulationInformer; import eva2.problems.InterfaceOptimizationProblem; -import eva2.optimization.strategies.InterfaceOptimizer; /** * diff --git a/src/eva2/optimization/go/MOCCOStandalone.java b/src/eva2/optimization/go/MOCCOStandalone.java index 8ef7f3e3..74d837ea 100644 --- a/src/eva2/optimization/go/MOCCOStandalone.java +++ b/src/eva2/optimization/go/MOCCOStandalone.java @@ -9,9 +9,9 @@ import eva2.optimization.operator.moso.MOSOWeightedFitness; import eva2.optimization.operator.terminators.EvaluationTerminator; import eva2.optimization.population.InterfacePopulationChangedEventListener; import eva2.optimization.population.Population; -import eva2.problems.*; import eva2.optimization.strategies.InterfaceOptimizer; import eva2.optimization.strategies.IslandModelEA; +import eva2.problems.*; import javax.swing.*; import java.awt.*; diff --git a/src/eva2/optimization/go/StandaloneOptimization.java b/src/eva2/optimization/go/StandaloneOptimization.java index d708ff30..72615102 100644 --- a/src/eva2/optimization/go/StandaloneOptimization.java +++ b/src/eva2/optimization/go/StandaloneOptimization.java @@ -16,10 +16,10 @@ import eva2.optimization.operator.selection.SelectTournament; import eva2.optimization.operator.terminators.EvaluationTerminator; import eva2.optimization.population.InterfacePopulationChangedEventListener; import eva2.optimization.population.Population; -import eva2.problems.F1Problem; import eva2.optimization.strategies.EvolutionStrategies; import eva2.optimization.strategies.GeneticAlgorithm; import eva2.optimization.strategies.InterfaceOptimizer; +import eva2.problems.F1Problem; import eva2.tools.math.RNG; import javax.swing.*; diff --git a/src/eva2/optimization/mocco/MOCCOParameterizeGDF.java b/src/eva2/optimization/mocco/MOCCOParameterizeGDF.java index 67ca4bde..12915763 100644 --- a/src/eva2/optimization/mocco/MOCCOParameterizeGDF.java +++ b/src/eva2/optimization/mocco/MOCCOParameterizeGDF.java @@ -8,13 +8,13 @@ import eva2.optimization.go.MOCCOStandalone; import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.operator.moso.MOSOWeightedFitness; import eva2.optimization.operator.terminators.InterfaceTerminator; -import eva2.problems.AbstractMultiObjectiveOptimizationProblem; -import eva2.problems.InterfaceMultiObjectiveDeNovoProblem; -import eva2.problems.InterfaceOptimizationObjective; import eva2.optimization.strategies.GeneticAlgorithm; import eva2.optimization.strategies.InterfaceOptimizer; import eva2.optimization.tools.AbstractObjectEditor; import eva2.optimization.tools.GeneralOptimizationEditorProperty; +import eva2.problems.AbstractMultiObjectiveOptimizationProblem; +import eva2.problems.InterfaceMultiObjectiveDeNovoProblem; +import eva2.problems.InterfaceOptimizationObjective; import javax.swing.*; import java.awt.*; diff --git a/src/eva2/optimization/mocco/MOCCOParameterizeRefPoint.java b/src/eva2/optimization/mocco/MOCCOParameterizeRefPoint.java index 5bb25806..792b3d13 100644 --- a/src/eva2/optimization/mocco/MOCCOParameterizeRefPoint.java +++ b/src/eva2/optimization/mocco/MOCCOParameterizeRefPoint.java @@ -7,10 +7,10 @@ import eva2.optimization.go.MOCCOStandalone; import eva2.optimization.operator.migration.SOBestMigration; import eva2.optimization.operator.moso.MOSOLpMetric; import eva2.optimization.operator.terminators.InterfaceTerminator; -import eva2.problems.AbstractMultiObjectiveOptimizationProblem; import eva2.optimization.strategies.IslandModelEA; import eva2.optimization.tools.AbstractObjectEditor; import eva2.optimization.tools.GeneralOptimizationEditorProperty; +import eva2.problems.AbstractMultiObjectiveOptimizationProblem; import eva2.tools.math.RNG; import javax.swing.*; diff --git a/src/eva2/optimization/mocco/MOCCOParameterizeSTEP.java b/src/eva2/optimization/mocco/MOCCOParameterizeSTEP.java index 9d7b3809..87a5e5cb 100644 --- a/src/eva2/optimization/mocco/MOCCOParameterizeSTEP.java +++ b/src/eva2/optimization/mocco/MOCCOParameterizeSTEP.java @@ -8,13 +8,13 @@ import eva2.optimization.go.MOCCOStandalone; import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.operator.moso.MOSOWeightedFitness; import eva2.optimization.operator.terminators.InterfaceTerminator; -import eva2.problems.AbstractMultiObjectiveOptimizationProblem; -import eva2.problems.InterfaceMultiObjectiveDeNovoProblem; -import eva2.problems.InterfaceOptimizationObjective; import eva2.optimization.strategies.GeneticAlgorithm; import eva2.optimization.strategies.InterfaceOptimizer; import eva2.optimization.tools.AbstractObjectEditor; import eva2.optimization.tools.GeneralOptimizationEditorProperty; +import eva2.problems.AbstractMultiObjectiveOptimizationProblem; +import eva2.problems.InterfaceMultiObjectiveDeNovoProblem; +import eva2.problems.InterfaceOptimizationObjective; import javax.swing.*; import java.awt.*; diff --git a/src/eva2/optimization/mocco/MOCCOParameterizeTchebycheff.java b/src/eva2/optimization/mocco/MOCCOParameterizeTchebycheff.java index 991e157a..c54c98f3 100644 --- a/src/eva2/optimization/mocco/MOCCOParameterizeTchebycheff.java +++ b/src/eva2/optimization/mocco/MOCCOParameterizeTchebycheff.java @@ -7,10 +7,10 @@ import eva2.optimization.go.MOCCOStandalone; import eva2.optimization.operator.migration.SOBestMigration; import eva2.optimization.operator.moso.MOSOWeightedLPTchebycheff; import eva2.optimization.operator.terminators.InterfaceTerminator; -import eva2.problems.AbstractMultiObjectiveOptimizationProblem; import eva2.optimization.strategies.IslandModelEA; import eva2.optimization.tools.AbstractObjectEditor; import eva2.optimization.tools.GeneralOptimizationEditorProperty; +import eva2.problems.AbstractMultiObjectiveOptimizationProblem; import eva2.tools.math.RNG; import javax.swing.*; diff --git a/src/eva2/optimization/mocco/MOCCOState.java b/src/eva2/optimization/mocco/MOCCOState.java index 893411c1..b83d546e 100644 --- a/src/eva2/optimization/mocco/MOCCOState.java +++ b/src/eva2/optimization/mocco/MOCCOState.java @@ -4,12 +4,12 @@ import eva2.optimization.operator.archiving.ArchivingAllDominating; import eva2.optimization.operator.terminators.EvaluationTerminator; import eva2.optimization.operator.terminators.InterfaceTerminator; import eva2.optimization.population.Population; +import eva2.optimization.strategies.InterfaceOptimizer; +import eva2.optimization.strategies.MultiObjectiveEA; import eva2.problems.AbstractMultiObjectiveOptimizationProblem; import eva2.problems.InterfaceMultiObjectiveDeNovoProblem; import eva2.problems.InterfaceOptimizationObjective; import eva2.problems.InterfaceOptimizationProblem; -import eva2.optimization.strategies.InterfaceOptimizer; -import eva2.optimization.strategies.MultiObjectiveEA; import java.awt.*; import java.util.ArrayList; diff --git a/src/eva2/optimization/operator/crossover/CM1.java b/src/eva2/optimization/operator/crossover/CM1.java index 128047b5..f0de4349 100644 --- a/src/eva2/optimization/operator/crossover/CM1.java +++ b/src/eva2/optimization/operator/crossover/CM1.java @@ -3,8 +3,8 @@ package eva2.optimization.operator.crossover; import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.individuals.InterfaceDataTypeBinary; import eva2.optimization.population.Population; -import eva2.problems.InterfaceOptimizationProblem; import eva2.optimization.strategies.BinaryScatterSearch; +import eva2.problems.InterfaceOptimizationProblem; import eva2.tools.math.RNG; import eva2.util.annotation.Description; diff --git a/src/eva2/optimization/operator/crossover/CM6.java b/src/eva2/optimization/operator/crossover/CM6.java index eb938731..218cbb2a 100644 --- a/src/eva2/optimization/operator/crossover/CM6.java +++ b/src/eva2/optimization/operator/crossover/CM6.java @@ -3,8 +3,8 @@ package eva2.optimization.operator.crossover; import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.individuals.InterfaceDataTypeBinary; import eva2.optimization.population.Population; -import eva2.problems.InterfaceOptimizationProblem; import eva2.optimization.strategies.BinaryScatterSearch; +import eva2.problems.InterfaceOptimizationProblem; import eva2.tools.math.RNG; import eva2.util.annotation.Description; diff --git a/src/eva2/optimization/operator/migration/MOClusteringSeparation.java b/src/eva2/optimization/operator/migration/MOClusteringSeparation.java index 7630bcd3..f375798d 100644 --- a/src/eva2/optimization/operator/migration/MOClusteringSeparation.java +++ b/src/eva2/optimization/operator/migration/MOClusteringSeparation.java @@ -9,9 +9,9 @@ import eva2.optimization.operator.constraint.ConstBelongsToDifferentClass; import eva2.optimization.operator.selection.InterfaceSelection; import eva2.optimization.operator.selection.SelectRandom; import eva2.optimization.population.Population; +import eva2.optimization.strategies.InterfaceOptimizer; import eva2.problems.AbstractMultiObjectiveOptimizationProblem; import eva2.problems.InterfaceOptimizationProblem; -import eva2.optimization.strategies.InterfaceOptimizer; import eva2.tools.chart2d.Chart2DDPointIconCircle; import eva2.tools.chart2d.Chart2DDPointIconText; import eva2.tools.chart2d.DPoint; diff --git a/src/eva2/optimization/operator/migration/MOConeSeparation.java b/src/eva2/optimization/operator/migration/MOConeSeparation.java index d4f4682d..667a4b7f 100644 --- a/src/eva2/optimization/operator/migration/MOConeSeparation.java +++ b/src/eva2/optimization/operator/migration/MOConeSeparation.java @@ -12,9 +12,9 @@ import eva2.optimization.operator.constraint.ConstObjectivesInEqualitySmallerTha import eva2.optimization.operator.selection.InterfaceSelection; import eva2.optimization.operator.selection.SelectRandom; import eva2.optimization.population.Population; +import eva2.optimization.strategies.InterfaceOptimizer; import eva2.problems.AbstractMultiObjectiveOptimizationProblem; import eva2.problems.InterfaceOptimizationProblem; -import eva2.optimization.strategies.InterfaceOptimizer; import eva2.tools.chart2d.Chart2DDPointIconCircle; import eva2.tools.chart2d.Chart2DDPointIconText; import eva2.tools.chart2d.DPoint; diff --git a/src/eva2/optimization/operator/migration/MOXMeansSeparation.java b/src/eva2/optimization/operator/migration/MOXMeansSeparation.java index 6d6859d0..1b0ffd91 100644 --- a/src/eva2/optimization/operator/migration/MOXMeansSeparation.java +++ b/src/eva2/optimization/operator/migration/MOXMeansSeparation.java @@ -10,9 +10,9 @@ import eva2.optimization.operator.constraint.ConstBelongsToDifferentClass; import eva2.optimization.operator.selection.InterfaceSelection; import eva2.optimization.operator.selection.SelectRandom; import eva2.optimization.population.Population; +import eva2.optimization.strategies.InterfaceOptimizer; import eva2.problems.AbstractMultiObjectiveOptimizationProblem; import eva2.problems.InterfaceOptimizationProblem; -import eva2.optimization.strategies.InterfaceOptimizer; import eva2.tools.chart2d.Chart2DDPointIconCircle; import eva2.tools.chart2d.Chart2DDPointIconText; import eva2.tools.chart2d.DPoint; diff --git a/src/eva2/optimization/operator/mutation/CMAParamSet.java b/src/eva2/optimization/operator/mutation/CMAParamSet.java index 8624bfee..8790cddd 100644 --- a/src/eva2/optimization/operator/mutation/CMAParamSet.java +++ b/src/eva2/optimization/operator/mutation/CMAParamSet.java @@ -1,7 +1,7 @@ package eva2.optimization.operator.mutation; -import eva2.optimization.population.InterfacePopulationChangedEventListener; import eva2.optimization.individuals.InterfaceDataTypeDouble; +import eva2.optimization.population.InterfacePopulationChangedEventListener; import eva2.optimization.population.Population; import eva2.optimization.strategies.EvolutionStrategies; import eva2.tools.EVAERROR; diff --git a/src/eva2/optimization/operator/mutation/MutateESRankMuCMA.java b/src/eva2/optimization/operator/mutation/MutateESRankMuCMA.java index ca0f20d4..6103018d 100644 --- a/src/eva2/optimization/operator/mutation/MutateESRankMuCMA.java +++ b/src/eva2/optimization/operator/mutation/MutateESRankMuCMA.java @@ -7,8 +7,8 @@ import eva2.optimization.individuals.EAIndividualComparator; import eva2.optimization.individuals.InterfaceDataTypeDouble; import eva2.optimization.operator.distancemetric.EuclideanMetric; import eva2.optimization.population.Population; -import eva2.problems.InterfaceOptimizationProblem; import eva2.optimization.strategies.EvolutionStrategies; +import eva2.problems.InterfaceOptimizationProblem; import eva2.tools.EVAERROR; import eva2.tools.Pair; import eva2.tools.math.Jama.EigenvalueDecomposition; diff --git a/src/eva2/optimization/operator/paretofrontmetrics/MetricD1ApproxParetoFront.java b/src/eva2/optimization/operator/paretofrontmetrics/MetricD1ApproxParetoFront.java index 79c3d72b..68fc6ff6 100644 --- a/src/eva2/optimization/operator/paretofrontmetrics/MetricD1ApproxParetoFront.java +++ b/src/eva2/optimization/operator/paretofrontmetrics/MetricD1ApproxParetoFront.java @@ -4,8 +4,8 @@ package eva2.optimization.operator.paretofrontmetrics; import eva2.gui.PropertyFilePath; import eva2.optimization.operator.archiving.ArchivingAllDominating; import eva2.optimization.population.Population; -import eva2.problems.AbstractMultiObjectiveOptimizationProblem; import eva2.optimization.tools.FileTools; +import eva2.problems.AbstractMultiObjectiveOptimizationProblem; import eva2.util.annotation.Description; import java.util.ArrayList; diff --git a/src/eva2/optimization/operator/paretofrontmetrics/MetricD1TrueParetoFront.java b/src/eva2/optimization/operator/paretofrontmetrics/MetricD1TrueParetoFront.java index 4796887f..c38be5c4 100644 --- a/src/eva2/optimization/operator/paretofrontmetrics/MetricD1TrueParetoFront.java +++ b/src/eva2/optimization/operator/paretofrontmetrics/MetricD1TrueParetoFront.java @@ -4,8 +4,8 @@ package eva2.optimization.operator.paretofrontmetrics; import eva2.gui.PropertyFilePath; import eva2.optimization.operator.archiving.ArchivingAllDominating; import eva2.optimization.population.Population; -import eva2.problems.AbstractMultiObjectiveOptimizationProblem; import eva2.optimization.tools.FileTools; +import eva2.problems.AbstractMultiObjectiveOptimizationProblem; import eva2.util.annotation.Description; import java.util.ArrayList; diff --git a/src/eva2/optimization/operator/paretofrontmetrics/MetricErrorRatio.java b/src/eva2/optimization/operator/paretofrontmetrics/MetricErrorRatio.java index a98698a4..324268b3 100644 --- a/src/eva2/optimization/operator/paretofrontmetrics/MetricErrorRatio.java +++ b/src/eva2/optimization/operator/paretofrontmetrics/MetricErrorRatio.java @@ -4,8 +4,8 @@ import eva2.gui.PropertyFilePath; import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.operator.archiving.ArchivingAllDominating; import eva2.optimization.population.Population; -import eva2.problems.AbstractMultiObjectiveOptimizationProblem; import eva2.optimization.tools.FileTools; +import eva2.problems.AbstractMultiObjectiveOptimizationProblem; import eva2.util.annotation.Description; import java.util.ArrayList; diff --git a/src/eva2/optimization/operator/paretofrontmetrics/MetricMaximumParetoFrontError.java b/src/eva2/optimization/operator/paretofrontmetrics/MetricMaximumParetoFrontError.java index 2f29755d..fc1c6766 100644 --- a/src/eva2/optimization/operator/paretofrontmetrics/MetricMaximumParetoFrontError.java +++ b/src/eva2/optimization/operator/paretofrontmetrics/MetricMaximumParetoFrontError.java @@ -4,8 +4,8 @@ package eva2.optimization.operator.paretofrontmetrics; import eva2.gui.PropertyFilePath; import eva2.optimization.operator.archiving.ArchivingAllDominating; import eva2.optimization.population.Population; -import eva2.problems.AbstractMultiObjectiveOptimizationProblem; import eva2.optimization.tools.FileTools; +import eva2.problems.AbstractMultiObjectiveOptimizationProblem; import eva2.util.annotation.Description; import java.util.ArrayList; diff --git a/src/eva2/optimization/operator/paretofrontmetrics/MetricSWithReference.java b/src/eva2/optimization/operator/paretofrontmetrics/MetricSWithReference.java index d5394ff2..f69b1bbd 100644 --- a/src/eva2/optimization/operator/paretofrontmetrics/MetricSWithReference.java +++ b/src/eva2/optimization/operator/paretofrontmetrics/MetricSWithReference.java @@ -6,8 +6,8 @@ import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.individuals.ESIndividualDoubleData; import eva2.optimization.operator.archiving.ArchivingAllDominating; import eva2.optimization.population.Population; -import eva2.problems.AbstractMultiObjectiveOptimizationProblem; import eva2.optimization.tools.FileTools; +import eva2.problems.AbstractMultiObjectiveOptimizationProblem; import eva2.util.annotation.Description; import java.util.ArrayList; diff --git a/src/eva2/optimization/operator/postprocess/PostProcess.java b/src/eva2/optimization/operator/postprocess/PostProcess.java index 0bd3a8cb..2d178840 100644 --- a/src/eva2/optimization/operator/postprocess/PostProcess.java +++ b/src/eva2/optimization/operator/postprocess/PostProcess.java @@ -24,12 +24,12 @@ import eva2.optimization.operator.terminators.EvaluationTerminator; import eva2.optimization.operator.terminators.InterfaceTerminator; import eva2.optimization.population.Population; import eva2.optimization.statistics.InterfaceStatisticsParameters; -import eva2.problems.*; import eva2.optimization.statistics.InterfaceTextListener; import eva2.optimization.strategies.EvolutionStrategies; import eva2.optimization.strategies.GradientDescentAlgorithm; import eva2.optimization.strategies.HillClimbing; import eva2.optimization.strategies.NelderMeadSimplex; +import eva2.problems.*; import eva2.tools.Pair; import eva2.tools.math.Mathematics; diff --git a/src/eva2/optimization/strategies/BinaryScatterSearch.java b/src/eva2/optimization/strategies/BinaryScatterSearch.java index 3560b06a..ab5e05af 100644 --- a/src/eva2/optimization/strategies/BinaryScatterSearch.java +++ b/src/eva2/optimization/strategies/BinaryScatterSearch.java @@ -1,12 +1,12 @@ package eva2.optimization.strategies; import eva2.gui.BeanInspector; -import eva2.optimization.population.InterfacePopulationChangedEventListener; import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.individuals.InterfaceDataTypeBinary; import eva2.optimization.individuals.InterfaceGAIndividual; import eva2.optimization.operator.crossover.*; import eva2.optimization.operator.distancemetric.GenotypeMetricBitSet; +import eva2.optimization.population.InterfacePopulationChangedEventListener; import eva2.optimization.population.InterfaceSolutionSet; import eva2.optimization.population.Population; import eva2.optimization.population.SolutionSet; diff --git a/src/eva2/optimization/strategies/ClusterBasedNichingEA.java b/src/eva2/optimization/strategies/ClusterBasedNichingEA.java index 2fb2b343..afde27dd 100644 --- a/src/eva2/optimization/strategies/ClusterBasedNichingEA.java +++ b/src/eva2/optimization/strategies/ClusterBasedNichingEA.java @@ -5,7 +5,6 @@ import eva2.gui.editor.GenericObjectEditor; import eva2.gui.plot.GraphPointSet; import eva2.gui.plot.Plot; import eva2.gui.plot.TopoPlot; -import eva2.optimization.population.InterfacePopulationChangedEventListener; import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.individuals.EAIndividualComparator; import eva2.optimization.individuals.InterfaceDataTypeDouble; @@ -19,6 +18,7 @@ import eva2.optimization.operator.paramcontrol.ParamAdaption; import eva2.optimization.operator.paramcontrol.ParameterControlManager; import eva2.optimization.operator.terminators.HistoryConvergenceTerminator; import eva2.optimization.operator.terminators.InterfaceTerminator; +import eva2.optimization.population.InterfacePopulationChangedEventListener; import eva2.optimization.population.Population; import eva2.optimization.population.PopulationInterface; import eva2.optimization.population.SolutionSet; diff --git a/src/eva2/optimization/strategies/ClusteringHillClimbing.java b/src/eva2/optimization/strategies/ClusteringHillClimbing.java index 99bcf73d..4daaf7b3 100644 --- a/src/eva2/optimization/strategies/ClusteringHillClimbing.java +++ b/src/eva2/optimization/strategies/ClusteringHillClimbing.java @@ -2,18 +2,15 @@ package eva2.optimization.strategies; import eva2.gui.editor.GenericObjectEditor; import eva2.optimization.enums.PostProcessMethod; -import eva2.optimization.population.InterfacePopulationChangedEventListener; import eva2.optimization.operator.mutation.MutateESFixedStepSize; import eva2.optimization.operator.postprocess.PostProcess; -import eva2.optimization.population.InterfaceSolutionSet; -import eva2.optimization.population.Population; -import eva2.optimization.population.PopulationInterface; -import eva2.optimization.population.SolutionSet; +import eva2.optimization.population.*; import eva2.problems.AbstractOptimizationProblem; import eva2.problems.InterfaceAdditionalPopulationInformer; import eva2.problems.InterfaceOptimizationProblem; import eva2.tools.Pair; import eva2.util.annotation.Description; +import eva2.util.annotation.Parameter; import java.io.Serializable; @@ -200,7 +197,6 @@ public class ClusteringHillClimbing extends AbstractOptimizer implements Interfa tmp.addPopulation(population); tmp.setFunctionCalls(population.getFunctionCalls()); tmp.setGeneration(population.getGeneration()); -// tmp = PostProcessInterim.clusterBest(tmp, sigma, 0, PostProcessInterim.KEEP_LONERS, PostProcessInterim.BEST_ONLY); return new SolutionSet(population, tmp); } @@ -236,14 +232,11 @@ public class ClusteringHillClimbing extends AbstractOptimizer implements Interfa /** * @param hcEvalCycle the hcEvalCycle to set */ + @Parameter(description = "The number of evaluations between two clustering/adaption steps.") public void setEvalCycle(int hcEvalCycle) { this.hcEvalCycle = hcEvalCycle; } - public String evalCycleTipText() { - return "The number of evaluations between two clustering/adaption steps."; - } - /** * @return the initialPopSize */ @@ -254,14 +247,11 @@ public class ClusteringHillClimbing extends AbstractOptimizer implements Interfa /** * @param initialPopSize the initialPopSize to set */ + @Parameter(description = "Population size at the start and at reinitialization times.") public void setInitialPopSize(int initialPopSize) { this.initialPopSize = initialPopSize; } - public String initialPopSizeTipText() { - return "Population size at the start and at reinitialization times."; - } - /** * @return the sigma */ @@ -272,14 +262,11 @@ public class ClusteringHillClimbing extends AbstractOptimizer implements Interfa /** * @param sigma the sigma to set */ + @Parameter(description = "Defines the sigma distance parameter for density based clustering.") public void setSigmaClust(double sigma) { this.sigmaClust = sigma; } - public String sigmaClustTipText() { - return "Defines the sigma distance parameter for density based clustering."; - } - /** * @return the notifyGuiEvery */ @@ -290,14 +277,11 @@ public class ClusteringHillClimbing extends AbstractOptimizer implements Interfa /** * @param notifyGuiEvery the notifyGuiEvery to set */ + @Parameter(description = "How often to notify the GUI to plot the fitness etc.") public void setNotifyGuiEvery(int notifyGuiEvery) { this.notifyGuiEvery = notifyGuiEvery; } - public String notifyGuiEveryTipText() { - return "How often to notify the GUI to plot the fitness etc."; - } - /** * @return the minImprovement */ @@ -308,14 +292,11 @@ public class ClusteringHillClimbing extends AbstractOptimizer implements Interfa /** * @param minImprovement the minImprovement to set */ + @Parameter(description = "Improvement threshold below which the mutation step size is reduced or the population reinitialized.") public void setMinImprovement(double minImprovement) { this.minImprovement = minImprovement; } - public String minImprovementTipText() { - return "Improvement threshold below which the mutation step size is reduced or the population reinitialized."; - } - /** * @return the reinitForStepSize */ @@ -326,14 +307,11 @@ public class ClusteringHillClimbing extends AbstractOptimizer implements Interfa /** * @param reinitForStepSize the reinitForStepSize to set */ + @Parameter(description = "Threshold for the mutation step size below which the population is seen as converged and reinitialized.") public void setStepSizeThreshold(double reinitForStepSize) { this.stepSizeThreshold = reinitForStepSize; } - public String stepSizeThresholdTipText() { - return "Threshold for the mutation step size below which the population is seen as converged and reinitialized."; - } - /** * @return the initialStepSize */ @@ -344,28 +322,22 @@ public class ClusteringHillClimbing extends AbstractOptimizer implements Interfa /** * @param initialStepSize the initialStepSize to set */ + @Parameter(description = "Initial mutation step size for hill climbing, relative to the problem range.") public void setStepSizeInitial(double initialStepSize) { this.initialStepSize = initialStepSize; } - public String stepSizeInitialTipText() { - return "Initial mutation step size for hill climbing, relative to the problem range."; - } - public PostProcessMethod getLocalSearchMethod() { return localSearchMethod; } + @Parameter(description = "Set the method to be used for the hill climbing as local search") public void setLocalSearchMethod(PostProcessMethod localSearchMethod) { this.localSearchMethod = localSearchMethod; GenericObjectEditor.setShowProperty(this.getClass(), "stepSizeInitial", localSearchMethod == PostProcessMethod.hillClimber); GenericObjectEditor.setShowProperty(this.getClass(), "stepSizeThreshold", localSearchMethod == PostProcessMethod.hillClimber); } - public String localSearchMethodTipText() { - return "Set the method to be used for the hill climbing as local search"; - } - @Override public String[] getAdditionalDataHeader() { return new String[]{"numIndies", "sigma", "numArchived", "archivedMeanDist"}; @@ -385,12 +357,9 @@ public class ClusteringHillClimbing extends AbstractOptimizer implements Interfa return doReinitialization; } + @Parameter(description = "Activate reinitialization if no improvement was achieved.") public void setDoReinitialization(boolean doReinitialization) { this.doReinitialization = doReinitialization; GenericObjectEditor.setShowProperty(this.getClass(), "minImprovement", doReinitialization); } - - public String doReinitializationTipText() { - return "Activate reinitialization if no improvement was achieved."; - } } diff --git a/src/eva2/optimization/strategies/EsDpiNiching.java b/src/eva2/optimization/strategies/EsDpiNiching.java index dc702f83..3a41525f 100644 --- a/src/eva2/optimization/strategies/EsDpiNiching.java +++ b/src/eva2/optimization/strategies/EsDpiNiching.java @@ -2,7 +2,6 @@ package eva2.optimization.strategies; import eva2.gui.editor.GenericObjectEditor; import eva2.gui.plot.TopoPlot; -import eva2.optimization.population.InterfacePopulationChangedEventListener; import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.individuals.InterfaceDataTypeDouble; import eva2.optimization.operator.cluster.ClusteringDynPeakIdent; @@ -15,10 +14,7 @@ import eva2.optimization.operator.paramcontrol.ParamAdaption; import eva2.optimization.operator.paramcontrol.ParameterControlManager; import eva2.optimization.operator.selection.*; import eva2.optimization.operator.terminators.HistoryConvergenceTerminator; -import eva2.optimization.population.InterfaceSolutionSet; -import eva2.optimization.population.Population; -import eva2.optimization.population.PopulationInterface; -import eva2.optimization.population.SolutionSet; +import eva2.optimization.population.*; import eva2.problems.Interface2DBorderProblem; import eva2.problems.InterfaceAdditionalPopulationInformer; import eva2.problems.InterfaceOptimizationProblem; diff --git a/src/eva2/optimization/strategies/EvolutionStrategyIPOP.java b/src/eva2/optimization/strategies/EvolutionStrategyIPOP.java index 7fbe0622..a9c883ce 100644 --- a/src/eva2/optimization/strategies/EvolutionStrategyIPOP.java +++ b/src/eva2/optimization/strategies/EvolutionStrategyIPOP.java @@ -1,7 +1,6 @@ package eva2.optimization.strategies; import eva2.gui.editor.GenericObjectEditor; -import eva2.optimization.population.InterfacePopulationChangedEventListener; import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.operator.mutation.MutateESRankMuCMA; import eva2.optimization.operator.terminators.FitnessConvergenceTerminator; @@ -9,6 +8,7 @@ import eva2.optimization.operator.terminators.InterfaceTerminator; import eva2.optimization.operator.terminators.PopulationMeasureTerminator.ChangeTypeEnum; import eva2.optimization.operator.terminators.PopulationMeasureTerminator.DirectionTypeEnum; import eva2.optimization.operator.terminators.PopulationMeasureTerminator.StagnationTypeEnum; +import eva2.optimization.population.InterfacePopulationChangedEventListener; import eva2.optimization.population.Population; import eva2.optimization.population.PopulationInterface; import eva2.optimization.population.SolutionSet; diff --git a/src/eva2/optimization/strategies/EvolutionaryProgramming.java b/src/eva2/optimization/strategies/EvolutionaryProgramming.java index 9887c5d1..f92ec86f 100644 --- a/src/eva2/optimization/strategies/EvolutionaryProgramming.java +++ b/src/eva2/optimization/strategies/EvolutionaryProgramming.java @@ -1,9 +1,9 @@ package eva2.optimization.strategies; -import eva2.optimization.population.InterfacePopulationChangedEventListener; import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.operator.selection.InterfaceSelection; import eva2.optimization.operator.selection.SelectEPTournaments; +import eva2.optimization.population.InterfacePopulationChangedEventListener; import eva2.optimization.population.InterfaceSolutionSet; import eva2.optimization.population.Population; import eva2.optimization.population.SolutionSet; diff --git a/src/eva2/optimization/strategies/IslandModelEA.java b/src/eva2/optimization/strategies/IslandModelEA.java index dc2cbe18..83eb2c29 100644 --- a/src/eva2/optimization/strategies/IslandModelEA.java +++ b/src/eva2/optimization/strategies/IslandModelEA.java @@ -1,9 +1,9 @@ package eva2.optimization.strategies; import eva2.gui.plot.Plot; -import eva2.optimization.population.InterfacePopulationChangedEventListener; import eva2.optimization.individuals.ESIndividualDoubleData; import eva2.optimization.operator.migration.*; +import eva2.optimization.population.InterfacePopulationChangedEventListener; import eva2.optimization.population.InterfaceSolutionSet; import eva2.optimization.population.Population; import eva2.optimization.population.SolutionSet; diff --git a/src/eva2/optimization/strategies/LTGA.java b/src/eva2/optimization/strategies/LTGA.java index 56fe051c..5d2b70cc 100644 --- a/src/eva2/optimization/strategies/LTGA.java +++ b/src/eva2/optimization/strategies/LTGA.java @@ -1,10 +1,10 @@ package eva2.optimization.strategies; import eva2.gui.BeanInspector; -import eva2.optimization.population.InterfacePopulationChangedEventListener; import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.individuals.InterfaceDataTypeBinary; import eva2.optimization.individuals.InterfaceGAIndividual; +import eva2.optimization.population.InterfacePopulationChangedEventListener; import eva2.optimization.population.InterfaceSolutionSet; import eva2.optimization.population.Population; import eva2.optimization.population.SolutionSet; diff --git a/src/eva2/optimization/strategies/MLTGA.java b/src/eva2/optimization/strategies/MLTGA.java index ddd45ae2..87e7be19 100644 --- a/src/eva2/optimization/strategies/MLTGA.java +++ b/src/eva2/optimization/strategies/MLTGA.java @@ -1,10 +1,10 @@ package eva2.optimization.strategies; import eva2.gui.BeanInspector; -import eva2.optimization.population.InterfacePopulationChangedEventListener; import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.individuals.InterfaceDataTypeBinary; import eva2.optimization.individuals.InterfaceGAIndividual; +import eva2.optimization.population.InterfacePopulationChangedEventListener; import eva2.optimization.population.InterfaceSolutionSet; import eva2.optimization.population.Population; import eva2.optimization.population.SolutionSet; diff --git a/src/eva2/optimization/strategies/MemeticAlgorithm.java b/src/eva2/optimization/strategies/MemeticAlgorithm.java index ead048ab..3c2b08e1 100644 --- a/src/eva2/optimization/strategies/MemeticAlgorithm.java +++ b/src/eva2/optimization/strategies/MemeticAlgorithm.java @@ -1,9 +1,9 @@ package eva2.optimization.strategies; -import eva2.optimization.population.InterfacePopulationChangedEventListener; import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.operator.selection.InterfaceSelection; import eva2.optimization.operator.selection.SelectBestIndividuals; +import eva2.optimization.population.InterfacePopulationChangedEventListener; import eva2.optimization.population.InterfaceSolutionSet; import eva2.optimization.population.Population; import eva2.optimization.population.SolutionSet; diff --git a/src/eva2/optimization/strategies/MultiObjectiveEA.java b/src/eva2/optimization/strategies/MultiObjectiveEA.java index 6a8e9791..25f64e39 100644 --- a/src/eva2/optimization/strategies/MultiObjectiveEA.java +++ b/src/eva2/optimization/strategies/MultiObjectiveEA.java @@ -1,12 +1,12 @@ package eva2.optimization.strategies; -import eva2.optimization.population.InterfacePopulationChangedEventListener; import eva2.optimization.individuals.EAIndividualComparator; import eva2.optimization.operator.archiving.ArchivingNSGAII; import eva2.optimization.operator.archiving.InformationRetrievalInserting; import eva2.optimization.operator.archiving.InterfaceArchiving; import eva2.optimization.operator.archiving.InterfaceInformationRetrieval; import eva2.optimization.operator.selection.SelectMONonDominated; +import eva2.optimization.population.InterfacePopulationChangedEventListener; import eva2.optimization.population.InterfaceSolutionSet; import eva2.optimization.population.Population; import eva2.optimization.population.SolutionSet; diff --git a/src/eva2/optimization/strategies/NelderMeadSimplex.java b/src/eva2/optimization/strategies/NelderMeadSimplex.java index 3b0f72e5..7f5348bd 100644 --- a/src/eva2/optimization/strategies/NelderMeadSimplex.java +++ b/src/eva2/optimization/strategies/NelderMeadSimplex.java @@ -1,9 +1,9 @@ package eva2.optimization.strategies; import eva2.gui.BeanInspector; -import eva2.optimization.population.InterfacePopulationChangedEventListener; import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.individuals.InterfaceDataTypeDouble; +import eva2.optimization.population.InterfacePopulationChangedEventListener; import eva2.optimization.population.InterfaceSolutionSet; import eva2.optimization.population.Population; import eva2.optimization.population.SolutionSet; diff --git a/src/eva2/optimization/strategies/ParticleSwarmOptimization.java b/src/eva2/optimization/strategies/ParticleSwarmOptimization.java index 3aebd6bc..a375d1b1 100644 --- a/src/eva2/optimization/strategies/ParticleSwarmOptimization.java +++ b/src/eva2/optimization/strategies/ParticleSwarmOptimization.java @@ -15,7 +15,9 @@ import eva2.optimization.population.InterfaceSolutionSet; import eva2.optimization.population.Population; import eva2.optimization.population.PopulationInterface; import eva2.optimization.population.SolutionSet; -import eva2.problems.*; +import eva2.problems.Interface2DBorderProblem; +import eva2.problems.InterfaceAdditionalPopulationInformer; +import eva2.problems.InterfaceProblemDouble; import eva2.tools.chart2d.DPoint; import eva2.tools.chart2d.DPointSet; import eva2.tools.math.Jama.Matrix; diff --git a/src/eva2/optimization/strategies/PopulationBasedIncrementalLearning.java b/src/eva2/optimization/strategies/PopulationBasedIncrementalLearning.java index 363ac42b..0c63b45a 100644 --- a/src/eva2/optimization/strategies/PopulationBasedIncrementalLearning.java +++ b/src/eva2/optimization/strategies/PopulationBasedIncrementalLearning.java @@ -1,14 +1,10 @@ package eva2.optimization.strategies; -import eva2.optimization.population.InterfacePopulationChangedEventListener; import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.individuals.InterfaceGAIndividual; import eva2.optimization.operator.selection.InterfaceSelection; import eva2.optimization.operator.selection.SelectBestIndividuals; -import eva2.optimization.population.InterfaceSolutionSet; -import eva2.optimization.population.PBILPopulation; -import eva2.optimization.population.Population; -import eva2.optimization.population.SolutionSet; +import eva2.optimization.population.*; import eva2.problems.AbstractOptimizationProblem; import eva2.problems.B1Problem; import eva2.problems.InterfaceOptimizationProblem; diff --git a/src/eva2/optimization/strategies/Tribes.java b/src/eva2/optimization/strategies/Tribes.java index 371107d8..6d1cf5d5 100644 --- a/src/eva2/optimization/strategies/Tribes.java +++ b/src/eva2/optimization/strategies/Tribes.java @@ -2,19 +2,19 @@ package eva2.optimization.strategies; import eva2.gui.editor.GenericObjectEditor; import eva2.gui.plot.Plot; -import eva2.optimization.population.InterfacePopulationChangedEventListener; import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.individuals.InterfaceDataTypeDouble; +import eva2.optimization.population.InterfacePopulationChangedEventListener; import eva2.optimization.population.InterfaceSolutionSet; import eva2.optimization.population.Population; import eva2.optimization.population.SolutionSet; -import eva2.problems.AbstractOptimizationProblem; -import eva2.problems.InterfaceHasInitRange; -import eva2.problems.InterfaceOptimizationProblem; import eva2.optimization.strategies.tribes.TribesExplorer; import eva2.optimization.strategies.tribes.TribesParam; import eva2.optimization.strategies.tribes.TribesPosition; import eva2.optimization.strategies.tribes.TribesSwarm; +import eva2.problems.AbstractOptimizationProblem; +import eva2.problems.InterfaceHasInitRange; +import eva2.problems.InterfaceOptimizationProblem; import eva2.util.annotation.Description; import java.util.Iterator; diff --git a/src/eva2/optimization/strategies/tribes/Tribe.java b/src/eva2/optimization/strategies/tribes/Tribe.java index a748de57..cc74cf42 100644 --- a/src/eva2/optimization/strategies/tribes/Tribe.java +++ b/src/eva2/optimization/strategies/tribes/Tribe.java @@ -1,7 +1,7 @@ package eva2.optimization.strategies.tribes; -import eva2.problems.InterfaceOptimizationProblem; import eva2.optimization.strategies.Tribes; +import eva2.problems.InterfaceOptimizationProblem; import eva2.tools.math.RNG; diff --git a/src/eva2/optimization/strategies/tribes/TribesExplorer.java b/src/eva2/optimization/strategies/tribes/TribesExplorer.java index da6f85c8..f4a3991a 100644 --- a/src/eva2/optimization/strategies/tribes/TribesExplorer.java +++ b/src/eva2/optimization/strategies/tribes/TribesExplorer.java @@ -3,8 +3,8 @@ package eva2.optimization.strategies.tribes; import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.individuals.InterfaceDataTypeDouble; import eva2.optimization.population.Population; -import eva2.problems.InterfaceOptimizationProblem; import eva2.optimization.strategies.Tribes; +import eva2.problems.InterfaceOptimizationProblem; import eva2.tools.math.RNG; public class TribesExplorer extends AbstractEAIndividual implements InterfaceDataTypeDouble { diff --git a/src/eva2/optimization/strategies/tribes/TribesSwarm.java b/src/eva2/optimization/strategies/tribes/TribesSwarm.java index ce087cb0..b3fbb616 100644 --- a/src/eva2/optimization/strategies/tribes/TribesSwarm.java +++ b/src/eva2/optimization/strategies/tribes/TribesSwarm.java @@ -1,8 +1,8 @@ package eva2.optimization.strategies.tribes; import eva2.optimization.population.Population; -import eva2.problems.InterfaceOptimizationProblem; import eva2.optimization.strategies.Tribes; +import eva2.problems.InterfaceOptimizationProblem; import eva2.tools.math.RNG; import java.util.ArrayList; diff --git a/src/eva2/optimization/tools/FileTools.java b/src/eva2/optimization/tools/FileTools.java index 8891328f..4a2723a2 100644 --- a/src/eva2/optimization/tools/FileTools.java +++ b/src/eva2/optimization/tools/FileTools.java @@ -5,8 +5,8 @@ import eva2.tools.BasicResourceLoader; import eva2.tools.StringTools; import org.yaml.snakeyaml.Yaml; -import javax.swing.filechooser.FileFilter; import javax.swing.*; +import javax.swing.filechooser.FileFilter; import java.awt.*; import java.io.*; import java.util.ArrayList; diff --git a/src/eva2/problems/AbstractOptimizationProblem.java b/src/eva2/problems/AbstractOptimizationProblem.java index ec6efb4e..cb855e66 100644 --- a/src/eva2/problems/AbstractOptimizationProblem.java +++ b/src/eva2/problems/AbstractOptimizationProblem.java @@ -276,11 +276,13 @@ public abstract class AbstractOptimizationProblem implements InterfaceOptimizati */ @Override public String[] getAdditionalDataInfo() { - String[] info = null; + String[] info; if (this instanceof InterfaceInterestingHistogram) { - info = new String[]{"Representation of the current best individual", - "Fitness histogram of the current population", - "Fitness threshold based score of the current population"}; + info = new String[]{ + "Representation of the current best individual", + "Fitness histogram of the current population", + "Fitness threshold based score of the current population" + }; } else { info = new String[]{"Representation of the current best individual"}; } diff --git a/src/eva2/problems/AbstractProblemDouble.java b/src/eva2/problems/AbstractProblemDouble.java index 2740de89..3d597b2a 100644 --- a/src/eva2/problems/AbstractProblemDouble.java +++ b/src/eva2/problems/AbstractProblemDouble.java @@ -516,8 +516,7 @@ public abstract class AbstractProblemDouble extends AbstractOptimizationProblem public String[] getAdditionalDataHeader() { String[] superHeader = super.getAdditionalDataHeader(); if (isWithConstraints()) { - return ToolBox.appendArrays(superHeader, new String[]{"rawFit", - "numViol", "sumViol"}); + return ToolBox.appendArrays(superHeader, new String[]{"rawFit","numViol", "sumViol"}); } else { return superHeader; } @@ -527,13 +526,11 @@ public abstract class AbstractProblemDouble extends AbstractOptimizationProblem public String[] getAdditionalDataInfo() { String[] superInfo = super.getAdditionalDataInfo(); if (isWithConstraints()) { - return ToolBox - .appendArrays( - superInfo, - new String[]{ - "Raw fitness (unpenalized) of the current best individual", - "The number of constraints violated by the current best individual", - "The sum of constraint violations of the current best individual"}); + return ToolBox.appendArrays(superInfo,new String[]{ + "Raw fitness (unpenalized) of the current best individual", + "The number of constraints violated by the current best individual", + "The sum of constraint violations of the current best individual"} + ); } else { return superInfo; } diff --git a/src/eva2/problems/AbstractProblemDoubleOffset.java b/src/eva2/problems/AbstractProblemDoubleOffset.java index 67613a15..7cc55ff6 100644 --- a/src/eva2/problems/AbstractProblemDoubleOffset.java +++ b/src/eva2/problems/AbstractProblemDoubleOffset.java @@ -1,5 +1,7 @@ package eva2.problems; +import eva2.util.annotation.Parameter; + /** * */ @@ -48,6 +50,7 @@ public abstract class AbstractProblemDoubleOffset extends AbstractProblemDouble * * @param XOffset The offset for the decision variables. */ + @Parameter(description = "Choose an offset for the decision variables.") public void setXOffset(double XOffset) { this.xOffset = XOffset; } @@ -56,16 +59,13 @@ public abstract class AbstractProblemDoubleOffset extends AbstractProblemDouble return this.xOffset; } - public String XOffsetTipText() { - return "Choose an offset for the decision variables."; - } - /** * This method allows you to set/get the offset for the * objective value. * * @param YOffset The offset for the objective value. */ + @Parameter(description = "Choose an offset for the objective value.") public void setYOffset(double YOffset) { this.yOffset = YOffset; } @@ -74,10 +74,6 @@ public abstract class AbstractProblemDoubleOffset extends AbstractProblemDouble return this.yOffset; } - public String YOffsetTipText() { - return "Choose an offset for the objective value."; - } - /** * Length of the x vector at is to be optimized * diff --git a/src/eva2/problems/F8Problem.java b/src/eva2/problems/F8Problem.java index 1ae67961..7c02ab73 100644 --- a/src/eva2/problems/F8Problem.java +++ b/src/eva2/problems/F8Problem.java @@ -150,7 +150,15 @@ public class F8Problem extends AbstractProblemDoubleOffset public String[] getAdditionalDataHeader() { String[] superHd = super.getAdditionalDataHeader(); return ToolBox.appendArrays(new String[]{"numOptimaFound", "maxPeakRatio"}, superHd); -// return "#Optima found \tMaximum Peak Ratio \t" + super.getAdditionalDataHeader(population); + } + + @Override + public final String[] getAdditionalDataInfo() { + String[] superHd = super.getAdditionalDataInfo(); + return ToolBox.appendArrays(new String[]{ + "The number of optima found", + "Ratio of maximum peaks" + }, superHd); } @Override diff --git a/src/eva2/problems/InterfaceAdditionalPopulationInformer.java b/src/eva2/problems/InterfaceAdditionalPopulationInformer.java index 7f73e140..22671f17 100644 --- a/src/eva2/problems/InterfaceAdditionalPopulationInformer.java +++ b/src/eva2/problems/InterfaceAdditionalPopulationInformer.java @@ -7,8 +7,6 @@ import eva2.optimization.population.PopulationInterface; * This may be statistics depending on specific optimization methods or a specific application * problem. * For every additional field, a field name (header) and a value at every iteration must be provided. - * - * @author mkron */ public interface InterfaceAdditionalPopulationInformer { /** diff --git a/src/eva2/problems/PSymbolicRegression.java b/src/eva2/problems/PSymbolicRegression.java index 06de4bdf..db8aa6ac 100644 --- a/src/eva2/problems/PSymbolicRegression.java +++ b/src/eva2/problems/PSymbolicRegression.java @@ -5,9 +5,9 @@ import eva2.optimization.individuals.*; import eva2.optimization.individuals.codings.gp.*; import eva2.optimization.population.Population; import eva2.optimization.population.PopulationInterface; +import eva2.optimization.strategies.InterfaceOptimizer; import eva2.problems.regression.InterfaceRegressionFunction; import eva2.problems.regression.RFKoza_GPI_7_3; -import eva2.optimization.strategies.InterfaceOptimizer; import eva2.tools.EVAERROR; import eva2.tools.ToolBox; import eva2.tools.math.RNG; diff --git a/src/eva2/problems/SimpleProblemWrapper.java b/src/eva2/problems/SimpleProblemWrapper.java index 494f65d9..5529b282 100644 --- a/src/eva2/problems/SimpleProblemWrapper.java +++ b/src/eva2/problems/SimpleProblemWrapper.java @@ -6,12 +6,12 @@ import eva2.gui.plot.Plot; import eva2.optimization.individuals.*; import eva2.optimization.population.Population; import eva2.optimization.strategies.InterfaceOptimizer; -import eva2.tools.math.RNG; -import eva2.util.annotation.Description; import eva2.problems.simple.InterfaceSimpleProblem; import eva2.problems.simple.SimpleF1; import eva2.problems.simple.SimpleProblemBinary; import eva2.problems.simple.SimpleProblemDouble; +import eva2.tools.math.RNG; +import eva2.util.annotation.Description; import eva2.util.annotation.Parameter; import java.util.BitSet;