Package org.biojavax.ga.functions
package org.biojavax.ga.functions
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.
-
ClassDescriptionAbstract implementation of
CrossOverFunction
.Abstract implementation ofMutationFunction
all custom implementations should inherit from here.Crosses two chromosomes.A place holder CrossOverFunction that doesn't perform cross oversCalculates the fitness of anOrganism
in aPopulation
ofOrganisms
Holds the results of a CrossOver event, objects of this type are made byCrossOverFunctions
Holds the results of a CrossOver event, objects of this type are made byCrossOverFunctions
A class that mutates aSymbolList
Place Holder class that doesn't mutate its SymbolListsThis does a 2-point-crossover on two chromosomes keeping the Symbols in each chromosome constant.A Selection function that determines the proportion of individuals in a new population proportionally to their fitness.Selects Organisms for Replication and returns the offspring.Selects individuals who's fitness exceeds a threshold value.Simple Implementation of theCrossOverFunction
interfaceSimple implementation of theGACross
interface.Simple no frills Implementation of the MutationFunction interfaceThis class does a sort of mutation by exchanging two positions on the chromosome.Tournament Selection chooses the best organisms from n random subsets of a given population.