org.simnet.synapses
Class OjaSynapse

java.lang.Object
  extended by org.simnet.interfaces.Synapse
      extended by org.simnet.synapses.OjaSynapse
All Implemented Interfaces:
GaugeSource

public class OjaSynapse
extends Synapse

OjaSynapse is a synapse which asymptotically normalizes the sum of squares of the weights attaching to a neuron to a user-defined value.


Field Summary
 
Fields inherited from class org.simnet.interfaces.Synapse
id, increment, lowerBound, NUM_PARAMETERS, source, spikeResponder, strength, target, upperBound
 
Constructor Summary
OjaSynapse()
          Default constructor needed for external calls which create neurons then set their parameters.
OjaSynapse(Neuron source, Neuron target)
          Creates a weight connecting source and target neurons.
OjaSynapse(Neuron src, Neuron tar, double val, String theId)
          Creates a weight of some value connecting two neurons.
OjaSynapse(Synapse s)
          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
 Synapse duplicate()
           
 double getLearningRate()
           
static String getName()
           
 double getNormalizationFactor()
           
 void setLearningRate(double momentum)
           
 void setNormalizationFactor(double normalizationFactor)
           
 void update()
          Updates the synapse.
 
Methods inherited from class org.simnet.interfaces.Synapse
checkBounds, clip, decrementWeight, duplicate, getDelay, getGaugeValue, getId, getIncrement, getLowerBound, getParent, getSource, getSpikeResponder, getStrength, getSynapseTypeIndex, getTarget, getType, getTypeList, getUpperBound, getValue, incrementWeight, init, initSpikeResponder, randomize, reinforce, setDelay, setId, setIncrement, setLowerBound, setParent, setSource, setSpikeResponder, setStrength, setTarget, setUpperBound, toString, weaken
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

OjaSynapse

public OjaSynapse(Neuron src,
                  Neuron tar,
                  double val,
                  String theId)
Creates a weight of some value connecting two neurons.

Parameters:
src - source neuron
tar - target neuron
val - initial weight value
theId - Id of the synapse

OjaSynapse

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


OjaSynapse

public OjaSynapse(Synapse s)
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:
s - Synapse to make of the type

OjaSynapse

public OjaSynapse(Neuron source,
                  Neuron target)
Creates a weight connecting source and target neurons.

Parameters:
source - source neuron
target - target neuron
Method Detail

getName

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

duplicate

public Synapse duplicate()
Specified by:
duplicate in class Synapse
Returns:
duplicate OjaSynapse (used, e.g., in copy/paste).

update

public void update()
Updates the synapse.

Specified by:
update in class Synapse

getLearningRate

public double getLearningRate()
Returns:
Returns the momentum.

setLearningRate

public void setLearningRate(double momentum)
Parameters:
momentum - The momentum to set.

getNormalizationFactor

public double getNormalizationFactor()
Returns:
Returns the normalizationFactor.

setNormalizationFactor

public void setNormalizationFactor(double normalizationFactor)
Parameters:
normalizationFactor - The normalizationFactor to set.