public class GeneticAlgorithm
extends java.lang.Object
| Constructor and Description |
|---|
GeneticAlgorithm(CrossoverPolicy crossoverPolicy,
double crossoverRate,
MutationPolicy mutationPolicy,
double mutationRate,
SelectionPolicy selectionPolicy) |
| Modifier and Type | Method and Description |
|---|---|
Population |
evolve(Population initial,
StoppingCondition condition)
Evolve the given population.
|
CrossoverPolicy |
getCrossoverPolicy()
Returns the crossover policy.
|
double |
getCrossoverRate()
Returns the crossover rate.
|
int |
getGenerationsEvolved()
Returns the number of generations evolved to
reach
StoppingCondition in the last run. |
MutationPolicy |
getMutationPolicy()
Returns the mutation policy.
|
double |
getMutationRate()
Returns the mutation rate.
|
static RandomGenerator |
getRandomGenerator()
Returns the (static) random generator.
|
SelectionPolicy |
getSelectionPolicy()
Returns the selection policy.
|
Population |
nextGeneration(Population current)
Evolve the given population into the next generation.
|
static void |
setRandomGenerator(RandomGenerator random)
Set the (static) random generator.
|
public GeneticAlgorithm(CrossoverPolicy crossoverPolicy, double crossoverRate, MutationPolicy mutationPolicy, double mutationRate, SelectionPolicy selectionPolicy)
crossoverPolicy - The CrossoverPolicycrossoverRate - The crossover rate as a percentage (0-1 inclusive)mutationPolicy - The MutationPolicymutationRate - The mutation rate as a percentage (0-1 inclusive)selectionPolicy - The SelectionPolicypublic static void setRandomGenerator(RandomGenerator random)
random - random generatorpublic static RandomGenerator getRandomGenerator()
public Population evolve(Population initial, StoppingCondition condition)
generationsEvolved
property with the number of generations evolved before the StoppingCondition
is satisfied.initial - the initial, seed population.condition - the stopping condition used to stop evolution.public Population nextGeneration(Population current)
Evolve the given population into the next generation.
current
generation, using its nextGeneration methodcurrentgetCrossoverRate(), apply
configured CrossoverPolicy to parentsgetMutationRate(), apply
configured MutationPolicy to each of the offspringcurrent - the current population.public CrossoverPolicy getCrossoverPolicy()
public double getCrossoverRate()
public MutationPolicy getMutationPolicy()
public double getMutationRate()
public SelectionPolicy getSelectionPolicy()
public int getGenerationsEvolved()
StoppingCondition in the last run.Copyright © 2010 - 2023 Adobe. All Rights Reserved