ca.nengo.model.plasticity.impl
Class PESTermination
java.lang.Object
ca.nengo.model.impl.EnsembleTermination
ca.nengo.model.plasticity.impl.PlasticEnsembleTermination
ca.nengo.model.plasticity.impl.ModulatedPlasticEnsembleTermination
ca.nengo.model.plasticity.impl.PESTermination
- All Implemented Interfaces:
- Resettable, Termination, java.io.Serializable, java.lang.Cloneable
public class PESTermination
- extends ModulatedPlasticEnsembleTermination
A termination whose transformation evolves according to the PES rule.
The learning rate is defined by an AbstractRealLearningFunction (see its declaration for
the inputs it receives). This learning rate function is applied to each In each case, the presynaptic-variable
input to the function is the corresponding dimension of input to the Termination. The postsynaptic variable is taken
as the corresponding dimension of the Origin NEFEnsemble.X. This implementation supports only a single separate
modulatory variable, though it can be multi-dimensional. This is also user-defined, as some other Termination
onto the same NEFEnsemble.
TODO: test
- See Also:
- Serialized Form
| Methods inherited from class ca.nengo.model.plasticity.impl.PlasticEnsembleTermination |
getInput, getLearning, getLearningRate, getOriginName, getOutputs, getTransform, saveTransform, setLearning, setLearningRate, setOriginName, setOriginState, setTransform |
| Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
PESTermination
public PESTermination(NEFEnsemble ensemble,
java.lang.String name,
PlasticNodeTermination[] nodeTerminations)
throws StructuralException
- Parameters:
ensemble - The ensemble this termination belongs toname - Name of this TerminationnodeTerminations - Node-level Terminations that make up this Termination. Must be
all LinearExponentialTerminations
- Throws:
StructuralException - If dimensions of different terminations are not all the same
reset
public void reset(boolean randomize)
- Specified by:
reset in interface Resettable- Overrides:
reset in class ModulatedPlasticEnsembleTermination
- Parameters:
randomize - True indicates that the object should be reset to a
randomly selected initial state (the object must be aware of the
distribution from which to draw from). False indicates that the
object should be reset to a fixed initial state (which it must
also know). Some objects may not support randomization of the initial
state, in which case a fixed state will be used in either case.- See Also:
Resettable.reset(boolean)
getOja
public boolean getOja()
- Returns:
- Name of Origin from which post-synaptic activity is drawn
setOja
public void setOja(boolean oja)
- Parameters:
oja - Should this termination use Oja smoothing?
updateTransform
public void updateTransform(float time,
int start,
int end)
throws StructuralException
- Specified by:
updateTransform in class PlasticEnsembleTermination
- Parameters:
time - Current timestart - The start index of the range of transform values to update (for multithreading)end - The end index of the range of transform values to update (for multithreading)
- Throws:
StructuralException - if- See Also:
PlasticEnsembleTermination.updateTransform(float, int, int)
clone
public PESTermination clone()
throws java.lang.CloneNotSupportedException
- Specified by:
clone in interface Termination- Overrides:
clone in class ModulatedPlasticEnsembleTermination
- Returns:
- Valid clone
- Throws:
java.lang.CloneNotSupportedException - if clone can't be made