|
||||||||||
| 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 EvolutionaryOperatortheOwner - 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 EvolutionaryOperatorpublic 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 | |||||||||