org.encog.neural.hyperneat.substrate
Class Substrate
- java.lang.Object
-
- org.encog.neural.hyperneat.substrate.Substrate
-
- All Implemented Interfaces:
- java.io.Serializable
public class Substrate extends java.lang.Object implements java.io.SerializableThe 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
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description SubstrateNodecreateHiddenNode()SubstrateNodecreateInputNode()voidcreateLink(SubstrateNode inputNode, SubstrateNode outputNode)SubstrateNodecreateNode()SubstrateNodecreateOutputNode()intgetActivationCycles()java.util.List<SubstrateNode>getBiasedNodes()intgetDimensions()java.util.List<SubstrateNode>getHiddenNodes()intgetInputCount()java.util.List<SubstrateNode>getInputNodes()intgetLinkCount()java.util.List<SubstrateLink>getLinks()intgetNodeCount()intgetOutputCount()java.util.List<SubstrateNode>getOutputNodes()voidsetActivationCycles(int activationCycles)
-
-
-
Constructor Detail
-
Substrate
public Substrate(int theDimensions)
Construct a substrate with the specified number of dimensions in the input/output layers.- Parameters:
theDimensions- The dimensions of the network.
-
-
Method Detail
-
getHiddenNodes
public java.util.List<SubstrateNode> getHiddenNodes()
- Returns:
- the hiddenNodes
-
getDimensions
public int getDimensions()
-
getInputNodes
public java.util.List<SubstrateNode> getInputNodes()
- Returns:
- the inputNodes
-
getOutputNodes
public java.util.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 java.util.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 java.util.List<SubstrateNode> getBiasedNodes()
- Returns:
- A list of all nodes that are connected to the bias neuron. This is typically all non-input neurons.
-
-
DMelt 3.0 © DataMelt by jWork.ORG