simbad.picoevo.ext.evolution
Class VariationOperator_Individual_NEAT_MutationAddLink

java.lang.Object
  extended by simbad.picoevo.core.evolution.Operator
      extended by simbad.picoevo.core.evolution.VariationOperator
          extended by simbad.picoevo.ext.evolution.VariationOperator_Individual_NEAT_MutationAddLink
All Implemented Interfaces:
java.lang.Cloneable

public class VariationOperator_Individual_NEAT_MutationAddLink
extends VariationOperator


Field Summary
protected  double chanceOfLoopedLink
           
protected  Population_NEATPopulation_InnovationList innovationList
           
protected  double mutationRate
           
protected  int numTrysToAddLink
           
protected  int numTrysToFindLoop
           
(package private)  java.util.Random rand
           
 
Fields inherited from class simbad.picoevo.core.evolution.VariationOperator
_operatorRate
 
Fields inherited from class simbad.picoevo.core.evolution.Operator
_name
 
Constructor Summary
VariationOperator_Individual_NEAT_MutationAddLink(java.lang.String __name)
           
VariationOperator_Individual_NEAT_MutationAddLink(java.lang.String __name, double rate)
           
VariationOperator_Individual_NEAT_MutationAddLink(java.lang.String __name, double rate, double _chanceOfLoopedLink, Population_NEATPopulation_InnovationList _innovationList, int _numTrysToFindLoop, int _numTrysToAddLink)
           
VariationOperator_Individual_NEAT_MutationAddLink(java.lang.String __name, double _chanceOfLoopedLink, Population_NEATPopulation_InnovationList _innovationList, int _numTrysToFindLoop, int _numTrysToAddLink)
           
 
Method Summary
 void applyOperator(EvolutionObject object)
           
private  boolean duplicateLink(int neuronIn, int neuronOut, Individual_NEATIndividual genome)
           
private  int getElementPosition(int neuronId, Individual_NEATIndividual genome)
           
private  int randInt(int x, int y)
           
 
Methods inherited from class simbad.picoevo.core.evolution.VariationOperator
clone, displayInformation, setRate
 
Methods inherited from class simbad.picoevo.core.evolution.Operator
getName
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

mutationRate

protected double mutationRate

chanceOfLoopedLink

protected double chanceOfLoopedLink

innovationList

protected Population_NEATPopulation_InnovationList innovationList

numTrysToFindLoop

protected int numTrysToFindLoop

numTrysToAddLink

protected int numTrysToAddLink

rand

java.util.Random rand
Constructor Detail

VariationOperator_Individual_NEAT_MutationAddLink

public VariationOperator_Individual_NEAT_MutationAddLink(java.lang.String __name)

VariationOperator_Individual_NEAT_MutationAddLink

public VariationOperator_Individual_NEAT_MutationAddLink(java.lang.String __name,
                                                         double rate)

VariationOperator_Individual_NEAT_MutationAddLink

public VariationOperator_Individual_NEAT_MutationAddLink(java.lang.String __name,
                                                         double _chanceOfLoopedLink,
                                                         Population_NEATPopulation_InnovationList _innovationList,
                                                         int _numTrysToFindLoop,
                                                         int _numTrysToAddLink)

VariationOperator_Individual_NEAT_MutationAddLink

public VariationOperator_Individual_NEAT_MutationAddLink(java.lang.String __name,
                                                         double rate,
                                                         double _chanceOfLoopedLink,
                                                         Population_NEATPopulation_InnovationList _innovationList,
                                                         int _numTrysToFindLoop,
                                                         int _numTrysToAddLink)
Method Detail

applyOperator

public void applyOperator(EvolutionObject object)
Specified by:
applyOperator in class VariationOperator

getElementPosition

private int getElementPosition(int neuronId,
                               Individual_NEATIndividual genome)

duplicateLink

private boolean duplicateLink(int neuronIn,
                              int neuronOut,
                              Individual_NEATIndividual genome)

randInt

private int randInt(int x,
                    int y)