org.encog.neural.hyperneat.substrate

## Class Substrate

- java.lang.Object
- - org.encog.neural.hyperneat.substrate.Substrate

- All Implemented Interfaces:
    Serializable

      public class Substrate
      extends Object
      implements Serializable

  The substrate defines the structure of the produced HyperNEAT network. A substrate is made up of nodes and links. A node has a location that is an n-dimensional coordinate. Nodes are grouped into input and output clusters. There can also be hidden neurons between these two. A HyperNEAT network works by training a CPPN that produces the actual resulting NEAT network. The size of the substrate can then be adjusted to create larger networks than what the HyperNEAT network was originally trained with. ----------------------------------------------------------------------------- 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 Summary

    Constructors
    Constructor and Description
    `Substrate(int theDimensions)` Construct a substrate with the specified number of dimensions in the input/output layers.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `SubstrateNode` | `createHiddenNode()`
    `SubstrateNode` | `createInputNode()`
    `void` | `createLink(SubstrateNode inputNode, SubstrateNode outputNode)`
    `SubstrateNode` | `createNode()`
    `SubstrateNode` | `createOutputNode()`
    `int` | `getActivationCycles()`
    `List<SubstrateNode>` | `getBiasedNodes()`
    `int` | `getDimensions()`
    `List<SubstrateNode>` | `getHiddenNodes()`
    `int` | `getInputCount()`
    `List<SubstrateNode>` | `getInputNodes()`
    `int` | `getLinkCount()`
    `List<SubstrateLink>` | `getLinks()`
    `int` | `getNodeCount()`
    `int` | `getOutputCount()`
    `List<SubstrateNode>` | `getOutputNodes()`
    `void` | `setActivationCycles(int activationCycles)`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### Substrate

          public Substrate(int theDimensions)

      Construct a substrate with the specified number of dimensions in the input/output layers.
      Parameters:
        `theDimensions` -

  - ### Method Detail

    - #### getHiddenNodes

          public List<SubstrateNode> getHiddenNodes()

      Returns:
        the hiddenNodes

    - #### getDimensions

          public int getDimensions()

    - #### getInputNodes

          public List<SubstrateNode> getInputNodes()

      Returns:
        the inputNodes

    - #### getOutputNodes

          public List<SubstrateNode> getOutputNodes()

      Returns:
        the outputNodes

    - #### getInputCount

          public int getInputCount()

    - #### getOutputCount

          public int getOutputCount()

    - #### createNode

          public SubstrateNode createNode()

    - #### createInputNode

          public SubstrateNode createInputNode()

    - #### createOutputNode

          public SubstrateNode createOutputNode()

    - #### createHiddenNode

          public SubstrateNode createHiddenNode()

    - #### createLink

          public void createLink(SubstrateNode inputNode,
                        SubstrateNode outputNode)

    - #### getLinks

          public List<SubstrateLink> getLinks()

      Returns:
        the links

    - #### getLinkCount

          public int getLinkCount()

      Returns:
        The link count.

    - #### getNodeCount

          public int getNodeCount()

    - #### getActivationCycles

          public int getActivationCycles()

      Returns:
        the activationCycles

    - #### setActivationCycles

          public void setActivationCycles(int activationCycles)

      Parameters:
        `activationCycles` - the activationCycles to set

    - #### getBiasedNodes

          public List<SubstrateNode> getBiasedNodes()

      Returns:
        A list of all nodes that are connected to the bias neuron. This is typically all non-input neurons.

Copyright © 2014. All Rights Reserved.