org.simnet.neurons
Class LMSNeuron

java.lang.Object
  extended by org.simnet.interfaces.Neuron
      extended by org.simnet.neurons.LMSNeuron
All Implemented Interfaces:
GaugeSource

public class LMSNeuron
extends Neuron

LMS Neuron. A way of implementing the delta rule (AKA Widrow Hoff) rule in a single neuron. It is assumed that one of the synapses attaching to this neuron is a signal synapse, which carries the target value used in learning.


Field Summary
 
Fields inherited from class org.simnet.interfaces.Neuron
activation, fanIn, fanOut, lowerBound, upperBound
 
Constructor Summary
LMSNeuron()
          Default constructor needed for external calls which create neurons then set their parameters.
LMSNeuron(Neuron n)
          This constructor is used when creating a neuron of one type from another neuron of another type Only values common to different types of neuron are copied.
 
Method Summary
 Neuron duplicate()
          Returns a duplicate ClampedNeuron (used, e.g., in copy/paste).
 double getLearningRate()
           
static String getName()
           
 int getTimeType()
           
 double getWeightedInputs()
          Overrides superclass implementation by ignoring inputs from targetValue synapses.
 void setLearningRate(double learningRate)
          Sets the learning rate.
 void update()
          Update neuron.
 
Methods inherited from class org.simnet.interfaces.Neuron
addActivation, addSource, addTarget, checkBounds, clear, clip, connectedToWeight, containsString, debug, decrementActivation, deleteConnectedSynapses, deleteFanIn, deleteFanOut, duplicate, getActivation, getAverageInput, getBuffer, getFanIn, getFanOut, getGaugeValue, getHelp, getId, getIncrement, getInputValue, getLowerBound, getMotorCoupling, getNeuronTypeIndex, getNumberOfActiveInputs, getParentNetwork, getSensoryCoupling, getSummedIncomingWeights, getToolTipText, getTotalInput, getType, getTypeList, getUpperBound, getX, getY, incrementActivation, initCastor, isInput, isOutput, randomize, randomizeBuffer, round, setActivation, setBuffer, setFanIn, setFanOut, setId, setIncrement, setInputValue, setLowerBound, setMotorCoupling, setParentNetwork, setSensoryCoupling, setTypeList, setUpperBound, setX, setY, toString, updateConnectedOutward
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

LMSNeuron

public LMSNeuron()
Default constructor needed for external calls which create neurons then set their parameters.


LMSNeuron

public LMSNeuron(Neuron n)
This constructor is used when creating a neuron of one type from another neuron of another type Only values common to different types of neuron are copied.

Parameters:
n - Neuron to make the type
Method Detail

getTimeType

public int getTimeType()
Specified by:
getTimeType in class Neuron
Returns:
time type.

duplicate

public Neuron duplicate()
Returns a duplicate ClampedNeuron (used, e.g., in copy/paste).

Specified by:
duplicate in class Neuron
Returns:
Duplicated neuron

update

public void update()
Update neuron.

Specified by:
update in class Neuron

getWeightedInputs

public double getWeightedInputs()
Overrides superclass implementation by ignoring inputs from targetValue synapses.

Overrides:
getWeightedInputs in class Neuron
Returns:
weighted input to this node

getName

public static String getName()
Returns:
Name of neuron type.

getLearningRate

public double getLearningRate()
Returns:
Learning rate.

setLearningRate

public void setLearningRate(double learningRate)
Sets the learning rate.

Parameters:
learningRate - Learning rate to set