diff --git a/src/eva2/server/go/individuals/AbstractEAIndividual.java b/src/eva2/server/go/individuals/AbstractEAIndividual.java index d5f91611..5b70f889 100644 --- a/src/eva2/server/go/individuals/AbstractEAIndividual.java +++ b/src/eva2/server/go/individuals/AbstractEAIndividual.java @@ -16,7 +16,6 @@ import eva2.server.go.operators.crossover.NoCrossover; import eva2.server.go.operators.mutation.InterfaceMutation; import eva2.server.go.operators.mutation.NoMutation; import eva2.server.go.populations.Population; -import eva2.server.go.problems.AbstractOptimizationProblem; import eva2.server.go.problems.InterfaceOptimizationProblem; import eva2.tools.EVAERROR; @@ -913,6 +912,9 @@ public abstract class AbstractEAIndividual implements IndividualInterface, java. sb.append(b[i].getStringRepresentation()); if ((i+1) < b.length) sb.append(separator); } + } else if (BeanInspector.hasMethod(individual, "toString") != null) { + EVAERROR.errorMsgOnce("warning in AbstractEAIndividual::getDefaultDataString: type " + individual.getClass() + " has no default data representation, using toString..."); + return individual.toString(); } else { System.err.println("error in AbstractEAIndividual::getDefaultDataString: type " + individual.getClass() + " not implemented"); } diff --git a/src/eva2/server/go/strategies/EvolutionStrategies.java b/src/eva2/server/go/strategies/EvolutionStrategies.java index 99d259c4..9bb47824 100644 --- a/src/eva2/server/go/strategies/EvolutionStrategies.java +++ b/src/eva2/server/go/strategies/EvolutionStrategies.java @@ -34,11 +34,11 @@ import eva2.server.go.problems.InterfaceOptimizationProblem; public class EvolutionStrategies implements InterfaceOptimizer, java.io.Serializable { //private double m_MyuRatio = 6; - private int m_Mu = 5; - private int m_Lambda = 20; - private boolean m_UsePlusStrategy = false; - private Population m_Population = new Population(); - private InterfaceOptimizationProblem m_Problem = new B1Problem(); + protected int m_Mu = 5; + protected int m_Lambda = 20; + protected boolean m_UsePlusStrategy = false; + protected Population m_Population = new Population(); + protected InterfaceOptimizationProblem m_Problem = new B1Problem(); private InterfaceSelection m_ParentSelection = new SelectRandom(); private InterfaceSelection m_PartnerSelection = new SelectRandom(); private InterfaceSelection m_EnvironmentSelection = new SelectBestIndividuals(); @@ -125,7 +125,7 @@ public class EvolutionStrategies implements InterfaceOptimizer, java.io.Serializ * given problem. * @param population The population that is to be evaluated */ - private void evaluatePopulation(Population population) { + protected void evaluatePopulation(Population population) { this.m_Problem.evaluate(population); population.incrGeneration(); } @@ -144,7 +144,8 @@ public class EvolutionStrategies implements InterfaceOptimizer, java.io.Serializ // else this.m_Population.setPopulationSize(lambda); // } - /** This method will generate the offspring population from the + /** + * This method will generate the offspring population from the * given population of evaluated individuals. */ protected Population generateEvalChildren(Population fromPopulation) {