public class FitnessProportionateBreeder extends Object implements Breeder
A breeder which implements Fitness-proportionate reproduction. Agents are
selected for inclusion in the next generation with a probability
proportionate to their fitness, as defined by an exogenous fitness function.
When agents reproduce they do so via an ImitationOperator
which
specifies how agents are copied from one generation to the next.
Modifier and Type | Field and Description |
---|---|
protected FitnessFunction |
fitnessFunction
The fitness function which specifies the fitness of each agent.
|
protected ImitationOperator |
imitationFunction |
protected double |
imitationProbability |
protected cern.jet.random.engine.RandomEngine |
prng |
protected double |
totalFitness |
Constructor and Description |
---|
FitnessProportionateBreeder() |
Modifier and Type | Method and Description |
---|---|
int |
choose(double[] cummulativeFitnesses) |
double[] |
cummulativeFitnesses(AgentList agents) |
double |
getFitness(Agent i) |
FitnessFunction |
getFitnessFunction() |
ImitationOperator |
getImitationOperator() |
double |
getImitationProbability() |
cern.jet.random.engine.RandomEngine |
getPrng() |
void |
reproduce(Agent child,
Agent parent) |
AgentList |
reproduce(AgentList currentGeneration)
Compute the next generation of agents.
|
void |
setFitnessFunction(FitnessFunction fitnessFunction) |
void |
setImitationOperator(ImitationOperator imitationFunction) |
void |
setImitationProbability(double imitationProbability) |
void |
setPrng(cern.jet.random.engine.RandomEngine prng) |
protected FitnessFunction fitnessFunction
protected ImitationOperator imitationFunction
protected cern.jet.random.engine.RandomEngine prng
protected double totalFitness
protected double imitationProbability
public AgentList reproduce(AgentList currentGeneration)
Breeder
public int choose(double[] cummulativeFitnesses)
public double[] cummulativeFitnesses(AgentList agents)
public double getFitness(Agent i)
public FitnessFunction getFitnessFunction()
public void setFitnessFunction(FitnessFunction fitnessFunction)
public cern.jet.random.engine.RandomEngine getPrng()
public void setPrng(cern.jet.random.engine.RandomEngine prng)
public ImitationOperator getImitationOperator()
public void setImitationOperator(ImitationOperator imitationFunction)
public double getImitationProbability()
public void setImitationProbability(double imitationProbability)
Copyright © 2014. All rights reserved.