|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.encog.neural.neat.training.opp.NEATMutation
public abstract class NEATMutation
This class represents a NEAT mutation. NEAT supports several different types of mutations. This class provides common utility needed by any sort of a NEAT mutation. This class is abstract and cannot be used by itself. ----------------------------------------------------------------------------- http://www.cs.ucf.edu/~kstanley/ Encog's NEAT implementation was drawn from the following three Journal Articles. For more complete BibTeX sources, see NEATNetwork.java. Evolving Neural Networks Through Augmenting Topologies Generating Large-Scale Neural Networks Through Discovering Geometric Regularities Automatic feature selection in neuroevolution
Constructor Summary | |
---|---|
NEATMutation()
|
Method Summary | |
---|---|
NEATNeuronGene |
chooseRandomNeuron(NEATGenome target,
boolean choosingFrom)
Choose a random neuron. |
void |
createLink(NEATGenome target,
long neuron1ID,
long neuron2ID,
double weight)
Create a link between two neuron id's. |
int |
getElementPos(NEATGenome target,
long neuronID)
Get the specified neuron's index. |
EvolutionaryAlgorithm |
getOwner()
|
void |
init(EvolutionaryAlgorithm theOwner)
Called to setup the evolutionary operator. |
boolean |
isDuplicateLink(NEATGenome target,
long fromNeuronID,
long toNeuronID)
Determine if this is a duplicate link. |
boolean |
isNeuronNeeded(NEATGenome target,
long neuronID)
Determines if a neuron is still needed. |
NEATGenome |
obtainGenome(Genome[] parents,
int parentIndex,
Genome[] offspring,
int offspringIndex)
Obtain the NEATGenome that we will mutate. |
int |
offspringProduced()
|
int |
parentsNeeded()
|
void |
removeNeuron(NEATGenome target,
long neuronID)
Remove the specified neuron. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface org.encog.ml.ea.opp.EvolutionaryOperator |
---|
performOperation |
Constructor Detail |
---|
public NEATMutation()
Method Detail |
---|
public NEATNeuronGene chooseRandomNeuron(NEATGenome target, boolean choosingFrom)
target
- The target genome. Should the input and bias neurons be
included.choosingFrom
- True if we are chosing from all neurons, false if we exclude
the input and bias.
public void createLink(NEATGenome target, long neuron1ID, long neuron2ID, double weight)
target
- The target genome.neuron1ID
- The id of the source neuron.neuron2ID
- The id of the target neuron.weight
- The weight of this new link.public int getElementPos(NEATGenome target, long neuronID)
neuronID
- The neuron id to check for.
public EvolutionaryAlgorithm getOwner()
public void init(EvolutionaryAlgorithm theOwner)
init
in interface EvolutionaryOperator
theOwner
- The evolutionary algorithm used with this operator.public boolean isDuplicateLink(NEATGenome target, long fromNeuronID, long toNeuronID)
fromNeuronID
- The from neuron id.toNeuronID
- The to neuron id.
public boolean isNeuronNeeded(NEATGenome target, long neuronID)
target
- The target genome.neuronID
- The neuron id to check for.
public NEATGenome obtainGenome(Genome[] parents, int parentIndex, Genome[] offspring, int offspringIndex)
parents
- The parents.parentIndex
- The parent index.offspring
- The offspring.offspringIndex
- The offspring index.
public int offspringProduced()
offspringProduced
in interface EvolutionaryOperator
public int parentsNeeded()
parentsNeeded
in interface EvolutionaryOperator
public void removeNeuron(NEATGenome target, long neuronID)
target
- The target genome.neuronID
- The neuron to remove.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |