Organize imports.

Fix missing data header in F8Problem.
Fix several tip texts.
This commit is contained in:
Fabian Becker 2014-11-13 14:50:13 +01:00
parent 83194f4d04
commit 4326044a1b
54 changed files with 103 additions and 136 deletions

View File

@ -4,7 +4,6 @@ import eva2.optimization.enums.DEType;
import eva2.optimization.enums.MutateESCrossoverType; import eva2.optimization.enums.MutateESCrossoverType;
import eva2.optimization.enums.PSOTopology; import eva2.optimization.enums.PSOTopology;
import eva2.optimization.enums.PostProcessMethod; import eva2.optimization.enums.PostProcessMethod;
import eva2.optimization.population.InterfacePopulationChangedEventListener;
import eva2.optimization.individuals.*; import eva2.optimization.individuals.*;
import eva2.optimization.modules.OptimizationParameters; import eva2.optimization.modules.OptimizationParameters;
import eva2.optimization.operator.archiving.ArchivingNSGAII; 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.CombinedTerminator;
import eva2.optimization.operator.terminators.EvaluationTerminator; import eva2.optimization.operator.terminators.EvaluationTerminator;
import eva2.optimization.operator.terminators.InterfaceTerminator; import eva2.optimization.operator.terminators.InterfaceTerminator;
import eva2.optimization.population.InterfacePopulationChangedEventListener;
import eva2.optimization.population.PBILPopulation; import eva2.optimization.population.PBILPopulation;
import eva2.optimization.population.Population; import eva2.optimization.population.Population;
import eva2.problems.AbstractOptimizationProblem;
import eva2.optimization.statistics.InterfaceStatistics; import eva2.optimization.statistics.InterfaceStatistics;
import eva2.optimization.strategies.*; import eva2.optimization.strategies.*;
import eva2.problems.AbstractOptimizationProblem;
import eva2.tools.math.RNG; import eva2.tools.math.RNG;
import java.util.ArrayList; import java.util.ArrayList;

View File

@ -5,8 +5,8 @@ import eva2.optimization.modules.OptimizationParameters;
import eva2.optimization.operator.selection.SelectXProbRouletteWheel; import eva2.optimization.operator.selection.SelectXProbRouletteWheel;
import eva2.optimization.operator.terminators.EvaluationTerminator; import eva2.optimization.operator.terminators.EvaluationTerminator;
import eva2.optimization.population.Population; import eva2.optimization.population.Population;
import eva2.problems.B1Problem;
import eva2.optimization.strategies.GeneticAlgorithm; import eva2.optimization.strategies.GeneticAlgorithm;
import eva2.problems.B1Problem;
import java.util.BitSet; import java.util.BitSet;

View File

@ -6,8 +6,8 @@ import eva2.optimization.modules.OptimizationParameters;
import eva2.optimization.operator.crossover.CrossoverESDefault; import eva2.optimization.operator.crossover.CrossoverESDefault;
import eva2.optimization.operator.mutation.MutateESCovarianceMatrixAdaption; import eva2.optimization.operator.mutation.MutateESCovarianceMatrixAdaption;
import eva2.optimization.operator.terminators.EvaluationTerminator; import eva2.optimization.operator.terminators.EvaluationTerminator;
import eva2.problems.FM0Problem;
import eva2.optimization.strategies.EvolutionStrategies; import eva2.optimization.strategies.EvolutionStrategies;
import eva2.problems.FM0Problem;
public class TestingPlusCmaEs { public class TestingPlusCmaEs {

View File

@ -5,7 +5,10 @@ import eva2.optimization.tools.FileTools;
import javax.swing.*; import javax.swing.*;
import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener; 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.*;
import java.awt.event.*; import java.awt.event.*;
import java.io.Serializable; import java.io.Serializable;

View File

@ -1,18 +1,18 @@
package eva2.gui; package eva2.gui;
import eva2.EvAInfo; 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.OptimizationStateListener;
import eva2.optimization.go.InterfaceOptimizationParameters; import eva2.optimization.go.InterfaceOptimizationParameters;
import eva2.optimization.modules.*;
import eva2.optimization.statistics.AbstractStatistics; import eva2.optimization.statistics.AbstractStatistics;
import eva2.optimization.statistics.InterfaceStatisticsListener; import eva2.optimization.statistics.InterfaceStatisticsListener;
import eva2.optimization.statistics.InterfaceStatisticsParameters;
import eva2.tools.BasicResourceLoader; import eva2.tools.BasicResourceLoader;
import eva2.tools.EVAERROR; import eva2.tools.EVAERROR;
import eva2.tools.ReflectPackage; import eva2.tools.ReflectPackage;
import eva2.tools.StringTools; import eva2.tools.StringTools;
import eva2.util.ClassPreloader;
import eva2.util.EvAComAdapter;
import javax.help.HelpSet; import javax.help.HelpSet;
import javax.help.JHelpContentViewer; import javax.help.JHelpContentViewer;

View File

@ -3,10 +3,10 @@ package eva2.gui.editor;
import eva2.gui.PropertyEditorProvider; import eva2.gui.PropertyEditorProvider;
import eva2.gui.PropertyOptimizationObjectives; import eva2.gui.PropertyOptimizationObjectives;
import eva2.problems.InterfaceOptimizationObjective;
import eva2.problems.InterfaceOptimizationTarget;
import eva2.optimization.tools.AbstractObjectEditor; import eva2.optimization.tools.AbstractObjectEditor;
import eva2.optimization.tools.GeneralOptimizationEditorProperty; import eva2.optimization.tools.GeneralOptimizationEditorProperty;
import eva2.problems.InterfaceOptimizationObjective;
import eva2.problems.InterfaceOptimizationTarget;
import eva2.tools.BasicResourceLoader; import eva2.tools.BasicResourceLoader;
import javax.swing.*; import javax.swing.*;

View File

@ -3,9 +3,9 @@ package eva2.gui.editor;
import eva2.gui.PropertyEditorProvider; import eva2.gui.PropertyEditorProvider;
import eva2.gui.PropertyOptimizationObjectivesWithParam; import eva2.gui.PropertyOptimizationObjectivesWithParam;
import eva2.problems.InterfaceOptimizationObjective;
import eva2.optimization.tools.AbstractObjectEditor; import eva2.optimization.tools.AbstractObjectEditor;
import eva2.optimization.tools.GeneralOptimizationEditorProperty; import eva2.optimization.tools.GeneralOptimizationEditorProperty;
import eva2.problems.InterfaceOptimizationObjective;
import eva2.tools.BasicResourceLoader; import eva2.tools.BasicResourceLoader;
import javax.swing.*; import javax.swing.*;

View File

@ -2,9 +2,9 @@ package eva2.optimization.go;
import eva2.optimization.operator.postprocess.InterfacePostProcessParams; import eva2.optimization.operator.postprocess.InterfacePostProcessParams;
import eva2.optimization.operator.terminators.InterfaceTerminator; import eva2.optimization.operator.terminators.InterfaceTerminator;
import eva2.optimization.strategies.InterfaceOptimizer;
import eva2.problems.InterfaceAdditionalPopulationInformer; import eva2.problems.InterfaceAdditionalPopulationInformer;
import eva2.problems.InterfaceOptimizationProblem; import eva2.problems.InterfaceOptimizationProblem;
import eva2.optimization.strategies.InterfaceOptimizer;
/** /**
* *

View File

@ -9,9 +9,9 @@ import eva2.optimization.operator.moso.MOSOWeightedFitness;
import eva2.optimization.operator.terminators.EvaluationTerminator; import eva2.optimization.operator.terminators.EvaluationTerminator;
import eva2.optimization.population.InterfacePopulationChangedEventListener; import eva2.optimization.population.InterfacePopulationChangedEventListener;
import eva2.optimization.population.Population; import eva2.optimization.population.Population;
import eva2.problems.*;
import eva2.optimization.strategies.InterfaceOptimizer; import eva2.optimization.strategies.InterfaceOptimizer;
import eva2.optimization.strategies.IslandModelEA; import eva2.optimization.strategies.IslandModelEA;
import eva2.problems.*;
import javax.swing.*; import javax.swing.*;
import java.awt.*; import java.awt.*;

View File

@ -16,10 +16,10 @@ import eva2.optimization.operator.selection.SelectTournament;
import eva2.optimization.operator.terminators.EvaluationTerminator; import eva2.optimization.operator.terminators.EvaluationTerminator;
import eva2.optimization.population.InterfacePopulationChangedEventListener; import eva2.optimization.population.InterfacePopulationChangedEventListener;
import eva2.optimization.population.Population; import eva2.optimization.population.Population;
import eva2.problems.F1Problem;
import eva2.optimization.strategies.EvolutionStrategies; import eva2.optimization.strategies.EvolutionStrategies;
import eva2.optimization.strategies.GeneticAlgorithm; import eva2.optimization.strategies.GeneticAlgorithm;
import eva2.optimization.strategies.InterfaceOptimizer; import eva2.optimization.strategies.InterfaceOptimizer;
import eva2.problems.F1Problem;
import eva2.tools.math.RNG; import eva2.tools.math.RNG;
import javax.swing.*; import javax.swing.*;

View File

@ -8,13 +8,13 @@ import eva2.optimization.go.MOCCOStandalone;
import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.individuals.AbstractEAIndividual;
import eva2.optimization.operator.moso.MOSOWeightedFitness; import eva2.optimization.operator.moso.MOSOWeightedFitness;
import eva2.optimization.operator.terminators.InterfaceTerminator; 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.GeneticAlgorithm;
import eva2.optimization.strategies.InterfaceOptimizer; import eva2.optimization.strategies.InterfaceOptimizer;
import eva2.optimization.tools.AbstractObjectEditor; import eva2.optimization.tools.AbstractObjectEditor;
import eva2.optimization.tools.GeneralOptimizationEditorProperty; import eva2.optimization.tools.GeneralOptimizationEditorProperty;
import eva2.problems.AbstractMultiObjectiveOptimizationProblem;
import eva2.problems.InterfaceMultiObjectiveDeNovoProblem;
import eva2.problems.InterfaceOptimizationObjective;
import javax.swing.*; import javax.swing.*;
import java.awt.*; import java.awt.*;

View File

@ -7,10 +7,10 @@ import eva2.optimization.go.MOCCOStandalone;
import eva2.optimization.operator.migration.SOBestMigration; import eva2.optimization.operator.migration.SOBestMigration;
import eva2.optimization.operator.moso.MOSOLpMetric; import eva2.optimization.operator.moso.MOSOLpMetric;
import eva2.optimization.operator.terminators.InterfaceTerminator; import eva2.optimization.operator.terminators.InterfaceTerminator;
import eva2.problems.AbstractMultiObjectiveOptimizationProblem;
import eva2.optimization.strategies.IslandModelEA; import eva2.optimization.strategies.IslandModelEA;
import eva2.optimization.tools.AbstractObjectEditor; import eva2.optimization.tools.AbstractObjectEditor;
import eva2.optimization.tools.GeneralOptimizationEditorProperty; import eva2.optimization.tools.GeneralOptimizationEditorProperty;
import eva2.problems.AbstractMultiObjectiveOptimizationProblem;
import eva2.tools.math.RNG; import eva2.tools.math.RNG;
import javax.swing.*; import javax.swing.*;

View File

@ -8,13 +8,13 @@ import eva2.optimization.go.MOCCOStandalone;
import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.individuals.AbstractEAIndividual;
import eva2.optimization.operator.moso.MOSOWeightedFitness; import eva2.optimization.operator.moso.MOSOWeightedFitness;
import eva2.optimization.operator.terminators.InterfaceTerminator; 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.GeneticAlgorithm;
import eva2.optimization.strategies.InterfaceOptimizer; import eva2.optimization.strategies.InterfaceOptimizer;
import eva2.optimization.tools.AbstractObjectEditor; import eva2.optimization.tools.AbstractObjectEditor;
import eva2.optimization.tools.GeneralOptimizationEditorProperty; import eva2.optimization.tools.GeneralOptimizationEditorProperty;
import eva2.problems.AbstractMultiObjectiveOptimizationProblem;
import eva2.problems.InterfaceMultiObjectiveDeNovoProblem;
import eva2.problems.InterfaceOptimizationObjective;
import javax.swing.*; import javax.swing.*;
import java.awt.*; import java.awt.*;

View File

@ -7,10 +7,10 @@ import eva2.optimization.go.MOCCOStandalone;
import eva2.optimization.operator.migration.SOBestMigration; import eva2.optimization.operator.migration.SOBestMigration;
import eva2.optimization.operator.moso.MOSOWeightedLPTchebycheff; import eva2.optimization.operator.moso.MOSOWeightedLPTchebycheff;
import eva2.optimization.operator.terminators.InterfaceTerminator; import eva2.optimization.operator.terminators.InterfaceTerminator;
import eva2.problems.AbstractMultiObjectiveOptimizationProblem;
import eva2.optimization.strategies.IslandModelEA; import eva2.optimization.strategies.IslandModelEA;
import eva2.optimization.tools.AbstractObjectEditor; import eva2.optimization.tools.AbstractObjectEditor;
import eva2.optimization.tools.GeneralOptimizationEditorProperty; import eva2.optimization.tools.GeneralOptimizationEditorProperty;
import eva2.problems.AbstractMultiObjectiveOptimizationProblem;
import eva2.tools.math.RNG; import eva2.tools.math.RNG;
import javax.swing.*; import javax.swing.*;

View File

@ -4,12 +4,12 @@ import eva2.optimization.operator.archiving.ArchivingAllDominating;
import eva2.optimization.operator.terminators.EvaluationTerminator; import eva2.optimization.operator.terminators.EvaluationTerminator;
import eva2.optimization.operator.terminators.InterfaceTerminator; import eva2.optimization.operator.terminators.InterfaceTerminator;
import eva2.optimization.population.Population; import eva2.optimization.population.Population;
import eva2.optimization.strategies.InterfaceOptimizer;
import eva2.optimization.strategies.MultiObjectiveEA;
import eva2.problems.AbstractMultiObjectiveOptimizationProblem; import eva2.problems.AbstractMultiObjectiveOptimizationProblem;
import eva2.problems.InterfaceMultiObjectiveDeNovoProblem; import eva2.problems.InterfaceMultiObjectiveDeNovoProblem;
import eva2.problems.InterfaceOptimizationObjective; import eva2.problems.InterfaceOptimizationObjective;
import eva2.problems.InterfaceOptimizationProblem; import eva2.problems.InterfaceOptimizationProblem;
import eva2.optimization.strategies.InterfaceOptimizer;
import eva2.optimization.strategies.MultiObjectiveEA;
import java.awt.*; import java.awt.*;
import java.util.ArrayList; import java.util.ArrayList;

View File

@ -3,8 +3,8 @@ package eva2.optimization.operator.crossover;
import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.individuals.AbstractEAIndividual;
import eva2.optimization.individuals.InterfaceDataTypeBinary; import eva2.optimization.individuals.InterfaceDataTypeBinary;
import eva2.optimization.population.Population; import eva2.optimization.population.Population;
import eva2.problems.InterfaceOptimizationProblem;
import eva2.optimization.strategies.BinaryScatterSearch; import eva2.optimization.strategies.BinaryScatterSearch;
import eva2.problems.InterfaceOptimizationProblem;
import eva2.tools.math.RNG; import eva2.tools.math.RNG;
import eva2.util.annotation.Description; import eva2.util.annotation.Description;

View File

@ -3,8 +3,8 @@ package eva2.optimization.operator.crossover;
import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.individuals.AbstractEAIndividual;
import eva2.optimization.individuals.InterfaceDataTypeBinary; import eva2.optimization.individuals.InterfaceDataTypeBinary;
import eva2.optimization.population.Population; import eva2.optimization.population.Population;
import eva2.problems.InterfaceOptimizationProblem;
import eva2.optimization.strategies.BinaryScatterSearch; import eva2.optimization.strategies.BinaryScatterSearch;
import eva2.problems.InterfaceOptimizationProblem;
import eva2.tools.math.RNG; import eva2.tools.math.RNG;
import eva2.util.annotation.Description; import eva2.util.annotation.Description;

View File

@ -9,9 +9,9 @@ import eva2.optimization.operator.constraint.ConstBelongsToDifferentClass;
import eva2.optimization.operator.selection.InterfaceSelection; import eva2.optimization.operator.selection.InterfaceSelection;
import eva2.optimization.operator.selection.SelectRandom; import eva2.optimization.operator.selection.SelectRandom;
import eva2.optimization.population.Population; import eva2.optimization.population.Population;
import eva2.optimization.strategies.InterfaceOptimizer;
import eva2.problems.AbstractMultiObjectiveOptimizationProblem; import eva2.problems.AbstractMultiObjectiveOptimizationProblem;
import eva2.problems.InterfaceOptimizationProblem; import eva2.problems.InterfaceOptimizationProblem;
import eva2.optimization.strategies.InterfaceOptimizer;
import eva2.tools.chart2d.Chart2DDPointIconCircle; import eva2.tools.chart2d.Chart2DDPointIconCircle;
import eva2.tools.chart2d.Chart2DDPointIconText; import eva2.tools.chart2d.Chart2DDPointIconText;
import eva2.tools.chart2d.DPoint; import eva2.tools.chart2d.DPoint;

View File

@ -12,9 +12,9 @@ import eva2.optimization.operator.constraint.ConstObjectivesInEqualitySmallerTha
import eva2.optimization.operator.selection.InterfaceSelection; import eva2.optimization.operator.selection.InterfaceSelection;
import eva2.optimization.operator.selection.SelectRandom; import eva2.optimization.operator.selection.SelectRandom;
import eva2.optimization.population.Population; import eva2.optimization.population.Population;
import eva2.optimization.strategies.InterfaceOptimizer;
import eva2.problems.AbstractMultiObjectiveOptimizationProblem; import eva2.problems.AbstractMultiObjectiveOptimizationProblem;
import eva2.problems.InterfaceOptimizationProblem; import eva2.problems.InterfaceOptimizationProblem;
import eva2.optimization.strategies.InterfaceOptimizer;
import eva2.tools.chart2d.Chart2DDPointIconCircle; import eva2.tools.chart2d.Chart2DDPointIconCircle;
import eva2.tools.chart2d.Chart2DDPointIconText; import eva2.tools.chart2d.Chart2DDPointIconText;
import eva2.tools.chart2d.DPoint; import eva2.tools.chart2d.DPoint;

View File

@ -10,9 +10,9 @@ import eva2.optimization.operator.constraint.ConstBelongsToDifferentClass;
import eva2.optimization.operator.selection.InterfaceSelection; import eva2.optimization.operator.selection.InterfaceSelection;
import eva2.optimization.operator.selection.SelectRandom; import eva2.optimization.operator.selection.SelectRandom;
import eva2.optimization.population.Population; import eva2.optimization.population.Population;
import eva2.optimization.strategies.InterfaceOptimizer;
import eva2.problems.AbstractMultiObjectiveOptimizationProblem; import eva2.problems.AbstractMultiObjectiveOptimizationProblem;
import eva2.problems.InterfaceOptimizationProblem; import eva2.problems.InterfaceOptimizationProblem;
import eva2.optimization.strategies.InterfaceOptimizer;
import eva2.tools.chart2d.Chart2DDPointIconCircle; import eva2.tools.chart2d.Chart2DDPointIconCircle;
import eva2.tools.chart2d.Chart2DDPointIconText; import eva2.tools.chart2d.Chart2DDPointIconText;
import eva2.tools.chart2d.DPoint; import eva2.tools.chart2d.DPoint;

View File

@ -1,7 +1,7 @@
package eva2.optimization.operator.mutation; package eva2.optimization.operator.mutation;
import eva2.optimization.population.InterfacePopulationChangedEventListener;
import eva2.optimization.individuals.InterfaceDataTypeDouble; import eva2.optimization.individuals.InterfaceDataTypeDouble;
import eva2.optimization.population.InterfacePopulationChangedEventListener;
import eva2.optimization.population.Population; import eva2.optimization.population.Population;
import eva2.optimization.strategies.EvolutionStrategies; import eva2.optimization.strategies.EvolutionStrategies;
import eva2.tools.EVAERROR; import eva2.tools.EVAERROR;

View File

@ -7,8 +7,8 @@ import eva2.optimization.individuals.EAIndividualComparator;
import eva2.optimization.individuals.InterfaceDataTypeDouble; import eva2.optimization.individuals.InterfaceDataTypeDouble;
import eva2.optimization.operator.distancemetric.EuclideanMetric; import eva2.optimization.operator.distancemetric.EuclideanMetric;
import eva2.optimization.population.Population; import eva2.optimization.population.Population;
import eva2.problems.InterfaceOptimizationProblem;
import eva2.optimization.strategies.EvolutionStrategies; import eva2.optimization.strategies.EvolutionStrategies;
import eva2.problems.InterfaceOptimizationProblem;
import eva2.tools.EVAERROR; import eva2.tools.EVAERROR;
import eva2.tools.Pair; import eva2.tools.Pair;
import eva2.tools.math.Jama.EigenvalueDecomposition; import eva2.tools.math.Jama.EigenvalueDecomposition;

View File

@ -4,8 +4,8 @@ package eva2.optimization.operator.paretofrontmetrics;
import eva2.gui.PropertyFilePath; import eva2.gui.PropertyFilePath;
import eva2.optimization.operator.archiving.ArchivingAllDominating; import eva2.optimization.operator.archiving.ArchivingAllDominating;
import eva2.optimization.population.Population; import eva2.optimization.population.Population;
import eva2.problems.AbstractMultiObjectiveOptimizationProblem;
import eva2.optimization.tools.FileTools; import eva2.optimization.tools.FileTools;
import eva2.problems.AbstractMultiObjectiveOptimizationProblem;
import eva2.util.annotation.Description; import eva2.util.annotation.Description;
import java.util.ArrayList; import java.util.ArrayList;

View File

@ -4,8 +4,8 @@ package eva2.optimization.operator.paretofrontmetrics;
import eva2.gui.PropertyFilePath; import eva2.gui.PropertyFilePath;
import eva2.optimization.operator.archiving.ArchivingAllDominating; import eva2.optimization.operator.archiving.ArchivingAllDominating;
import eva2.optimization.population.Population; import eva2.optimization.population.Population;
import eva2.problems.AbstractMultiObjectiveOptimizationProblem;
import eva2.optimization.tools.FileTools; import eva2.optimization.tools.FileTools;
import eva2.problems.AbstractMultiObjectiveOptimizationProblem;
import eva2.util.annotation.Description; import eva2.util.annotation.Description;
import java.util.ArrayList; import java.util.ArrayList;

View File

@ -4,8 +4,8 @@ import eva2.gui.PropertyFilePath;
import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.individuals.AbstractEAIndividual;
import eva2.optimization.operator.archiving.ArchivingAllDominating; import eva2.optimization.operator.archiving.ArchivingAllDominating;
import eva2.optimization.population.Population; import eva2.optimization.population.Population;
import eva2.problems.AbstractMultiObjectiveOptimizationProblem;
import eva2.optimization.tools.FileTools; import eva2.optimization.tools.FileTools;
import eva2.problems.AbstractMultiObjectiveOptimizationProblem;
import eva2.util.annotation.Description; import eva2.util.annotation.Description;
import java.util.ArrayList; import java.util.ArrayList;

View File

@ -4,8 +4,8 @@ package eva2.optimization.operator.paretofrontmetrics;
import eva2.gui.PropertyFilePath; import eva2.gui.PropertyFilePath;
import eva2.optimization.operator.archiving.ArchivingAllDominating; import eva2.optimization.operator.archiving.ArchivingAllDominating;
import eva2.optimization.population.Population; import eva2.optimization.population.Population;
import eva2.problems.AbstractMultiObjectiveOptimizationProblem;
import eva2.optimization.tools.FileTools; import eva2.optimization.tools.FileTools;
import eva2.problems.AbstractMultiObjectiveOptimizationProblem;
import eva2.util.annotation.Description; import eva2.util.annotation.Description;
import java.util.ArrayList; import java.util.ArrayList;

View File

@ -6,8 +6,8 @@ import eva2.optimization.individuals.AbstractEAIndividual;
import eva2.optimization.individuals.ESIndividualDoubleData; import eva2.optimization.individuals.ESIndividualDoubleData;
import eva2.optimization.operator.archiving.ArchivingAllDominating; import eva2.optimization.operator.archiving.ArchivingAllDominating;
import eva2.optimization.population.Population; import eva2.optimization.population.Population;
import eva2.problems.AbstractMultiObjectiveOptimizationProblem;
import eva2.optimization.tools.FileTools; import eva2.optimization.tools.FileTools;
import eva2.problems.AbstractMultiObjectiveOptimizationProblem;
import eva2.util.annotation.Description; import eva2.util.annotation.Description;
import java.util.ArrayList; import java.util.ArrayList;

View File

@ -24,12 +24,12 @@ import eva2.optimization.operator.terminators.EvaluationTerminator;
import eva2.optimization.operator.terminators.InterfaceTerminator; import eva2.optimization.operator.terminators.InterfaceTerminator;
import eva2.optimization.population.Population; import eva2.optimization.population.Population;
import eva2.optimization.statistics.InterfaceStatisticsParameters; import eva2.optimization.statistics.InterfaceStatisticsParameters;
import eva2.problems.*;
import eva2.optimization.statistics.InterfaceTextListener; import eva2.optimization.statistics.InterfaceTextListener;
import eva2.optimization.strategies.EvolutionStrategies; import eva2.optimization.strategies.EvolutionStrategies;
import eva2.optimization.strategies.GradientDescentAlgorithm; import eva2.optimization.strategies.GradientDescentAlgorithm;
import eva2.optimization.strategies.HillClimbing; import eva2.optimization.strategies.HillClimbing;
import eva2.optimization.strategies.NelderMeadSimplex; import eva2.optimization.strategies.NelderMeadSimplex;
import eva2.problems.*;
import eva2.tools.Pair; import eva2.tools.Pair;
import eva2.tools.math.Mathematics; import eva2.tools.math.Mathematics;

View File

@ -1,12 +1,12 @@
package eva2.optimization.strategies; package eva2.optimization.strategies;
import eva2.gui.BeanInspector; import eva2.gui.BeanInspector;
import eva2.optimization.population.InterfacePopulationChangedEventListener;
import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.individuals.AbstractEAIndividual;
import eva2.optimization.individuals.InterfaceDataTypeBinary; import eva2.optimization.individuals.InterfaceDataTypeBinary;
import eva2.optimization.individuals.InterfaceGAIndividual; import eva2.optimization.individuals.InterfaceGAIndividual;
import eva2.optimization.operator.crossover.*; import eva2.optimization.operator.crossover.*;
import eva2.optimization.operator.distancemetric.GenotypeMetricBitSet; import eva2.optimization.operator.distancemetric.GenotypeMetricBitSet;
import eva2.optimization.population.InterfacePopulationChangedEventListener;
import eva2.optimization.population.InterfaceSolutionSet; import eva2.optimization.population.InterfaceSolutionSet;
import eva2.optimization.population.Population; import eva2.optimization.population.Population;
import eva2.optimization.population.SolutionSet; import eva2.optimization.population.SolutionSet;

View File

@ -5,7 +5,6 @@ import eva2.gui.editor.GenericObjectEditor;
import eva2.gui.plot.GraphPointSet; import eva2.gui.plot.GraphPointSet;
import eva2.gui.plot.Plot; import eva2.gui.plot.Plot;
import eva2.gui.plot.TopoPlot; import eva2.gui.plot.TopoPlot;
import eva2.optimization.population.InterfacePopulationChangedEventListener;
import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.individuals.AbstractEAIndividual;
import eva2.optimization.individuals.EAIndividualComparator; import eva2.optimization.individuals.EAIndividualComparator;
import eva2.optimization.individuals.InterfaceDataTypeDouble; 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.paramcontrol.ParameterControlManager;
import eva2.optimization.operator.terminators.HistoryConvergenceTerminator; import eva2.optimization.operator.terminators.HistoryConvergenceTerminator;
import eva2.optimization.operator.terminators.InterfaceTerminator; import eva2.optimization.operator.terminators.InterfaceTerminator;
import eva2.optimization.population.InterfacePopulationChangedEventListener;
import eva2.optimization.population.Population; import eva2.optimization.population.Population;
import eva2.optimization.population.PopulationInterface; import eva2.optimization.population.PopulationInterface;
import eva2.optimization.population.SolutionSet; import eva2.optimization.population.SolutionSet;

View File

@ -2,18 +2,15 @@ package eva2.optimization.strategies;
import eva2.gui.editor.GenericObjectEditor; import eva2.gui.editor.GenericObjectEditor;
import eva2.optimization.enums.PostProcessMethod; import eva2.optimization.enums.PostProcessMethod;
import eva2.optimization.population.InterfacePopulationChangedEventListener;
import eva2.optimization.operator.mutation.MutateESFixedStepSize; import eva2.optimization.operator.mutation.MutateESFixedStepSize;
import eva2.optimization.operator.postprocess.PostProcess; import eva2.optimization.operator.postprocess.PostProcess;
import eva2.optimization.population.InterfaceSolutionSet; import eva2.optimization.population.*;
import eva2.optimization.population.Population;
import eva2.optimization.population.PopulationInterface;
import eva2.optimization.population.SolutionSet;
import eva2.problems.AbstractOptimizationProblem; import eva2.problems.AbstractOptimizationProblem;
import eva2.problems.InterfaceAdditionalPopulationInformer; import eva2.problems.InterfaceAdditionalPopulationInformer;
import eva2.problems.InterfaceOptimizationProblem; import eva2.problems.InterfaceOptimizationProblem;
import eva2.tools.Pair; import eva2.tools.Pair;
import eva2.util.annotation.Description; import eva2.util.annotation.Description;
import eva2.util.annotation.Parameter;
import java.io.Serializable; import java.io.Serializable;
@ -200,7 +197,6 @@ public class ClusteringHillClimbing extends AbstractOptimizer implements Interfa
tmp.addPopulation(population); tmp.addPopulation(population);
tmp.setFunctionCalls(population.getFunctionCalls()); tmp.setFunctionCalls(population.getFunctionCalls());
tmp.setGeneration(population.getGeneration()); tmp.setGeneration(population.getGeneration());
// tmp = PostProcessInterim.clusterBest(tmp, sigma, 0, PostProcessInterim.KEEP_LONERS, PostProcessInterim.BEST_ONLY);
return new SolutionSet(population, tmp); return new SolutionSet(population, tmp);
} }
@ -236,14 +232,11 @@ public class ClusteringHillClimbing extends AbstractOptimizer implements Interfa
/** /**
* @param hcEvalCycle the hcEvalCycle to set * @param hcEvalCycle the hcEvalCycle to set
*/ */
@Parameter(description = "The number of evaluations between two clustering/adaption steps.")
public void setEvalCycle(int hcEvalCycle) { public void setEvalCycle(int hcEvalCycle) {
this.hcEvalCycle = hcEvalCycle; this.hcEvalCycle = hcEvalCycle;
} }
public String evalCycleTipText() {
return "The number of evaluations between two clustering/adaption steps.";
}
/** /**
* @return the initialPopSize * @return the initialPopSize
*/ */
@ -254,14 +247,11 @@ public class ClusteringHillClimbing extends AbstractOptimizer implements Interfa
/** /**
* @param initialPopSize the initialPopSize to set * @param initialPopSize the initialPopSize to set
*/ */
@Parameter(description = "Population size at the start and at reinitialization times.")
public void setInitialPopSize(int initialPopSize) { public void setInitialPopSize(int initialPopSize) {
this.initialPopSize = initialPopSize; this.initialPopSize = initialPopSize;
} }
public String initialPopSizeTipText() {
return "Population size at the start and at reinitialization times.";
}
/** /**
* @return the sigma * @return the sigma
*/ */
@ -272,14 +262,11 @@ public class ClusteringHillClimbing extends AbstractOptimizer implements Interfa
/** /**
* @param sigma the sigma to set * @param sigma the sigma to set
*/ */
@Parameter(description = "Defines the sigma distance parameter for density based clustering.")
public void setSigmaClust(double sigma) { public void setSigmaClust(double sigma) {
this.sigmaClust = sigma; this.sigmaClust = sigma;
} }
public String sigmaClustTipText() {
return "Defines the sigma distance parameter for density based clustering.";
}
/** /**
* @return the notifyGuiEvery * @return the notifyGuiEvery
*/ */
@ -290,14 +277,11 @@ public class ClusteringHillClimbing extends AbstractOptimizer implements Interfa
/** /**
* @param notifyGuiEvery the notifyGuiEvery to set * @param notifyGuiEvery the notifyGuiEvery to set
*/ */
@Parameter(description = "How often to notify the GUI to plot the fitness etc.")
public void setNotifyGuiEvery(int notifyGuiEvery) { public void setNotifyGuiEvery(int notifyGuiEvery) {
this.notifyGuiEvery = notifyGuiEvery; this.notifyGuiEvery = notifyGuiEvery;
} }
public String notifyGuiEveryTipText() {
return "How often to notify the GUI to plot the fitness etc.";
}
/** /**
* @return the minImprovement * @return the minImprovement
*/ */
@ -308,14 +292,11 @@ public class ClusteringHillClimbing extends AbstractOptimizer implements Interfa
/** /**
* @param minImprovement the minImprovement to set * @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) { public void setMinImprovement(double minImprovement) {
this.minImprovement = 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 * @return the reinitForStepSize
*/ */
@ -326,14 +307,11 @@ public class ClusteringHillClimbing extends AbstractOptimizer implements Interfa
/** /**
* @param reinitForStepSize the reinitForStepSize to set * @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) { public void setStepSizeThreshold(double reinitForStepSize) {
this.stepSizeThreshold = 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 * @return the initialStepSize
*/ */
@ -344,28 +322,22 @@ public class ClusteringHillClimbing extends AbstractOptimizer implements Interfa
/** /**
* @param initialStepSize the initialStepSize to set * @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) { public void setStepSizeInitial(double initialStepSize) {
this.initialStepSize = initialStepSize; this.initialStepSize = initialStepSize;
} }
public String stepSizeInitialTipText() {
return "Initial mutation step size for hill climbing, relative to the problem range.";
}
public PostProcessMethod getLocalSearchMethod() { public PostProcessMethod getLocalSearchMethod() {
return localSearchMethod; return localSearchMethod;
} }
@Parameter(description = "Set the method to be used for the hill climbing as local search")
public void setLocalSearchMethod(PostProcessMethod localSearchMethod) { public void setLocalSearchMethod(PostProcessMethod localSearchMethod) {
this.localSearchMethod = localSearchMethod; this.localSearchMethod = localSearchMethod;
GenericObjectEditor.setShowProperty(this.getClass(), "stepSizeInitial", localSearchMethod == PostProcessMethod.hillClimber); GenericObjectEditor.setShowProperty(this.getClass(), "stepSizeInitial", localSearchMethod == PostProcessMethod.hillClimber);
GenericObjectEditor.setShowProperty(this.getClass(), "stepSizeThreshold", 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 @Override
public String[] getAdditionalDataHeader() { public String[] getAdditionalDataHeader() {
return new String[]{"numIndies", "sigma", "numArchived", "archivedMeanDist"}; return new String[]{"numIndies", "sigma", "numArchived", "archivedMeanDist"};
@ -385,12 +357,9 @@ public class ClusteringHillClimbing extends AbstractOptimizer implements Interfa
return doReinitialization; return doReinitialization;
} }
@Parameter(description = "Activate reinitialization if no improvement was achieved.")
public void setDoReinitialization(boolean doReinitialization) { public void setDoReinitialization(boolean doReinitialization) {
this.doReinitialization = doReinitialization; this.doReinitialization = doReinitialization;
GenericObjectEditor.setShowProperty(this.getClass(), "minImprovement", doReinitialization); GenericObjectEditor.setShowProperty(this.getClass(), "minImprovement", doReinitialization);
} }
public String doReinitializationTipText() {
return "Activate reinitialization if no improvement was achieved.";
}
} }

View File

@ -2,7 +2,6 @@ package eva2.optimization.strategies;
import eva2.gui.editor.GenericObjectEditor; import eva2.gui.editor.GenericObjectEditor;
import eva2.gui.plot.TopoPlot; import eva2.gui.plot.TopoPlot;
import eva2.optimization.population.InterfacePopulationChangedEventListener;
import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.individuals.AbstractEAIndividual;
import eva2.optimization.individuals.InterfaceDataTypeDouble; import eva2.optimization.individuals.InterfaceDataTypeDouble;
import eva2.optimization.operator.cluster.ClusteringDynPeakIdent; 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.paramcontrol.ParameterControlManager;
import eva2.optimization.operator.selection.*; import eva2.optimization.operator.selection.*;
import eva2.optimization.operator.terminators.HistoryConvergenceTerminator; import eva2.optimization.operator.terminators.HistoryConvergenceTerminator;
import eva2.optimization.population.InterfaceSolutionSet; import eva2.optimization.population.*;
import eva2.optimization.population.Population;
import eva2.optimization.population.PopulationInterface;
import eva2.optimization.population.SolutionSet;
import eva2.problems.Interface2DBorderProblem; import eva2.problems.Interface2DBorderProblem;
import eva2.problems.InterfaceAdditionalPopulationInformer; import eva2.problems.InterfaceAdditionalPopulationInformer;
import eva2.problems.InterfaceOptimizationProblem; import eva2.problems.InterfaceOptimizationProblem;

View File

@ -1,7 +1,6 @@
package eva2.optimization.strategies; package eva2.optimization.strategies;
import eva2.gui.editor.GenericObjectEditor; import eva2.gui.editor.GenericObjectEditor;
import eva2.optimization.population.InterfacePopulationChangedEventListener;
import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.individuals.AbstractEAIndividual;
import eva2.optimization.operator.mutation.MutateESRankMuCMA; import eva2.optimization.operator.mutation.MutateESRankMuCMA;
import eva2.optimization.operator.terminators.FitnessConvergenceTerminator; 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.ChangeTypeEnum;
import eva2.optimization.operator.terminators.PopulationMeasureTerminator.DirectionTypeEnum; import eva2.optimization.operator.terminators.PopulationMeasureTerminator.DirectionTypeEnum;
import eva2.optimization.operator.terminators.PopulationMeasureTerminator.StagnationTypeEnum; import eva2.optimization.operator.terminators.PopulationMeasureTerminator.StagnationTypeEnum;
import eva2.optimization.population.InterfacePopulationChangedEventListener;
import eva2.optimization.population.Population; import eva2.optimization.population.Population;
import eva2.optimization.population.PopulationInterface; import eva2.optimization.population.PopulationInterface;
import eva2.optimization.population.SolutionSet; import eva2.optimization.population.SolutionSet;

View File

@ -1,9 +1,9 @@
package eva2.optimization.strategies; package eva2.optimization.strategies;
import eva2.optimization.population.InterfacePopulationChangedEventListener;
import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.individuals.AbstractEAIndividual;
import eva2.optimization.operator.selection.InterfaceSelection; import eva2.optimization.operator.selection.InterfaceSelection;
import eva2.optimization.operator.selection.SelectEPTournaments; import eva2.optimization.operator.selection.SelectEPTournaments;
import eva2.optimization.population.InterfacePopulationChangedEventListener;
import eva2.optimization.population.InterfaceSolutionSet; import eva2.optimization.population.InterfaceSolutionSet;
import eva2.optimization.population.Population; import eva2.optimization.population.Population;
import eva2.optimization.population.SolutionSet; import eva2.optimization.population.SolutionSet;

View File

@ -1,9 +1,9 @@
package eva2.optimization.strategies; package eva2.optimization.strategies;
import eva2.gui.plot.Plot; import eva2.gui.plot.Plot;
import eva2.optimization.population.InterfacePopulationChangedEventListener;
import eva2.optimization.individuals.ESIndividualDoubleData; import eva2.optimization.individuals.ESIndividualDoubleData;
import eva2.optimization.operator.migration.*; import eva2.optimization.operator.migration.*;
import eva2.optimization.population.InterfacePopulationChangedEventListener;
import eva2.optimization.population.InterfaceSolutionSet; import eva2.optimization.population.InterfaceSolutionSet;
import eva2.optimization.population.Population; import eva2.optimization.population.Population;
import eva2.optimization.population.SolutionSet; import eva2.optimization.population.SolutionSet;

View File

@ -1,10 +1,10 @@
package eva2.optimization.strategies; package eva2.optimization.strategies;
import eva2.gui.BeanInspector; import eva2.gui.BeanInspector;
import eva2.optimization.population.InterfacePopulationChangedEventListener;
import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.individuals.AbstractEAIndividual;
import eva2.optimization.individuals.InterfaceDataTypeBinary; import eva2.optimization.individuals.InterfaceDataTypeBinary;
import eva2.optimization.individuals.InterfaceGAIndividual; import eva2.optimization.individuals.InterfaceGAIndividual;
import eva2.optimization.population.InterfacePopulationChangedEventListener;
import eva2.optimization.population.InterfaceSolutionSet; import eva2.optimization.population.InterfaceSolutionSet;
import eva2.optimization.population.Population; import eva2.optimization.population.Population;
import eva2.optimization.population.SolutionSet; import eva2.optimization.population.SolutionSet;

View File

@ -1,10 +1,10 @@
package eva2.optimization.strategies; package eva2.optimization.strategies;
import eva2.gui.BeanInspector; import eva2.gui.BeanInspector;
import eva2.optimization.population.InterfacePopulationChangedEventListener;
import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.individuals.AbstractEAIndividual;
import eva2.optimization.individuals.InterfaceDataTypeBinary; import eva2.optimization.individuals.InterfaceDataTypeBinary;
import eva2.optimization.individuals.InterfaceGAIndividual; import eva2.optimization.individuals.InterfaceGAIndividual;
import eva2.optimization.population.InterfacePopulationChangedEventListener;
import eva2.optimization.population.InterfaceSolutionSet; import eva2.optimization.population.InterfaceSolutionSet;
import eva2.optimization.population.Population; import eva2.optimization.population.Population;
import eva2.optimization.population.SolutionSet; import eva2.optimization.population.SolutionSet;

View File

@ -1,9 +1,9 @@
package eva2.optimization.strategies; package eva2.optimization.strategies;
import eva2.optimization.population.InterfacePopulationChangedEventListener;
import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.individuals.AbstractEAIndividual;
import eva2.optimization.operator.selection.InterfaceSelection; import eva2.optimization.operator.selection.InterfaceSelection;
import eva2.optimization.operator.selection.SelectBestIndividuals; import eva2.optimization.operator.selection.SelectBestIndividuals;
import eva2.optimization.population.InterfacePopulationChangedEventListener;
import eva2.optimization.population.InterfaceSolutionSet; import eva2.optimization.population.InterfaceSolutionSet;
import eva2.optimization.population.Population; import eva2.optimization.population.Population;
import eva2.optimization.population.SolutionSet; import eva2.optimization.population.SolutionSet;

View File

@ -1,12 +1,12 @@
package eva2.optimization.strategies; package eva2.optimization.strategies;
import eva2.optimization.population.InterfacePopulationChangedEventListener;
import eva2.optimization.individuals.EAIndividualComparator; import eva2.optimization.individuals.EAIndividualComparator;
import eva2.optimization.operator.archiving.ArchivingNSGAII; import eva2.optimization.operator.archiving.ArchivingNSGAII;
import eva2.optimization.operator.archiving.InformationRetrievalInserting; import eva2.optimization.operator.archiving.InformationRetrievalInserting;
import eva2.optimization.operator.archiving.InterfaceArchiving; import eva2.optimization.operator.archiving.InterfaceArchiving;
import eva2.optimization.operator.archiving.InterfaceInformationRetrieval; import eva2.optimization.operator.archiving.InterfaceInformationRetrieval;
import eva2.optimization.operator.selection.SelectMONonDominated; import eva2.optimization.operator.selection.SelectMONonDominated;
import eva2.optimization.population.InterfacePopulationChangedEventListener;
import eva2.optimization.population.InterfaceSolutionSet; import eva2.optimization.population.InterfaceSolutionSet;
import eva2.optimization.population.Population; import eva2.optimization.population.Population;
import eva2.optimization.population.SolutionSet; import eva2.optimization.population.SolutionSet;

View File

@ -1,9 +1,9 @@
package eva2.optimization.strategies; package eva2.optimization.strategies;
import eva2.gui.BeanInspector; import eva2.gui.BeanInspector;
import eva2.optimization.population.InterfacePopulationChangedEventListener;
import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.individuals.AbstractEAIndividual;
import eva2.optimization.individuals.InterfaceDataTypeDouble; import eva2.optimization.individuals.InterfaceDataTypeDouble;
import eva2.optimization.population.InterfacePopulationChangedEventListener;
import eva2.optimization.population.InterfaceSolutionSet; import eva2.optimization.population.InterfaceSolutionSet;
import eva2.optimization.population.Population; import eva2.optimization.population.Population;
import eva2.optimization.population.SolutionSet; import eva2.optimization.population.SolutionSet;

View File

@ -15,7 +15,9 @@ import eva2.optimization.population.InterfaceSolutionSet;
import eva2.optimization.population.Population; import eva2.optimization.population.Population;
import eva2.optimization.population.PopulationInterface; import eva2.optimization.population.PopulationInterface;
import eva2.optimization.population.SolutionSet; 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.DPoint;
import eva2.tools.chart2d.DPointSet; import eva2.tools.chart2d.DPointSet;
import eva2.tools.math.Jama.Matrix; import eva2.tools.math.Jama.Matrix;

View File

@ -1,14 +1,10 @@
package eva2.optimization.strategies; package eva2.optimization.strategies;
import eva2.optimization.population.InterfacePopulationChangedEventListener;
import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.individuals.AbstractEAIndividual;
import eva2.optimization.individuals.InterfaceGAIndividual; import eva2.optimization.individuals.InterfaceGAIndividual;
import eva2.optimization.operator.selection.InterfaceSelection; import eva2.optimization.operator.selection.InterfaceSelection;
import eva2.optimization.operator.selection.SelectBestIndividuals; import eva2.optimization.operator.selection.SelectBestIndividuals;
import eva2.optimization.population.InterfaceSolutionSet; import eva2.optimization.population.*;
import eva2.optimization.population.PBILPopulation;
import eva2.optimization.population.Population;
import eva2.optimization.population.SolutionSet;
import eva2.problems.AbstractOptimizationProblem; import eva2.problems.AbstractOptimizationProblem;
import eva2.problems.B1Problem; import eva2.problems.B1Problem;
import eva2.problems.InterfaceOptimizationProblem; import eva2.problems.InterfaceOptimizationProblem;

View File

@ -2,19 +2,19 @@ package eva2.optimization.strategies;
import eva2.gui.editor.GenericObjectEditor; import eva2.gui.editor.GenericObjectEditor;
import eva2.gui.plot.Plot; import eva2.gui.plot.Plot;
import eva2.optimization.population.InterfacePopulationChangedEventListener;
import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.individuals.AbstractEAIndividual;
import eva2.optimization.individuals.InterfaceDataTypeDouble; import eva2.optimization.individuals.InterfaceDataTypeDouble;
import eva2.optimization.population.InterfacePopulationChangedEventListener;
import eva2.optimization.population.InterfaceSolutionSet; import eva2.optimization.population.InterfaceSolutionSet;
import eva2.optimization.population.Population; import eva2.optimization.population.Population;
import eva2.optimization.population.SolutionSet; 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.TribesExplorer;
import eva2.optimization.strategies.tribes.TribesParam; import eva2.optimization.strategies.tribes.TribesParam;
import eva2.optimization.strategies.tribes.TribesPosition; import eva2.optimization.strategies.tribes.TribesPosition;
import eva2.optimization.strategies.tribes.TribesSwarm; import eva2.optimization.strategies.tribes.TribesSwarm;
import eva2.problems.AbstractOptimizationProblem;
import eva2.problems.InterfaceHasInitRange;
import eva2.problems.InterfaceOptimizationProblem;
import eva2.util.annotation.Description; import eva2.util.annotation.Description;
import java.util.Iterator; import java.util.Iterator;

View File

@ -1,7 +1,7 @@
package eva2.optimization.strategies.tribes; package eva2.optimization.strategies.tribes;
import eva2.problems.InterfaceOptimizationProblem;
import eva2.optimization.strategies.Tribes; import eva2.optimization.strategies.Tribes;
import eva2.problems.InterfaceOptimizationProblem;
import eva2.tools.math.RNG; import eva2.tools.math.RNG;

View File

@ -3,8 +3,8 @@ package eva2.optimization.strategies.tribes;
import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.individuals.AbstractEAIndividual;
import eva2.optimization.individuals.InterfaceDataTypeDouble; import eva2.optimization.individuals.InterfaceDataTypeDouble;
import eva2.optimization.population.Population; import eva2.optimization.population.Population;
import eva2.problems.InterfaceOptimizationProblem;
import eva2.optimization.strategies.Tribes; import eva2.optimization.strategies.Tribes;
import eva2.problems.InterfaceOptimizationProblem;
import eva2.tools.math.RNG; import eva2.tools.math.RNG;
public class TribesExplorer extends AbstractEAIndividual implements InterfaceDataTypeDouble { public class TribesExplorer extends AbstractEAIndividual implements InterfaceDataTypeDouble {

View File

@ -1,8 +1,8 @@
package eva2.optimization.strategies.tribes; package eva2.optimization.strategies.tribes;
import eva2.optimization.population.Population; import eva2.optimization.population.Population;
import eva2.problems.InterfaceOptimizationProblem;
import eva2.optimization.strategies.Tribes; import eva2.optimization.strategies.Tribes;
import eva2.problems.InterfaceOptimizationProblem;
import eva2.tools.math.RNG; import eva2.tools.math.RNG;
import java.util.ArrayList; import java.util.ArrayList;

View File

@ -5,8 +5,8 @@ import eva2.tools.BasicResourceLoader;
import eva2.tools.StringTools; import eva2.tools.StringTools;
import org.yaml.snakeyaml.Yaml; import org.yaml.snakeyaml.Yaml;
import javax.swing.filechooser.FileFilter;
import javax.swing.*; import javax.swing.*;
import javax.swing.filechooser.FileFilter;
import java.awt.*; import java.awt.*;
import java.io.*; import java.io.*;
import java.util.ArrayList; import java.util.ArrayList;

View File

@ -276,11 +276,13 @@ public abstract class AbstractOptimizationProblem implements InterfaceOptimizati
*/ */
@Override @Override
public String[] getAdditionalDataInfo() { public String[] getAdditionalDataInfo() {
String[] info = null; String[] info;
if (this instanceof InterfaceInterestingHistogram) { if (this instanceof InterfaceInterestingHistogram) {
info = new String[]{"Representation of the current best individual", info = new String[]{
"Fitness histogram of the current population", "Representation of the current best individual",
"Fitness threshold based score of the current population"}; "Fitness histogram of the current population",
"Fitness threshold based score of the current population"
};
} else { } else {
info = new String[]{"Representation of the current best individual"}; info = new String[]{"Representation of the current best individual"};
} }

View File

@ -516,8 +516,7 @@ public abstract class AbstractProblemDouble extends AbstractOptimizationProblem
public String[] getAdditionalDataHeader() { public String[] getAdditionalDataHeader() {
String[] superHeader = super.getAdditionalDataHeader(); String[] superHeader = super.getAdditionalDataHeader();
if (isWithConstraints()) { if (isWithConstraints()) {
return ToolBox.appendArrays(superHeader, new String[]{"rawFit", return ToolBox.appendArrays(superHeader, new String[]{"rawFit","numViol", "sumViol"});
"numViol", "sumViol"});
} else { } else {
return superHeader; return superHeader;
} }
@ -527,13 +526,11 @@ public abstract class AbstractProblemDouble extends AbstractOptimizationProblem
public String[] getAdditionalDataInfo() { public String[] getAdditionalDataInfo() {
String[] superInfo = super.getAdditionalDataInfo(); String[] superInfo = super.getAdditionalDataInfo();
if (isWithConstraints()) { if (isWithConstraints()) {
return ToolBox return ToolBox.appendArrays(superInfo,new String[]{
.appendArrays( "Raw fitness (unpenalized) of the current best individual",
superInfo, "The number of constraints violated by the current best individual",
new String[]{ "The sum of constraint violations of the current best individual"}
"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 { } else {
return superInfo; return superInfo;
} }

View File

@ -1,5 +1,7 @@
package eva2.problems; 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. * @param XOffset The offset for the decision variables.
*/ */
@Parameter(description = "Choose an offset for the decision variables.")
public void setXOffset(double XOffset) { public void setXOffset(double XOffset) {
this.xOffset = XOffset; this.xOffset = XOffset;
} }
@ -56,16 +59,13 @@ public abstract class AbstractProblemDoubleOffset extends AbstractProblemDouble
return this.xOffset; 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 * This method allows you to set/get the offset for the
* objective value. * objective value.
* *
* @param YOffset 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) { public void setYOffset(double YOffset) {
this.yOffset = YOffset; this.yOffset = YOffset;
} }
@ -74,10 +74,6 @@ public abstract class AbstractProblemDoubleOffset extends AbstractProblemDouble
return this.yOffset; return this.yOffset;
} }
public String YOffsetTipText() {
return "Choose an offset for the objective value.";
}
/** /**
* Length of the x vector at is to be optimized * Length of the x vector at is to be optimized
* *

View File

@ -150,7 +150,15 @@ public class F8Problem extends AbstractProblemDoubleOffset
public String[] getAdditionalDataHeader() { public String[] getAdditionalDataHeader() {
String[] superHd = super.getAdditionalDataHeader(); String[] superHd = super.getAdditionalDataHeader();
return ToolBox.appendArrays(new String[]{"numOptimaFound", "maxPeakRatio"}, superHd); 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 @Override

View File

@ -7,8 +7,6 @@ import eva2.optimization.population.PopulationInterface;
* This may be statistics depending on specific optimization methods or a specific application * This may be statistics depending on specific optimization methods or a specific application
* problem. * problem.
* For every additional field, a field name (header) and a value at every iteration must be provided. * For every additional field, a field name (header) and a value at every iteration must be provided.
*
* @author mkron
*/ */
public interface InterfaceAdditionalPopulationInformer { public interface InterfaceAdditionalPopulationInformer {
/** /**

View File

@ -5,9 +5,9 @@ import eva2.optimization.individuals.*;
import eva2.optimization.individuals.codings.gp.*; import eva2.optimization.individuals.codings.gp.*;
import eva2.optimization.population.Population; import eva2.optimization.population.Population;
import eva2.optimization.population.PopulationInterface; import eva2.optimization.population.PopulationInterface;
import eva2.optimization.strategies.InterfaceOptimizer;
import eva2.problems.regression.InterfaceRegressionFunction; import eva2.problems.regression.InterfaceRegressionFunction;
import eva2.problems.regression.RFKoza_GPI_7_3; import eva2.problems.regression.RFKoza_GPI_7_3;
import eva2.optimization.strategies.InterfaceOptimizer;
import eva2.tools.EVAERROR; import eva2.tools.EVAERROR;
import eva2.tools.ToolBox; import eva2.tools.ToolBox;
import eva2.tools.math.RNG; import eva2.tools.math.RNG;

View File

@ -6,12 +6,12 @@ import eva2.gui.plot.Plot;
import eva2.optimization.individuals.*; import eva2.optimization.individuals.*;
import eva2.optimization.population.Population; import eva2.optimization.population.Population;
import eva2.optimization.strategies.InterfaceOptimizer; import eva2.optimization.strategies.InterfaceOptimizer;
import eva2.tools.math.RNG;
import eva2.util.annotation.Description;
import eva2.problems.simple.InterfaceSimpleProblem; import eva2.problems.simple.InterfaceSimpleProblem;
import eva2.problems.simple.SimpleF1; import eva2.problems.simple.SimpleF1;
import eva2.problems.simple.SimpleProblemBinary; import eva2.problems.simple.SimpleProblemBinary;
import eva2.problems.simple.SimpleProblemDouble; import eva2.problems.simple.SimpleProblemDouble;
import eva2.tools.math.RNG;
import eva2.util.annotation.Description;
import eva2.util.annotation.Parameter; import eva2.util.annotation.Parameter;
import java.util.BitSet; import java.util.BitSet;