net.sourceforge.cilib.problem.coevolution
Class CompetitiveCoevolutionGameLearningOptimizationProblem
java.lang.Object
net.sourceforge.cilib.problem.OptimisationProblemAdapter
net.sourceforge.cilib.problem.coevolution.PerformanceEvaluationOptimizationProblem
net.sourceforge.cilib.problem.coevolution.GameLearningOptimizationProblem
net.sourceforge.cilib.problem.coevolution.CompetitiveCoevolutionGameLearningOptimizationProblem
- All Implemented Interfaces:
- Serializable, CoevolutionOptimisationProblem, OptimisationProblem, Problem, Cloneable
public class CompetitiveCoevolutionGameLearningOptimizationProblem
- extends GameLearningOptimizationProblem
- implements CoevolutionOptimisationProblem
This class is used by CoevolutionAlgorithm to optimize a Game.
- Author:
- leo
- See Also:
- Serialized Form
Method Summary |
protected Fitness |
calculateFitness(Type solution)
Determine the Fitness of the current Problem instance
based on the provided solution . |
Fitness |
evaluateEntity(int populationID,
int evaluationRound,
Blackboard<Enum<?>,Type> entityData)
This method evaluates an entity with regards to a number of groups of entities depending on the instance of the problem |
int |
getAmountSubPopulations()
this will correlate with the amount of groups of entites an individual required for evaluation |
DomainRegistry |
getSubPopulationDomain(int populationNo)
This method is used by the coevolution algorithm to assign an optimization problem instance to each sub population
this optimization problem needs to define the domain for that specific sub population |
void |
initializeEntities(PopulationBasedAlgorithm pba,
int populationID)
This method adds any problem specific entries to the all the populations entites's blackboards. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
CompetitiveCoevolutionGameLearningOptimizationProblem
public CompetitiveCoevolutionGameLearningOptimizationProblem()
CompetitiveCoevolutionGameLearningOptimizationProblem
public CompetitiveCoevolutionGameLearningOptimizationProblem(CompetitiveCoevolutionGameLearningOptimizationProblem copy)
- Copy constructor
- Parameters:
copy
-
evaluateEntity
public Fitness evaluateEntity(int populationID,
int evaluationRound,
Blackboard<Enum<?>,Type> entityData)
- This method evaluates an entity with regards to a number of groups of entities depending on the instance of the problem
- Specified by:
evaluateEntity
in interface CoevolutionOptimisationProblem
entityData
- the blackboard of the Entity being evaluated. This contains the solution vector, scoreboard and competitor list
- Returns:
- the entitie's fitness
calculateFitness
protected Fitness calculateFitness(Type solution)
- Determine the
Fitness
of the current Problem
instance
based on the provided solution
.
- Overrides:
calculateFitness
in class GameLearningOptimizationProblem
- Parameters:
solution
- The Type
representing the candidate solution.
- Returns:
- The
Fitness
of the solution
in the current Problem. - See Also:
OptimisationProblemAdapter.getFitness(Type, boolean)
initializeEntities
public void initializeEntities(PopulationBasedAlgorithm pba,
int populationID)
- This method adds any problem specific entries to the all the populations entites's blackboards.
- Specified by:
initializeEntities
in interface CoevolutionOptimisationProblem
- Parameters:
pba
- the sub population to initializepopulationID
- the populationID of the sub population
getAmountSubPopulations
public int getAmountSubPopulations()
- this will correlate with the amount of groups of entites an individual required for evaluation
- Specified by:
getAmountSubPopulations
in interface CoevolutionOptimisationProblem
- Returns:
- the amount of sub population for this problem
getSubPopulationDomain
public DomainRegistry getSubPopulationDomain(int populationNo)
- This method is used by the coevolution algorithm to assign an optimization problem instance to each sub population
this optimization problem needs to define the domain for that specific sub population
- Specified by:
getSubPopulationDomain
in interface CoevolutionOptimisationProblem
- Parameters:
populationNo
- the population number for the sub population for which this problem is generated
- Returns:
- the optimization problem for the sub population
Copyright © 2009 CIRG. All Rights Reserved.