This package provides Genetic Algorithms components and implementations.
Interface Summary Interface Description CrossoverPolicyPolicy used to create a pair of new chromosomes by performing a crossover operation on a source pair of chromosomes. FitnessFitness of a chromosome. MutationPolicyAlgorithm used to mutate a chromosome. PermutationChromosome<T>Interface indicating that the chromosome represents a permutation of objects. PopulationA collection of chromosomes that facilitates generational evolution. SelectionPolicyAlgorithm used to select a chromosome pair from a population. StoppingConditionAlgorithm used to determine when to stop evolution.
Class Summary Class Description AbstractListChromosome<T>Chromosome represented by an immutable list of a fixed length. BinaryChromosomeChromosome represented by a vector of 0s and 1s. BinaryMutationMutation for
ChromosomeIndividual in a population. ChromosomePairA pair of
CycleCrossover<T>Cycle Crossover [CX] builds offspring from ordered chromosomes by identifying cycles between two parent chromosomes. ElitisticListPopulationPopulation of chromosomes which uses elitism (certain percentage of the best chromosomes is directly copied to the next generation). FixedElapsedTimeStops after a fixed amount of time has elapsed. FixedGenerationCountStops after a fixed number of generations. GeneticAlgorithmImplementation of a genetic algorithm. ListPopulationPopulation of chromosomes represented by a
NPointCrossover<T>N-point crossover policy. OnePointCrossover<T>One point crossover policy. OrderedCrossover<T>Order 1 Crossover [OX1] builds offspring from ordered chromosomes by copying a consecutive slice from one parent, and filling up the remaining genes from the other parent as they appear. RandomKey<T>Random Key chromosome is used for permutation representation. RandomKeyMutationMutation operator for
TournamentSelectionTournament selection scheme. UniformCrossover<T>Perform Uniform Crossover [UX] on the specified chromosomes.
Exception Summary Exception Description InvalidRepresentationExceptionException indicating that the representation of a chromosome is not valid.