diff --git a/src/main/java/eva2/optimization/operator/selection/SelectParticleWheel.java b/src/main/java/eva2/optimization/operator/selection/SelectParticleWheel.java index ebabedcb..67f071e3 100644 --- a/src/main/java/eva2/optimization/operator/selection/SelectParticleWheel.java +++ b/src/main/java/eva2/optimization/operator/selection/SelectParticleWheel.java @@ -2,8 +2,8 @@ package eva2.optimization.operator.selection; import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.operator.selection.probability.InterfaceSelectionProbability; -import eva2.optimization.operator.selection.probability.SelProbStandard; -import eva2.optimization.operator.selection.probability.SelProbStandardScaling; +import eva2.optimization.operator.selection.probability.SelectionProbabilityStandard; +import eva2.optimization.operator.selection.probability.SelectionProbabilityStandardScaling; import eva2.optimization.population.Population; import eva2.tools.math.RNG; import eva2.util.annotation.Description; @@ -23,14 +23,14 @@ public class SelectParticleWheel implements InterfaceSelection, java.io.Serializ * Comment for {@code serialVersionUID} */ private static final long serialVersionUID = 1L; - private InterfaceSelectionProbability selProbCalculator = new SelProbStandard(); + private InterfaceSelectionProbability selProbCalculator = new SelectionProbabilityStandard(); private boolean selectFixedSteps = false; public SelectParticleWheel() { } public SelectParticleWheel(double scalingProb) { - selProbCalculator = new SelProbStandardScaling(scalingProb); + selProbCalculator = new SelectionProbabilityStandardScaling(scalingProb); } public SelectParticleWheel(InterfaceSelectionProbability selProb) { diff --git a/src/main/java/eva2/optimization/operator/selection/SelectXProbRouletteWheel.java b/src/main/java/eva2/optimization/operator/selection/SelectXProbRouletteWheel.java index 2b5b6559..a61f6562 100644 --- a/src/main/java/eva2/optimization/operator/selection/SelectXProbRouletteWheel.java +++ b/src/main/java/eva2/optimization/operator/selection/SelectXProbRouletteWheel.java @@ -2,7 +2,7 @@ package eva2.optimization.operator.selection; import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.operator.selection.probability.InterfaceSelectionProbability; -import eva2.optimization.operator.selection.probability.SelProbStandard; +import eva2.optimization.operator.selection.probability.SelectionProbabilityStandard; import eva2.optimization.population.Population; import eva2.tools.math.RNG; import eva2.util.annotation.Description; @@ -17,7 +17,7 @@ import eva2.util.annotation.Description; public class SelectXProbRouletteWheel implements InterfaceSelection, java.io.Serializable { private transient TreeElement[] treeRoot = null; - private InterfaceSelectionProbability selectionProbability = new SelProbStandard(); + private InterfaceSelectionProbability selectionProbability = new SelectionProbabilityStandard(); private boolean obeyDebsConstViolationPrinciple = true; public SelectXProbRouletteWheel() { diff --git a/src/main/java/eva2/optimization/operator/selection/probability/AbstractSelProb.java b/src/main/java/eva2/optimization/operator/selection/probability/AbstractSelectionProbability.java similarity index 98% rename from src/main/java/eva2/optimization/operator/selection/probability/AbstractSelProb.java rename to src/main/java/eva2/optimization/operator/selection/probability/AbstractSelectionProbability.java index ee2dbb03..4d995b2c 100644 --- a/src/main/java/eva2/optimization/operator/selection/probability/AbstractSelProb.java +++ b/src/main/java/eva2/optimization/operator/selection/probability/AbstractSelectionProbability.java @@ -11,7 +11,7 @@ import java.util.ArrayList; * This abstract implementation gives some general * methods for retrieving and cleaning fitness values. */ -public abstract class AbstractSelProb implements InterfaceSelectionProbability, java.io.Serializable { +public abstract class AbstractSelectionProbability implements InterfaceSelectionProbability, java.io.Serializable { /** * This method allows you to make a deep clone of diff --git a/src/main/java/eva2/optimization/operator/selection/probability/SelProbBoltzman.java b/src/main/java/eva2/optimization/operator/selection/probability/SelectionProbabilityBoltzman.java similarity index 96% rename from src/main/java/eva2/optimization/operator/selection/probability/SelProbBoltzman.java rename to src/main/java/eva2/optimization/operator/selection/probability/SelectionProbabilityBoltzman.java index 14506319..6517df8c 100644 --- a/src/main/java/eva2/optimization/operator/selection/probability/SelProbBoltzman.java +++ b/src/main/java/eva2/optimization/operator/selection/probability/SelectionProbabilityBoltzman.java @@ -9,24 +9,24 @@ import eva2.util.annotation.Description; * invariant to any linear transition function. */ @Description("This is the Boltzman Normation.") -public class SelProbBoltzman extends AbstractSelProb implements java.io.Serializable { +public class SelectionProbabilityBoltzman extends AbstractSelectionProbability implements java.io.Serializable { private double q = 1.0; - public SelProbBoltzman() { + public SelectionProbabilityBoltzman() { } - public SelProbBoltzman(double q) { + public SelectionProbabilityBoltzman(double q) { this.q = q; } - public SelProbBoltzman(SelProbBoltzman a) { + public SelectionProbabilityBoltzman(SelectionProbabilityBoltzman a) { this.q = a.q; } @Override public Object clone() { - return new SelProbBoltzman(this); + return new SelectionProbabilityBoltzman(this); } /** diff --git a/src/main/java/eva2/optimization/operator/selection/probability/SelProbFitnessSharing.java b/src/main/java/eva2/optimization/operator/selection/probability/SelectionProbabilityFitnessSharing.java similarity index 92% rename from src/main/java/eva2/optimization/operator/selection/probability/SelProbFitnessSharing.java rename to src/main/java/eva2/optimization/operator/selection/probability/SelectionProbabilityFitnessSharing.java index d679e3b1..86c37b6e 100644 --- a/src/main/java/eva2/optimization/operator/selection/probability/SelProbFitnessSharing.java +++ b/src/main/java/eva2/optimization/operator/selection/probability/SelectionProbabilityFitnessSharing.java @@ -10,16 +10,16 @@ import eva2.util.annotation.Description; * Here we have the infamous fitness sharing method. */ @Description("This is a fitness sharing based normation method.") -public class SelProbFitnessSharing extends AbstractSelProb implements java.io.Serializable { +public class SelectionProbabilityFitnessSharing extends AbstractSelectionProbability implements java.io.Serializable { - private InterfaceSelectionProbability basicNormationMethod = new SelProbStandard(); + private InterfaceSelectionProbability basicNormationMethod = new SelectionProbabilityStandard(); private InterfaceDistanceMetric distanceMetric = new PhenotypeMetric(); private double sharingDistance = 0.1; - public SelProbFitnessSharing() { + public SelectionProbabilityFitnessSharing() { } - public SelProbFitnessSharing(SelProbFitnessSharing a) { + public SelectionProbabilityFitnessSharing(SelectionProbabilityFitnessSharing a) { if (a.basicNormationMethod != null) { this.basicNormationMethod = (InterfaceSelectionProbability) a.basicNormationMethod.clone(); } @@ -31,7 +31,7 @@ public class SelProbFitnessSharing extends AbstractSelProb implements java.io.Se @Override public Object clone() { - return new SelProbFitnessSharing(this); + return new SelectionProbabilityFitnessSharing(this); } /** diff --git a/src/main/java/eva2/optimization/operator/selection/probability/SelProbInvertByMax.java b/src/main/java/eva2/optimization/operator/selection/probability/SelectionProbabilityInvertByMax.java similarity index 91% rename from src/main/java/eva2/optimization/operator/selection/probability/SelProbInvertByMax.java rename to src/main/java/eva2/optimization/operator/selection/probability/SelectionProbabilityInvertByMax.java index 7c6315ae..6439b045 100644 --- a/src/main/java/eva2/optimization/operator/selection/probability/SelProbInvertByMax.java +++ b/src/main/java/eva2/optimization/operator/selection/probability/SelectionProbabilityInvertByMax.java @@ -10,24 +10,24 @@ import eva2.util.annotation.Description; * */ @Description("This is a standard normation method inverted by maximum fitness.") -public class SelProbInvertByMax extends AbstractSelProb { +public class SelectionProbabilityInvertByMax extends AbstractSelectionProbability { private double maxFit = 1.; - public SelProbInvertByMax() { + public SelectionProbabilityInvertByMax() { } - public SelProbInvertByMax(double mF) { + public SelectionProbabilityInvertByMax(double mF) { maxFit = mF; } - public SelProbInvertByMax(SelProbInvertByMax a) { + public SelectionProbabilityInvertByMax(SelectionProbabilityInvertByMax a) { this.maxFit = a.maxFit; } @Override public Object clone() { - return new SelProbInvertByMax(this); + return new SelectionProbabilityInvertByMax(this); } /** diff --git a/src/main/java/eva2/optimization/operator/selection/probability/SelProbLinearRanking.java b/src/main/java/eva2/optimization/operator/selection/probability/SelectionProbabilityLinearRanking.java similarity index 96% rename from src/main/java/eva2/optimization/operator/selection/probability/SelProbLinearRanking.java rename to src/main/java/eva2/optimization/operator/selection/probability/SelectionProbabilityLinearRanking.java index b3de4af5..1f116a5a 100644 --- a/src/main/java/eva2/optimization/operator/selection/probability/SelProbLinearRanking.java +++ b/src/main/java/eva2/optimization/operator/selection/probability/SelectionProbabilityLinearRanking.java @@ -7,22 +7,22 @@ import eva2.util.annotation.Description; * A linear ranking method with offsets. */ @Description("This is linear ranking normation.") -public class SelProbLinearRanking extends AbstractSelProb implements java.io.Serializable { +public class SelectionProbabilityLinearRanking extends AbstractSelectionProbability implements java.io.Serializable { private double nappaPlus = 1.1; private double nappaMinus = 0.9; - public SelProbLinearRanking() { + public SelectionProbabilityLinearRanking() { } - public SelProbLinearRanking(SelProbLinearRanking a) { + public SelectionProbabilityLinearRanking(SelectionProbabilityLinearRanking a) { this.nappaPlus = a.nappaPlus; this.nappaMinus = a.nappaMinus; } @Override public Object clone() { - return new SelProbLinearRanking(this); + return new SelectionProbabilityLinearRanking(this); } /** diff --git a/src/main/java/eva2/optimization/operator/selection/probability/SelProbNonLinearRanking.java b/src/main/java/eva2/optimization/operator/selection/probability/SelectionProbabilityNonLinearRanking.java similarity index 95% rename from src/main/java/eva2/optimization/operator/selection/probability/SelProbNonLinearRanking.java rename to src/main/java/eva2/optimization/operator/selection/probability/SelectionProbabilityNonLinearRanking.java index 92a62409..0ffd3535 100644 --- a/src/main/java/eva2/optimization/operator/selection/probability/SelProbNonLinearRanking.java +++ b/src/main/java/eva2/optimization/operator/selection/probability/SelectionProbabilityNonLinearRanking.java @@ -8,24 +8,24 @@ import eva2.util.annotation.Description; * the given optimization problem i guess. */ @Description("This is non-linear ranking normation.") -public class SelProbNonLinearRanking extends AbstractSelProb implements java.io.Serializable { +public class SelectionProbabilityNonLinearRanking extends AbstractSelectionProbability implements java.io.Serializable { private double c = 0.04; - public SelProbNonLinearRanking() { + public SelectionProbabilityNonLinearRanking() { } - public SelProbNonLinearRanking(double theC) { + public SelectionProbabilityNonLinearRanking(double theC) { this.c = theC; } - public SelProbNonLinearRanking(SelProbNonLinearRanking a) { + public SelectionProbabilityNonLinearRanking(SelectionProbabilityNonLinearRanking a) { this.c = a.c; } @Override public Object clone() { - return new SelProbNonLinearRanking(this); + return new SelectionProbabilityNonLinearRanking(this); } /** diff --git a/src/main/java/eva2/optimization/operator/selection/probability/SelProbRanking.java b/src/main/java/eva2/optimization/operator/selection/probability/SelectionProbabilityRanking.java similarity index 92% rename from src/main/java/eva2/optimization/operator/selection/probability/SelProbRanking.java rename to src/main/java/eva2/optimization/operator/selection/probability/SelectionProbabilityRanking.java index 609bab63..0bcf47ec 100644 --- a/src/main/java/eva2/optimization/operator/selection/probability/SelProbRanking.java +++ b/src/main/java/eva2/optimization/operator/selection/probability/SelectionProbabilityRanking.java @@ -8,17 +8,17 @@ import eva2.util.annotation.Description; * This truly scaling invariant. */ @Description("This is ranking normation.") -public class SelProbRanking extends AbstractSelProb implements java.io.Serializable { +public class SelectionProbabilityRanking extends AbstractSelectionProbability implements java.io.Serializable { - public SelProbRanking() { + public SelectionProbabilityRanking() { } - public SelProbRanking(SelProbRanking a) { + public SelectionProbabilityRanking(SelectionProbabilityRanking a) { } @Override public Object clone() { - return new SelProbRanking(this); + return new SelectionProbabilityRanking(this); } /** diff --git a/src/main/java/eva2/optimization/operator/selection/probability/SelProbStandard.java b/src/main/java/eva2/optimization/operator/selection/probability/SelectionProbabilityStandard.java similarity index 92% rename from src/main/java/eva2/optimization/operator/selection/probability/SelProbStandard.java rename to src/main/java/eva2/optimization/operator/selection/probability/SelectionProbabilityStandard.java index a3022a76..9c04ee6a 100644 --- a/src/main/java/eva2/optimization/operator/selection/probability/SelProbStandard.java +++ b/src/main/java/eva2/optimization/operator/selection/probability/SelectionProbabilityStandard.java @@ -9,17 +9,17 @@ import eva2.util.annotation.Description; * p(i is selected) = exp(-fitness(i))/sum_j(exp(-fitness(j))) */ @Description("This is a standard normation method using the exp function.") -public class SelProbStandard extends AbstractSelProb implements java.io.Serializable { +public class SelectionProbabilityStandard extends AbstractSelectionProbability implements java.io.Serializable { - public SelProbStandard() { + public SelectionProbabilityStandard() { } - public SelProbStandard(SelProbStandard a) { + public SelectionProbabilityStandard(SelectionProbabilityStandard a) { } @Override public Object clone() { - return new SelProbStandard(this); + return new SelectionProbabilityStandard(this); } /** diff --git a/src/main/java/eva2/optimization/operator/selection/probability/SelProbStandardScaling.java b/src/main/java/eva2/optimization/operator/selection/probability/SelectionProbabilityStandardScaling.java similarity index 94% rename from src/main/java/eva2/optimization/operator/selection/probability/SelProbStandardScaling.java rename to src/main/java/eva2/optimization/operator/selection/probability/SelectionProbabilityStandardScaling.java index ed42d34a..a1687f1f 100644 --- a/src/main/java/eva2/optimization/operator/selection/probability/SelProbStandardScaling.java +++ b/src/main/java/eva2/optimization/operator/selection/probability/SelectionProbabilityStandardScaling.java @@ -7,24 +7,24 @@ import eva2.util.annotation.Description; * A simple sum with a scaling factor. */ @Description("This is a standard normation method with scaling.") -public class SelProbStandardScaling extends AbstractSelProb implements java.io.Serializable { +public class SelectionProbabilityStandardScaling extends AbstractSelectionProbability implements java.io.Serializable { private double Q = 0; - public SelProbStandardScaling() { + public SelectionProbabilityStandardScaling() { } - public SelProbStandardScaling(double q) { + public SelectionProbabilityStandardScaling(double q) { Q = q; } - public SelProbStandardScaling(SelProbStandardScaling a) { + public SelectionProbabilityStandardScaling(SelectionProbabilityStandardScaling a) { this.Q = a.Q; } @Override public Object clone() { - return new SelProbStandardScaling(this); + return new SelectionProbabilityStandardScaling(this); } /** diff --git a/src/main/java/eva2/optimization/population/Population.java b/src/main/java/eva2/optimization/population/Population.java index 3fcf3475..f0b17fd6 100644 --- a/src/main/java/eva2/optimization/population/Population.java +++ b/src/main/java/eva2/optimization/population/Population.java @@ -7,7 +7,7 @@ import eva2.optimization.operator.distancemetric.EuclideanMetric; import eva2.optimization.operator.distancemetric.InterfaceDistanceMetric; import eva2.optimization.operator.distancemetric.PhenotypeMetric; import eva2.optimization.operator.postprocess.PostProcess; -import eva2.optimization.operator.selection.probability.AbstractSelProb; +import eva2.optimization.operator.selection.probability.AbstractSelectionProbability; import eva2.tools.EVAERROR; import eva2.tools.Pair; import eva2.tools.Serializer; @@ -2143,7 +2143,7 @@ public class Population extends ArrayList implements Popul * @param criterion * @return */ - public double[] getCenterWeighted(AbstractSelProb selProb, int criterion, boolean obeyConst) { + public double[] getCenterWeighted(AbstractSelectionProbability selProb, int criterion, boolean obeyConst) { selProb.computeSelectionProbability(this, "Fitness", obeyConst); double[] mean = AbstractEAIndividual.getDoublePosition(getEAIndividual(0));