diff --git a/src/eva2/OptimizerFactory.java b/src/eva2/OptimizerFactory.java index 0cf26e83..2b86a1e7 100644 --- a/src/eva2/OptimizerFactory.java +++ b/src/eva2/OptimizerFactory.java @@ -5,7 +5,7 @@ import eva2.optimization.enums.MutateESCrossoverTypeEnum; import eva2.optimization.enums.PSOTopologyEnum; import eva2.optimization.enums.PostProcessMethod; import eva2.optimization.go.InterfacePopulationChangedEventListener; -import eva2.optimization.go.InterfaceTerminator; +import eva2.optimization.operator.terminators.InterfaceTerminator; import eva2.optimization.individuals.*; import eva2.optimization.modules.OptimizationParameters; import eva2.optimization.operator.archiving.ArchivingNSGAII; diff --git a/src/eva2/OptimizerRunnable.java b/src/eva2/OptimizerRunnable.java index dfafed68..62946ada 100644 --- a/src/eva2/OptimizerRunnable.java +++ b/src/eva2/OptimizerRunnable.java @@ -2,7 +2,7 @@ package eva2; import eva2.optimization.OptimizationStateListener; import eva2.optimization.go.InterfaceOptimizationParameters; -import eva2.optimization.go.InterfaceTerminator; +import eva2.optimization.operator.terminators.InterfaceTerminator; import eva2.optimization.individuals.IndividualInterface; import eva2.optimization.individuals.InterfaceDataTypeBinary; import eva2.optimization.individuals.InterfaceDataTypeDouble; diff --git a/src/eva2/gui/BeanInspector.java b/src/eva2/gui/BeanInspector.java index e241effd..51593522 100644 --- a/src/eva2/gui/BeanInspector.java +++ b/src/eva2/gui/BeanInspector.java @@ -637,7 +637,6 @@ public class BeanInspector { } else { Description description = obj.getClass().getAnnotation(Description.class); if (description != null) { - ; infoBf.append("\t"); infoBf.append(description.text()); } @@ -667,18 +666,18 @@ public class BeanInspector { e.printStackTrace(); return null; } - PropertyDescriptor[] m_Properties = bi.getPropertyDescriptors(); + PropertyDescriptor[] propertyDescriptors = bi.getPropertyDescriptors(); ArrayList memberInfoList = new ArrayList(); - for (int i = 0; i < m_Properties.length; i++) { - if (m_Properties[i].isExpert()) { + for (int i = 0; i < propertyDescriptors.length; i++) { + if (propertyDescriptors[i].isExpert()) { continue; } - String name = m_Properties[i].getDisplayName(); + String name = propertyDescriptors[i].getDisplayName(); - Method getter = m_Properties[i].getReadMethod(); - Method setter = m_Properties[i].getWriteMethod(); + Method getter = propertyDescriptors[i].getReadMethod(); + Method setter = propertyDescriptors[i].getWriteMethod(); // Only display read/write properties. if (getter == null || setter == null) { continue; @@ -691,7 +690,7 @@ public class BeanInspector { // Don't try to set null values: if (value == null) { // If it's a user-defined property we give a warning. - String getterClass = m_Properties[i].getReadMethod().getDeclaringClass().getName(); + String getterClass = propertyDescriptors[i].getReadMethod().getDeclaringClass().getName(); if (getterClass.indexOf("java.") != 0) { System.err.println("Warning: Property \"" + name + "\" has null initial value. Skipping."); } @@ -704,7 +703,7 @@ public class BeanInspector { memberInfoBf.append("\tType: "); - if (m_Properties[i].isHidden()) { + if (propertyDescriptors[i].isHidden()) { memberInfoBf.append("restricted, "); } else { memberInfoBf.append("common, "); @@ -730,6 +729,7 @@ public class BeanInspector { memberInfoBf.append(toString(value)); } + // now look for a TipText method for this property Method tipTextMethod = hasMethod(obj, name + "TipText", null); if (tipTextMethod == null) { @@ -1030,6 +1030,7 @@ public class BeanInspector { public static String getToolTipText(String name, MethodDescriptor[] methods, Object target, boolean stripToolTipToFirstPoint, int toHTMLLen) { String result = ""; String tipName = name + "TipText"; + for (int j = 0; j < methods.length; j++) { String mname = methods[j].getDisplayName(); Method meth = methods[j].getMethod(); @@ -1047,11 +1048,17 @@ public class BeanInspector { } } } catch (Exception ex) { + } break; } } } // end for looking for tiptext + + if(result.isEmpty()) { + LOGGER.fine(String.format("No ToolTip for %s.%s available.", target.getClass().getName(), name)); + } + if (toHTMLLen > 0) { return StringTools.toHTML(result, toHTMLLen); } else { diff --git a/src/eva2/gui/Main.java b/src/eva2/gui/Main.java index 82340123..79bdc8af 100644 --- a/src/eva2/gui/Main.java +++ b/src/eva2/gui/Main.java @@ -275,7 +275,7 @@ public class Main extends JFrame implements OptimizationStateListener { } private void preloadClasses() { - ClassPreloader cp = new ClassPreloader("eva2.optimization.strategies.InterfaceOptimizer", "eva2.optimization.problems.InterfaceOptimizationProblem", "eva2.optimization.go.InterfaceTerminator"); + ClassPreloader cp = new ClassPreloader("eva2.optimization.strategies.InterfaceOptimizer", "eva2.optimization.problems.InterfaceOptimizationProblem", "eva2.optimization.operator.terminators.InterfaceTerminator"); new Thread(cp).start(); } diff --git a/src/eva2/gui/PropertyEditorProvider.java b/src/eva2/gui/PropertyEditorProvider.java index 534c145f..3b86e684 100644 --- a/src/eva2/gui/PropertyEditorProvider.java +++ b/src/eva2/gui/PropertyEditorProvider.java @@ -1,7 +1,7 @@ package eva2.gui; import eva2.gui.editor.*; -import eva2.optimization.go.InterfaceTerminator; +import eva2.optimization.operator.terminators.InterfaceTerminator; import eva2.optimization.individuals.codings.gp.GPArea; import eva2.tools.SelectedTag; import eva2.tools.StringSelection; diff --git a/src/eva2/optimization/go/InterfaceOptimizationParameters.java b/src/eva2/optimization/go/InterfaceOptimizationParameters.java index ca6ef15e..34feb10a 100644 --- a/src/eva2/optimization/go/InterfaceOptimizationParameters.java +++ b/src/eva2/optimization/go/InterfaceOptimizationParameters.java @@ -1,6 +1,7 @@ package eva2.optimization.go; import eva2.optimization.operator.postprocess.InterfacePostProcessParams; +import eva2.optimization.operator.terminators.InterfaceTerminator; import eva2.optimization.problems.InterfaceAdditionalPopulationInformer; import eva2.optimization.problems.InterfaceOptimizationProblem; import eva2.optimization.strategies.InterfaceOptimizer; diff --git a/src/eva2/optimization/mocco/MOCCOParameterizeGDF.java b/src/eva2/optimization/mocco/MOCCOParameterizeGDF.java index b925ed6a..f7377238 100644 --- a/src/eva2/optimization/mocco/MOCCOParameterizeGDF.java +++ b/src/eva2/optimization/mocco/MOCCOParameterizeGDF.java @@ -4,7 +4,7 @@ package eva2.optimization.mocco; import eva2.gui.PropertyDoubleArray; import eva2.gui.PropertyEditorProvider; import eva2.gui.editor.GenericObjectEditor; -import eva2.optimization.go.InterfaceTerminator; +import eva2.optimization.operator.terminators.InterfaceTerminator; import eva2.optimization.go.MOCCOStandalone; import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.operator.moso.MOSOWeightedFitness; diff --git a/src/eva2/optimization/mocco/MOCCOParameterizeMO.java b/src/eva2/optimization/mocco/MOCCOParameterizeMO.java index ffeea2f3..c46de1a0 100644 --- a/src/eva2/optimization/mocco/MOCCOParameterizeMO.java +++ b/src/eva2/optimization/mocco/MOCCOParameterizeMO.java @@ -3,7 +3,7 @@ package eva2.optimization.mocco; import eva2.gui.PropertyEditorProvider; import eva2.gui.editor.GenericObjectEditor; -import eva2.optimization.go.InterfaceTerminator; +import eva2.optimization.operator.terminators.InterfaceTerminator; import eva2.optimization.go.MOCCOStandalone; import eva2.optimization.population.Population; import eva2.optimization.strategies.GeneticAlgorithm; diff --git a/src/eva2/optimization/mocco/MOCCOParameterizeRefPoint.java b/src/eva2/optimization/mocco/MOCCOParameterizeRefPoint.java index bec9cc00..7121f7c8 100644 --- a/src/eva2/optimization/mocco/MOCCOParameterizeRefPoint.java +++ b/src/eva2/optimization/mocco/MOCCOParameterizeRefPoint.java @@ -3,7 +3,7 @@ package eva2.optimization.mocco; import eva2.gui.PropertyEditorProvider; import eva2.gui.editor.GenericObjectEditor; -import eva2.optimization.go.InterfaceTerminator; +import eva2.optimization.operator.terminators.InterfaceTerminator; import eva2.optimization.go.MOCCOStandalone; import eva2.optimization.operator.migration.SOBestMigration; import eva2.optimization.operator.moso.MOSOLpMetric; diff --git a/src/eva2/optimization/mocco/MOCCOParameterizeSO.java b/src/eva2/optimization/mocco/MOCCOParameterizeSO.java index 6fdbc0f2..6629ff55 100644 --- a/src/eva2/optimization/mocco/MOCCOParameterizeSO.java +++ b/src/eva2/optimization/mocco/MOCCOParameterizeSO.java @@ -3,7 +3,7 @@ package eva2.optimization.mocco; import eva2.gui.PropertyEditorProvider; import eva2.gui.editor.GenericObjectEditor; -import eva2.optimization.go.InterfaceTerminator; +import eva2.optimization.operator.terminators.InterfaceTerminator; import eva2.optimization.go.MOCCOStandalone; import eva2.optimization.strategies.GeneticAlgorithm; import eva2.optimization.strategies.InterfaceOptimizer; diff --git a/src/eva2/optimization/mocco/MOCCOParameterizeSTEP.java b/src/eva2/optimization/mocco/MOCCOParameterizeSTEP.java index 939555f6..b7cec5c8 100644 --- a/src/eva2/optimization/mocco/MOCCOParameterizeSTEP.java +++ b/src/eva2/optimization/mocco/MOCCOParameterizeSTEP.java @@ -4,7 +4,7 @@ package eva2.optimization.mocco; import eva2.gui.PropertyDoubleArray; import eva2.gui.PropertyEditorProvider; import eva2.gui.editor.GenericObjectEditor; -import eva2.optimization.go.InterfaceTerminator; +import eva2.optimization.operator.terminators.InterfaceTerminator; import eva2.optimization.go.MOCCOStandalone; import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.operator.moso.MOSOWeightedFitness; diff --git a/src/eva2/optimization/mocco/MOCCOParameterizeTchebycheff.java b/src/eva2/optimization/mocco/MOCCOParameterizeTchebycheff.java index 539e6d37..2ff5843f 100644 --- a/src/eva2/optimization/mocco/MOCCOParameterizeTchebycheff.java +++ b/src/eva2/optimization/mocco/MOCCOParameterizeTchebycheff.java @@ -3,7 +3,7 @@ package eva2.optimization.mocco; import eva2.gui.PropertyEditorProvider; import eva2.gui.editor.GenericObjectEditor; -import eva2.optimization.go.InterfaceTerminator; +import eva2.optimization.operator.terminators.InterfaceTerminator; import eva2.optimization.go.MOCCOStandalone; import eva2.optimization.operator.migration.SOBestMigration; import eva2.optimization.operator.moso.MOSOWeightedLPTchebycheff; diff --git a/src/eva2/optimization/mocco/MOCCOState.java b/src/eva2/optimization/mocco/MOCCOState.java index abb3d7d5..dd8ebbab 100644 --- a/src/eva2/optimization/mocco/MOCCOState.java +++ b/src/eva2/optimization/mocco/MOCCOState.java @@ -1,6 +1,6 @@ package eva2.optimization.mocco; -import eva2.optimization.go.InterfaceTerminator; +import eva2.optimization.operator.terminators.InterfaceTerminator; import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.operator.archiving.ArchivingAllDominating; import eva2.optimization.operator.terminators.EvaluationTerminator; diff --git a/src/eva2/optimization/modules/AbstractOptimizationParameters.java b/src/eva2/optimization/modules/AbstractOptimizationParameters.java index 076a51a7..be428501 100644 --- a/src/eva2/optimization/modules/AbstractOptimizationParameters.java +++ b/src/eva2/optimization/modules/AbstractOptimizationParameters.java @@ -4,7 +4,7 @@ import eva2.gui.BeanInspector; import eva2.optimization.go.InterfaceNotifyOnInformers; import eva2.optimization.go.InterfaceOptimizationParameters; import eva2.optimization.go.InterfacePopulationChangedEventListener; -import eva2.optimization.go.InterfaceTerminator; +import eva2.optimization.operator.terminators.InterfaceTerminator; import eva2.optimization.operator.postprocess.InterfacePostProcessParams; import eva2.optimization.operator.postprocess.PostProcessParams; import eva2.optimization.problems.InterfaceAdditionalPopulationInformer; diff --git a/src/eva2/optimization/modules/OptimizationParameters.java b/src/eva2/optimization/modules/OptimizationParameters.java index 62926383..b426862a 100644 --- a/src/eva2/optimization/modules/OptimizationParameters.java +++ b/src/eva2/optimization/modules/OptimizationParameters.java @@ -1,7 +1,7 @@ package eva2.optimization.modules; import eva2.optimization.go.InterfaceOptimizationParameters; -import eva2.optimization.go.InterfaceTerminator; +import eva2.optimization.operator.terminators.InterfaceTerminator; import eva2.optimization.operator.terminators.EvaluationTerminator; import eva2.optimization.problems.F1Problem; import eva2.optimization.problems.InterfaceOptimizationProblem; diff --git a/src/eva2/optimization/modules/Processor.java b/src/eva2/optimization/modules/Processor.java index 93de926e..08c345d5 100644 --- a/src/eva2/optimization/modules/Processor.java +++ b/src/eva2/optimization/modules/Processor.java @@ -10,6 +10,7 @@ import eva2.optimization.operator.postprocess.PostProcessParams; import eva2.optimization.operator.postprocess.SolutionHistogram; import eva2.optimization.operator.terminators.EvaluationTerminator; import eva2.optimization.operator.terminators.GenerationTerminator; +import eva2.optimization.operator.terminators.InterfaceTerminator; import eva2.optimization.population.Population; import eva2.optimization.population.PopulationInterface; import eva2.optimization.problems.AbstractOptimizationProblem; diff --git a/src/eva2/optimization/modules/SAParameters.java b/src/eva2/optimization/modules/SAParameters.java index b428882e..52cf92ed 100644 --- a/src/eva2/optimization/modules/SAParameters.java +++ b/src/eva2/optimization/modules/SAParameters.java @@ -2,7 +2,7 @@ package eva2.optimization.modules; import eva2.optimization.go.InterfaceOptimizationParameters; import eva2.optimization.go.InterfacePopulationChangedEventListener; -import eva2.optimization.go.InterfaceTerminator; +import eva2.optimization.operator.terminators.InterfaceTerminator; import eva2.optimization.operator.terminators.EvaluationTerminator; import eva2.optimization.population.Population; import eva2.optimization.problems.B1Problem; diff --git a/src/eva2/optimization/operator/postprocess/PostProcess.java b/src/eva2/optimization/operator/postprocess/PostProcess.java index 12f65734..3413c00d 100644 --- a/src/eva2/optimization/operator/postprocess/PostProcess.java +++ b/src/eva2/optimization/operator/postprocess/PostProcess.java @@ -7,7 +7,7 @@ import eva2.gui.plot.Plot; import eva2.gui.plot.TopoPlot; import eva2.optimization.enums.ESMutationInitialSigma; import eva2.optimization.enums.PostProcessMethod; -import eva2.optimization.go.InterfaceTerminator; +import eva2.optimization.operator.terminators.InterfaceTerminator; import eva2.optimization.individuals.*; import eva2.optimization.modules.OptimizationParameters; import eva2.optimization.operator.cluster.ClusteringDensityBased; diff --git a/src/eva2/optimization/operator/terminators/CombinedTerminator.java b/src/eva2/optimization/operator/terminators/CombinedTerminator.java index 1f2718bf..63779a89 100644 --- a/src/eva2/optimization/operator/terminators/CombinedTerminator.java +++ b/src/eva2/optimization/operator/terminators/CombinedTerminator.java @@ -1,6 +1,5 @@ package eva2.optimization.operator.terminators; -import eva2.optimization.go.InterfaceTerminator; import eva2.optimization.population.InterfaceSolutionSet; import eva2.optimization.population.PopulationInterface; import eva2.optimization.problems.InterfaceOptimizationProblem; diff --git a/src/eva2/optimization/operator/terminators/DiversityTerminator.java b/src/eva2/optimization/operator/terminators/DiversityTerminator.java index a44f7714..e09ec3b5 100644 --- a/src/eva2/optimization/operator/terminators/DiversityTerminator.java +++ b/src/eva2/optimization/operator/terminators/DiversityTerminator.java @@ -1,6 +1,5 @@ package eva2.optimization.operator.terminators; -import eva2.optimization.go.InterfaceTerminator; import eva2.optimization.operator.distancemetric.InterfaceDistanceMetric; import eva2.optimization.operator.distancemetric.PhenotypeMetric; import eva2.optimization.population.Population; diff --git a/src/eva2/optimization/operator/terminators/EvaluationTerminator.java b/src/eva2/optimization/operator/terminators/EvaluationTerminator.java index 95f5d742..2e46f700 100644 --- a/src/eva2/optimization/operator/terminators/EvaluationTerminator.java +++ b/src/eva2/optimization/operator/terminators/EvaluationTerminator.java @@ -1,6 +1,5 @@ package eva2.optimization.operator.terminators; -import eva2.optimization.go.InterfaceTerminator; import eva2.optimization.population.InterfaceSolutionSet; import eva2.optimization.population.PopulationInterface; import eva2.optimization.problems.InterfaceOptimizationProblem; diff --git a/src/eva2/optimization/operator/terminators/FitnessConvergenceTerminator.java b/src/eva2/optimization/operator/terminators/FitnessConvergenceTerminator.java index 90aec25c..ae97af6f 100644 --- a/src/eva2/optimization/operator/terminators/FitnessConvergenceTerminator.java +++ b/src/eva2/optimization/operator/terminators/FitnessConvergenceTerminator.java @@ -1,6 +1,5 @@ package eva2.optimization.operator.terminators; -import eva2.optimization.go.InterfaceTerminator; import eva2.optimization.population.PopulationInterface; import eva2.tools.math.Mathematics; diff --git a/src/eva2/optimization/operator/terminators/FitnessValueTerminator.java b/src/eva2/optimization/operator/terminators/FitnessValueTerminator.java index 14c2b25a..31788807 100644 --- a/src/eva2/optimization/operator/terminators/FitnessValueTerminator.java +++ b/src/eva2/optimization/operator/terminators/FitnessValueTerminator.java @@ -14,7 +14,6 @@ package eva2.optimization.operator.terminators; *==========================================================================*/ import eva2.gui.BeanInspector; -import eva2.optimization.go.InterfaceTerminator; import eva2.optimization.population.InterfaceSolutionSet; import eva2.optimization.population.PopulationInterface; import eva2.optimization.problems.InterfaceOptimizationProblem; diff --git a/src/eva2/optimization/operator/terminators/GenerationTerminator.java b/src/eva2/optimization/operator/terminators/GenerationTerminator.java index c2539f92..ccab2bec 100644 --- a/src/eva2/optimization/operator/terminators/GenerationTerminator.java +++ b/src/eva2/optimization/operator/terminators/GenerationTerminator.java @@ -1,6 +1,5 @@ package eva2.optimization.operator.terminators; -import eva2.optimization.go.InterfaceTerminator; import eva2.optimization.population.InterfaceSolutionSet; import eva2.optimization.population.PopulationInterface; import eva2.optimization.problems.InterfaceOptimizationProblem; diff --git a/src/eva2/optimization/operator/terminators/HistoryConvergenceTerminator.java b/src/eva2/optimization/operator/terminators/HistoryConvergenceTerminator.java index 48f862b4..b0c3fc42 100644 --- a/src/eva2/optimization/operator/terminators/HistoryConvergenceTerminator.java +++ b/src/eva2/optimization/operator/terminators/HistoryConvergenceTerminator.java @@ -1,6 +1,5 @@ package eva2.optimization.operator.terminators; -import eva2.optimization.go.InterfaceTerminator; import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.individuals.AbstractEAIndividualComparator; import eva2.optimization.operator.distancemetric.ObjectiveSpaceMetric; diff --git a/src/eva2/optimization/go/InterfaceTerminator.java b/src/eva2/optimization/operator/terminators/InterfaceTerminator.java similarity index 94% rename from src/eva2/optimization/go/InterfaceTerminator.java rename to src/eva2/optimization/operator/terminators/InterfaceTerminator.java index 0a866f64..d07ef590 100644 --- a/src/eva2/optimization/go/InterfaceTerminator.java +++ b/src/eva2/optimization/operator/terminators/InterfaceTerminator.java @@ -1,4 +1,4 @@ -package eva2.optimization.go; +package eva2.optimization.operator.terminators; import eva2.optimization.population.InterfaceSolutionSet; import eva2.optimization.population.PopulationInterface; diff --git a/src/eva2/optimization/operator/terminators/KnownOptimaFoundTerminator.java b/src/eva2/optimization/operator/terminators/KnownOptimaFoundTerminator.java index c3525010..4536d164 100644 --- a/src/eva2/optimization/operator/terminators/KnownOptimaFoundTerminator.java +++ b/src/eva2/optimization/operator/terminators/KnownOptimaFoundTerminator.java @@ -1,6 +1,5 @@ package eva2.optimization.operator.terminators; -import eva2.optimization.go.InterfaceTerminator; import eva2.optimization.population.InterfaceSolutionSet; import eva2.optimization.population.Population; import eva2.optimization.population.PopulationInterface; diff --git a/src/eva2/optimization/operator/terminators/PhenotypeConvergenceTerminator.java b/src/eva2/optimization/operator/terminators/PhenotypeConvergenceTerminator.java index 2ef34ea1..a5ab1612 100644 --- a/src/eva2/optimization/operator/terminators/PhenotypeConvergenceTerminator.java +++ b/src/eva2/optimization/operator/terminators/PhenotypeConvergenceTerminator.java @@ -1,6 +1,5 @@ package eva2.optimization.operator.terminators; -import eva2.optimization.go.InterfaceTerminator; import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.operator.distancemetric.PhenotypeMetric; import eva2.optimization.population.PopulationInterface; diff --git a/src/eva2/optimization/operator/terminators/PopulationMeasureTerminator.java b/src/eva2/optimization/operator/terminators/PopulationMeasureTerminator.java index 211c5d0c..e30ea6d8 100644 --- a/src/eva2/optimization/operator/terminators/PopulationMeasureTerminator.java +++ b/src/eva2/optimization/operator/terminators/PopulationMeasureTerminator.java @@ -1,7 +1,6 @@ package eva2.optimization.operator.terminators; import eva2.gui.BeanInspector; -import eva2.optimization.go.InterfaceTerminator; import eva2.optimization.population.InterfaceSolutionSet; import eva2.optimization.population.PopulationInterface; import eva2.optimization.problems.InterfaceOptimizationProblem; diff --git a/src/eva2/optimization/problems/AbstractOptimizationProblem.java b/src/eva2/optimization/problems/AbstractOptimizationProblem.java index 1078800c..e7bb9c94 100644 --- a/src/eva2/optimization/problems/AbstractOptimizationProblem.java +++ b/src/eva2/optimization/problems/AbstractOptimizationProblem.java @@ -1,7 +1,7 @@ package eva2.optimization.problems; import eva2.optimization.enums.PostProcessMethod; -import eva2.optimization.go.InterfaceTerminator; +import eva2.optimization.operator.terminators.InterfaceTerminator; import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.individuals.InterfaceDataTypeDouble; import eva2.optimization.operator.cluster.ClusteringDensityBased; diff --git a/src/eva2/optimization/strategies/ANPSO.java b/src/eva2/optimization/strategies/ANPSO.java index 7298657c..e4be97b5 100644 --- a/src/eva2/optimization/strategies/ANPSO.java +++ b/src/eva2/optimization/strategies/ANPSO.java @@ -3,7 +3,7 @@ package eva2.optimization.strategies; import eva2.OptimizerFactory; import eva2.gui.editor.GenericObjectEditor; import eva2.optimization.enums.PSOTopologyEnum; -import eva2.optimization.go.InterfaceTerminator; +import eva2.optimization.operator.terminators.InterfaceTerminator; import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.individuals.InterfaceDataTypeDouble; import eva2.optimization.modules.OptimizationParameters; diff --git a/src/eva2/optimization/strategies/ClusterBasedNichingEA.java b/src/eva2/optimization/strategies/ClusterBasedNichingEA.java index 5db08cfb..8ef1bdf9 100644 --- a/src/eva2/optimization/strategies/ClusterBasedNichingEA.java +++ b/src/eva2/optimization/strategies/ClusterBasedNichingEA.java @@ -6,7 +6,7 @@ import eva2.gui.plot.GraphPointSet; import eva2.gui.plot.Plot; import eva2.gui.plot.TopoPlot; import eva2.optimization.go.InterfacePopulationChangedEventListener; -import eva2.optimization.go.InterfaceTerminator; +import eva2.optimization.operator.terminators.InterfaceTerminator; import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.individuals.AbstractEAIndividualComparator; import eva2.optimization.individuals.InterfaceDataTypeDouble; diff --git a/src/eva2/optimization/strategies/DifferentialEvolution.java b/src/eva2/optimization/strategies/DifferentialEvolution.java index 5847e444..ac533977 100644 --- a/src/eva2/optimization/strategies/DifferentialEvolution.java +++ b/src/eva2/optimization/strategies/DifferentialEvolution.java @@ -34,7 +34,9 @@ import java.util.Vector; @Description(text = "Differential Evolution using a steady-state population scheme.") public class DifferentialEvolution implements InterfaceOptimizer, java.io.Serializable { + @Parameter(name = "Population", description = "Edit the properties of the population used.") protected Population population = new Population(); + protected transient Population children = null; protected AbstractOptimizationProblem optimizationProblem = new F1Problem(); diff --git a/src/eva2/optimization/strategies/EvolutionStrategyIPOP.java b/src/eva2/optimization/strategies/EvolutionStrategyIPOP.java index 4454952d..4148f7b2 100644 --- a/src/eva2/optimization/strategies/EvolutionStrategyIPOP.java +++ b/src/eva2/optimization/strategies/EvolutionStrategyIPOP.java @@ -2,7 +2,7 @@ package eva2.optimization.strategies; import eva2.gui.editor.GenericObjectEditor; import eva2.optimization.go.InterfacePopulationChangedEventListener; -import eva2.optimization.go.InterfaceTerminator; +import eva2.optimization.operator.terminators.InterfaceTerminator; import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.operator.mutation.MutateESRankMuCMA; import eva2.optimization.operator.terminators.FitnessConvergenceTerminator; diff --git a/src/eva2/optimization/strategies/NichePSO.java b/src/eva2/optimization/strategies/NichePSO.java index 7c57885b..912b97ff 100644 --- a/src/eva2/optimization/strategies/NichePSO.java +++ b/src/eva2/optimization/strategies/NichePSO.java @@ -5,7 +5,7 @@ import eva2.gui.editor.GenericObjectEditor; import eva2.gui.plot.TopoPlot; import eva2.optimization.enums.PSOTopologyEnum; import eva2.optimization.go.InterfacePopulationChangedEventListener; -import eva2.optimization.go.InterfaceTerminator; +import eva2.optimization.operator.terminators.InterfaceTerminator; import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.individuals.InterfaceDataTypeDouble; import eva2.optimization.modules.OptimizationParameters; diff --git a/src/eva2/optimization/strategies/ScatterSearch.java b/src/eva2/optimization/strategies/ScatterSearch.java index 44b066a1..c07f221e 100644 --- a/src/eva2/optimization/strategies/ScatterSearch.java +++ b/src/eva2/optimization/strategies/ScatterSearch.java @@ -5,7 +5,7 @@ import eva2.OptimizerRunnable; import eva2.gui.BeanInspector; import eva2.gui.editor.GenericObjectEditor; import eva2.optimization.go.InterfacePopulationChangedEventListener; -import eva2.optimization.go.InterfaceTerminator; +import eva2.optimization.operator.terminators.InterfaceTerminator; import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.individuals.InterfaceDataTypeDouble; import eva2.optimization.modules.OptimizationParameters; diff --git a/src/eva2/optimization/tools/AbstractObjectEditor.java b/src/eva2/optimization/tools/AbstractObjectEditor.java index 4d24ecca..8d274459 100644 --- a/src/eva2/optimization/tools/AbstractObjectEditor.java +++ b/src/eva2/optimization/tools/AbstractObjectEditor.java @@ -36,7 +36,7 @@ public abstract class AbstractObjectEditor implements PropertyEditor, java.beans */ public Object m_Object; public Object m_Backup; - public GeneralGenericObjectEditorPanel m_EditorComponent; + public GeneralGenericObjectEditorPanel objectEditorPanel; public Hashtable m_Editors = new Hashtable(); /** @@ -261,24 +261,24 @@ public abstract class AbstractObjectEditor implements PropertyEditor, java.beans * from a list of property elements * * @param prop The property to search for - * @param props All properties. + * @param propertyDescriptors All properties. * @return PropertyEditor */ - public GeneralOptimizationEditorProperty getEditorFor(String prop, PropertyDescriptor[] props, MethodDescriptor[] methods, Object target) { + public GeneralOptimizationEditorProperty getEditorFor(String prop, PropertyDescriptor[] propertyDescriptors, MethodDescriptor[] methods, Object target) { GeneralOptimizationEditorProperty result = null; - for (int i = 0; i < props.length; i++) { - if (props[i].getName().equalsIgnoreCase(prop)) { + for (PropertyDescriptor propertyDescriptor : propertyDescriptors) { + if (propertyDescriptor.getName().equalsIgnoreCase(prop)) { result = new GeneralOptimizationEditorProperty(); Object args[] = {}; - result.m_getMethod = props[i].getReadMethod(); - result.m_setMethod = props[i].getWriteMethod(); - result.m_PropertyType = props[i].getPropertyType(); - result.m_Name = props[i].getDisplayName(); + result.m_getMethod = propertyDescriptor.getReadMethod(); + result.m_setMethod = propertyDescriptor.getWriteMethod(); + result.m_PropertyType = propertyDescriptor.getPropertyType(); + result.m_Name = propertyDescriptor.getDisplayName(); result.m_Label = new JLabel(result.m_Name, SwingConstants.RIGHT); result.m_TipText = BeanInspector.getToolTipText(result.m_Name, methods, target); try { result.m_Value = result.m_getMethod.invoke(target, args); - result.m_Editor = PropertyEditorProvider.findEditor(props[i], result.m_Value); + result.m_Editor = PropertyEditorProvider.findEditor(propertyDescriptor, result.m_Value); if (result.m_Editor == null) { result.m_Editor = PropertyEditorProvider.findEditor(result.m_PropertyType); }