See: Description
| Interface | Description |
|---|---|
| CrossOverFunction |
Crosses two chromosomes.
|
| FitnessFunction |
Calculates the fitness of an
Organism in a
Population of Organisms |
| GACross |
Holds the results of a CrossOver event, objects of this type are made by
CrossOverFunctions |
| GACrossResult |
Holds the results of a CrossOver event, objects of this type are made by
CrossOverFunctions |
| MutationFunction |
A class that mutates a
SymbolList |
| SelectionFunction |
Selects Organisms for Replication and returns the offspring.
|
| Class | Description |
|---|---|
| AbstractCrossOverFunction |
Abstract implementation of
CrossOverFunction. |
| AbstractMutationFunction |
Abstract implementation of
MutationFunction all custom
implementations should inherit from here. |
| CrossOverFunction.NoCross |
A place holder CrossOverFunction that doesn't perform cross overs
|
| MutationFunction.NoMutation |
Place Holder class that doesn't mutate its SymbolLists
|
| OrderCrossover |
This does a 2-point-crossover on two chromosomes keeping the Symbols in each
chromosome constant.
|
| ProportionalSelection |
A Selection function that determines the proportion of individuals in a new
population proportionally to their fitness.
|
| SelectionFunction.SelectAll | |
| SelectionFunction.Threshold |
Selects individuals who's fitness exceeds a threshold value.
|
| SimpleCrossOverFunction |
Simple Implementation of the
CrossOverFunction interface |
| SimpleGACrossResult |
Simple implementation of the
GACross interface. |
| SimpleMutationFunction |
Simple no frills Implementation of the MutationFunction interface
This class is final, custom implementations should extend
AbstractMutationFunction |
| SwapMutationFunction |
This class does a sort of mutation by exchanging two positions on the
chromosome.
|
| TournamentSelection |
Tournament Selection chooses the best organisms from n random subsets of a
given population.
|
GA functions
A genetic algorithm requires a number of functions. This package provides the interfaces for those functions and simple implementations. By implementing, mixing and matching these functions you can create highly customized genetic algorithms.
A GA requires (in alphabetical order): a CrossOverFunction
to govern the behaivour of 'chromosome' crossovers, a FitnessFunction
to determine the fitness of each organism after each iteration, a
MutationFuntion to govern mutation behaivour, and a SelectionFunction
to select organisms for the next round of replication.
Copyright © 2020 BioJava. All rights reserved.