ec.app.coevolve2
Class CoevolutionaryRosenbrock
java.lang.Object
ec.Problem
ec.app.coevolve2.CoevolutionaryRosenbrock
- All Implemented Interfaces:
- GroupedProblemForm, Prototype, Setup, java.io.Serializable, java.lang.Cloneable
public class CoevolutionaryRosenbrock
- extends Problem
- implements GroupedProblemForm
- See Also:
- Serialized Form
|
Method Summary |
void |
evaluate(EvolutionState state,
Individual[] ind,
boolean[] updateFitness,
boolean countVictoriesOnly,
int threadnum)
|
void |
evaluate(EvolutionState state,
Individual[] ind,
boolean[] updateFitness,
boolean countVictoriesOnly,
int[] subpops,
int threadnum)
Evaluates the individuals found in ind together. |
void |
postprocessPopulation(EvolutionState state,
Population pop)
Finish processing the population (such as fitness information) after evaluation. |
void |
preprocessPopulation(EvolutionState state,
Population pop)
Set up the population pop (such as fitness information) prior to evaluation. |
| Methods inherited from class ec.Problem |
canEvaluate, clone, closeContacts, defaultBase, describe, describe, evaluate, evaluate, finishEvaluating, getBase, initializeContacts, prepareToEvaluate, reinitializeContacts, setBase, setup |
| Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
CoevolutionaryRosenbrock
public CoevolutionaryRosenbrock()
preprocessPopulation
public void preprocessPopulation(EvolutionState state,
Population pop)
- Description copied from interface:
GroupedProblemForm
- Set up the population pop (such as fitness information) prior to evaluation.
Although this method is not static, you should not use it to write to any instance
variables in the GroupedProblem instance; this is because it's possible that
the instance used is in fact the prototype, and you will have no guarantees that
your instance variables will remain valid during the evaluate(...) process.
Do not assume that pop will be the same as state.pop -- it
may not. state is only provided to give you access to EvolutionState
features.
- Specified by:
preprocessPopulation in interface GroupedProblemForm
postprocessPopulation
public void postprocessPopulation(EvolutionState state,
Population pop)
- Description copied from interface:
GroupedProblemForm
- Finish processing the population (such as fitness information) after evaluation.
Although this method is not static, you should not use it to write to any instance
variables in the GroupedProblem instance; this is because it's possible that
the instance used is in fact the prototype, and you will have no guarantees that
your instance variables will remain valid during the evaluate(...) process.
Do not assume that pop will be the same as state.pop -- it
may not. state is only provided to give you access to EvolutionState
features.
- Specified by:
postprocessPopulation in interface GroupedProblemForm
evaluate
public void evaluate(EvolutionState state,
Individual[] ind,
boolean[] updateFitness,
boolean countVictoriesOnly,
int threadnum)
- Specified by:
evaluate in interface GroupedProblemForm
evaluate
public void evaluate(EvolutionState state,
Individual[] ind,
boolean[] updateFitness,
boolean countVictoriesOnly,
int[] subpops,
int threadnum)
- Description copied from interface:
GroupedProblemForm
- Evaluates the individuals found in ind together. If updateFitness[i] is true,
then you should use this evaluation to update the fitness of the individual in
ind[i]. Individuals which are updated should have their fitnesses modified so
that immediately after evaluation (and prior to postprocessPopulation(...) being
called) individuals' fitnesses can be checked to see which is better than which.
Do not assume that the individuals in ind will actually be in state.pop
(they may not -- this method may be called at the end of a run to determine the
best individual of the run in some kind of contest).
If countVictoriesOnly is true, you should update fitnesses such that if two
individuals' fitnesses are compared, the one which has won the most times
has a superior fitness. This will be used in single elimination tournament
style evaluators.
- Specified by:
evaluate in interface GroupedProblemForm