public interface GeneticAlgorithm extends Changeable
Populations
| Modifier and Type | Field and Description |
|---|---|
static ChangeType |
CROSS_OVER_FUNCTION |
static ChangeType |
FITNESS_FUNCTION |
static ChangeType |
FUNCTION |
static ChangeType |
MUTATION_FUNCTION |
static ChangeType |
POPULATION |
static ChangeType |
SELECTION_FUNCTION |
| Modifier and Type | Method and Description |
|---|---|
CrossOverFunction |
getCrossOverFunction() |
FitnessFunction |
getFitnessFunction()
Returns the fitness function, i.e. the class that computes the fitness of
each organism in a population.
|
int |
getGeneration() |
MutationFunction |
getMutationFunction() |
Population |
getPopulation()
The registered
Population |
SelectionFunction |
getSelectionFunction() |
void |
run(GAStoppingCriteria stoppingCriteria)
Iterates the Algorithm until the stopping criteria are met.
|
void |
setCrossOverFunction(CrossOverFunction function)
Changes the
CrossOverFunction used to CrossOver Chromosomes |
void |
setFitnessFunction(FitnessFunction func)
The fitness function that will be used to compute the fitness of each
organism.
|
void |
setMutationFunction(MutationFunction function)
Sets the current
MutationFunction |
void |
setPopulation(Population pop)
Sets the
Population of Organisms to the
Algorithm. |
void |
setSelectionFunction(SelectionFunction function)
Changes the
SelectionFunction used to select candidates for
the next generation |
addChangeListener, addChangeListener, isUnchanging, removeChangeListener, removeChangeListenerstatic final ChangeType FITNESS_FUNCTION
static final ChangeType POPULATION
static final ChangeType FUNCTION
static final ChangeType CROSS_OVER_FUNCTION
static final ChangeType MUTATION_FUNCTION
static final ChangeType SELECTION_FUNCTION
void setFitnessFunction(FitnessFunction func) throws ChangeVetoException
func - the FitnessFunction to be usedChangeVetoException - if the change is vetoed.FitnessFunction getFitnessFunction()
void setPopulation(Population pop) throws ChangeVetoException
Population of Organisms to the
Algorithm.pop - the population to add.ChangeVetoException - if new populations are not allowed.Population getPopulation()
PopulationPopulation being operated on.void setSelectionFunction(SelectionFunction function) throws ChangeVetoException
SelectionFunction used to select candidates for
the next generationfunction - a SelectionFunctionChangeVetoException - if the SelectionFunction is not allowed to be
changedSelectionFunction getSelectionFunction()
SelectionFunctionvoid setCrossOverFunction(CrossOverFunction function) throws ChangeVetoException
CrossOverFunction used to CrossOver Chromosomesfunction - a CrossOverFunctionChangeVetoException - if the CrossOverFunction is not allowed to be
changedCrossOverFunction getCrossOverFunction()
void setMutationFunction(MutationFunction function) throws ChangeVetoException
MutationFunctionfunction - a MutationFunctionChangeVetoException - if the MutationFunction change is Vetoed by a
listener.MutationFunction getMutationFunction()
MutationFunctionint getGeneration()
void run(GAStoppingCriteria stoppingCriteria) throws ChangeVetoException, IllegalAlphabetException, IllegalSymbolException
stoppingCriteria - determines when to stop.ChangeVetoException - if the Population being modified is lockedIllegalAlphabetException - if the MutationFunction chosen attempts to modify a Symbol from
one of the Chromosomes to a Symbol outside of its Alphabet.IllegalSymbolException - if the MutationFunction chosen is using the wrong Alphabet.Copyright © 2014 BioJava. All rights reserved.