org.joone.engine
Class RTRLLearnerPlugin

java.lang.Object
  extended by org.joone.util.MonitorPlugin
      extended by org.joone.engine.RTRLLearnerPlugin
All Implemented Interfaces:
java.io.Serializable, java.util.EventListener, NeuralNetListener

public class RTRLLearnerPlugin
extends MonitorPlugin

A plugin listener that applies the RTRL algorithm to a network.

Author:
mg
See Also:
Serialized Form

Field Summary
protected  boolean adaptLearningRate
          True if we are allowed to adapt the internal learning rate
protected  int cycleCount
          Network cycle counter
protected  Synapse errorPatternListener
          The synapse we will use to catch the errors
protected  double[] lastError
          The most recently seen error
protected  double learningRate
          The internal learning rate
protected  double minLearningRate
          The minimum allowable learning rate
protected  double prevError
          The previous error
protected  int processorCount
          Number of processors to use, 1 or less on uniprocessors
protected  RTRL rtrl
          The RTRL that will do the training
 
Constructor Summary
RTRLLearnerPlugin(boolean adaptLearningRate, int processorCount)
          The constructor
 
Method Summary
protected  void attachErrorPatternListener()
          Attach a synapse to the output layer to calculate the error pattern and update the RTRL
static void main(java.lang.String[] args)
          Execute one of the tests
protected  void manageCycle(Monitor mon)
           
protected  void manageError(Monitor mon)
           
protected  void manageStart(Monitor mon)
           
protected  void manageStop(Monitor mon)
           
protected  void manageStopError(Monitor mon, java.lang.String msgErr)
           
static void testRTRL(java.lang.String[] args)
          Test the RTRL learner
 
Methods inherited from class org.joone.util.MonitorPlugin
cicleTerminated, errorChanged, getName, getNeuralNet, getRate, netStarted, netStopped, netStoppedError, setName, setNeuralNet, setRate, toBeManaged
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

rtrl

protected transient RTRL rtrl
The RTRL that will do the training


cycleCount

protected transient int cycleCount
Network cycle counter


lastError

protected transient double[] lastError
The most recently seen error


errorPatternListener

protected transient Synapse errorPatternListener
The synapse we will use to catch the errors


prevError

protected transient double prevError
The previous error


learningRate

protected transient double learningRate
The internal learning rate


minLearningRate

protected transient double minLearningRate
The minimum allowable learning rate


adaptLearningRate

protected transient boolean adaptLearningRate
True if we are allowed to adapt the internal learning rate


processorCount

protected int processorCount
Number of processors to use, 1 or less on uniprocessors

Constructor Detail

RTRLLearnerPlugin

public RTRLLearnerPlugin(boolean adaptLearningRate,
                         int processorCount)
The constructor

Method Detail

attachErrorPatternListener

protected void attachErrorPatternListener()
Attach a synapse to the output layer to calculate the error pattern and update the RTRL


manageStop

protected void manageStop(Monitor mon)
Specified by:
manageStop in class MonitorPlugin

manageCycle

protected void manageCycle(Monitor mon)
Specified by:
manageCycle in class MonitorPlugin

manageStart

protected void manageStart(Monitor mon)
Specified by:
manageStart in class MonitorPlugin

manageError

protected void manageError(Monitor mon)
Specified by:
manageError in class MonitorPlugin

manageStopError

protected void manageStopError(Monitor mon,
                               java.lang.String msgErr)
Specified by:
manageStopError in class MonitorPlugin

testRTRL

public static void testRTRL(java.lang.String[] args)
Test the RTRL learner


main

public static void main(java.lang.String[] args)
Execute one of the tests



Submit Feedback to pmarrone@users.sourceforge.net