AbstractModel Class Reference

abstract class (interface) for a model that can be used by a controller More...

#include <abstractmodel.h>

Inherits Configurable, Storeable, and Inspectable.

Inherited by InvertableModel, and SOM.

Inheritance diagram for AbstractModel:

Inheritance graph
[legend]
Collaboration diagram for AbstractModel:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 AbstractModel ()
 AbstractModel (const std::string &name, const std::string &revision)
virtual ~AbstractModel ()
virtual void init (unsigned int inputDim, unsigned int outputDim, double unit_map=0.0, RandGen *randGen=0)=0
 initialisation of the network with the given number of input and output units
virtual const matrix::Matrix process (const matrix::Matrix &input)=0
 passive processing of the input (this function is not constant since a recurrent network for example might change internal states
virtual const matrix::Matrix learn (const matrix::Matrix &input, const matrix::Matrix &nom_output, double learnRateFactor=1)=0
virtual void damp (double damping)=0
 damps the weights and the biases by multiplying (1-damping)
virtual unsigned int getInputDim () const =0
 returns the number of input neurons
virtual unsigned int getOutputDim () const =0
 returns the number of output neurons

Detailed Description

abstract class (interface) for a model that can be used by a controller


Constructor & Destructor Documentation

AbstractModel (  )  [inline]

AbstractModel ( const std::string &  name,
const std::string &  revision 
) [inline]

virtual ~AbstractModel (  )  [inline, virtual]


Member Function Documentation

virtual void damp ( double  damping  )  [pure virtual]

damps the weights and the biases by multiplying (1-damping)

Implemented in Elman, FeedForwardNN, MultiLayerFFNN, OneLayerFFNN, and SOM.

virtual unsigned int getInputDim (  )  const [pure virtual]

returns the number of input neurons

Implemented in MultiLayerFFNN, OneLayerFFNN, and SOM.

virtual unsigned int getOutputDim (  )  const [pure virtual]

returns the number of output neurons

Implemented in MultiLayerFFNN, OneLayerFFNN, and SOM.

virtual void init ( unsigned int  inputDim,
unsigned int  outputDim,
double  unit_map = 0.0,
RandGen randGen = 0 
) [pure virtual]

initialisation of the network with the given number of input and output units

Parameters:
inputDim length of input vector
outputDim length of output vector
unit_map if 0 the parametes are choosen randomly. Otherwise the model is initialised to represent a unit_map with the given response strength.
randGen pointer to random generator, if 0 an new one is used

Implemented in Elman, MultiLayerFFNN, OneLayerFFNN, and SOM.

virtual const matrix::Matrix learn ( const matrix::Matrix input,
const matrix::Matrix nom_output,
double  learnRateFactor = 1 
) [pure virtual]

Implemented in Elman, MultiLayerFFNN, OneLayerFFNN, and SOM.

virtual const matrix::Matrix process ( const matrix::Matrix input  )  [pure virtual]

passive processing of the input (this function is not constant since a recurrent network for example might change internal states

Implemented in Elman, MultiLayerFFNN, OneLayerFFNN, and SOM.


The documentation for this class was generated from the following file:
Generated on Fri Oct 30 16:29:02 2009 for Robot Simulator of the Robotics Group for Self-Organization of Control by  doxygen 1.4.7