Documentation of 'org.encog.neural.neat.training.NEATInnovationList' Java class
NEATInnovationList
org.encog.neural.neat.training

Class NEATInnovationList

  • All Implemented Interfaces:
    java.io.Serializable


    public class NEATInnovationList
    extends java.lang.Object
    implements java.io.Serializable
    Implements a NEAT innovation list. NeuroEvolution of Augmenting Topologies (NEAT) is a genetic algorithm for the generation of evolving artificial neural networks. It was developed by Ken Stanley while at The University of Texas at Austin. ----------------------------------------------------------------------------- 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
    See Also:
    Serialized Form
    • Constructor Detail

      • NEATInnovationList

        public NEATInnovationList()
        The default constructor, used mainly for persistance.
      • NEATInnovationList

        public NEATInnovationList(NEATPopulation population)
        Construct an innovation list, that includes the initial innovations.
        Parameters:
        population - The population to base this innovation list on.
    • Method Detail

      • produceKeyNeuron

        public static java.lang.String produceKeyNeuron(long id)
        Produce an innovation key for a neuron.
        Parameters:
        id - The neuron id.
        Returns:
        The newly created key.
      • produceKeyNeuronSplit

        public static java.lang.String produceKeyNeuronSplit(long fromID,
                                                             long toID)
        Produce a key for a split neuron.
        Parameters:
        fromID - Thf from id.
        toID - The to id.
        Returns:
        The key.
      • produceKeyLink

        public static java.lang.String produceKeyLink(long fromID,
                                                      long toID)
        Produce a key for a link.
        Parameters:
        fromID - The from id.
        toID - The to id.
        Returns:
        The key for the link.
      • findInnovationSplit

        public NEATInnovation findInnovationSplit(long fromID,
                                                  long toID)
        Find an innovation for a hidden neuron that split a existing link. This is the means by which hidden neurons are introduced in NEAT.
        Parameters:
        fromID - The source neuron ID in the link.
        toID - The target neuron ID in the link.
        Returns:
        The newly created innovation, or the one that matched the search.
      • findInnovation

        public NEATInnovation findInnovation(long neuronID)
        Find an innovation for a single neuron. Single neurons were created without producing a split. This means, the only single neurons are the input, bias and output neurons.
        Parameters:
        neuronID - The neuron ID to find.
        Returns:
        The newly created innovation, or the one that matched the search.
      • findInnovation

        public NEATInnovation findInnovation(long fromID,
                                             long toID)
        Find an innovation for a new link added between two existing neurons.
        Parameters:
        fromID - The source neuron ID in the link.
        toID - The target neuron ID in the link.
        Returns:
        The newly created innovation, or the one that matched the search.
      • setPopulation

        public void setPopulation(NEATPopulation population)
        Set the population that this genome belongs to.
        Parameters:
        population - The population.
      • getInnovations

        public java.util.Map<java.lang.String,NEATInnovation> getInnovations()
        Returns:
        A list of innovations.

DMelt 3.0 © DataMelt by jWork.ORG

You see the box below because you did not login.