HomeokinBase Class Reference

Abstract class (interface) for robot controller that use are based on the homeokinetic prinziple. More...

#include <homeokinbase.h>

Inherits AbstractController.

Inherited by InvertMotorController.

Inheritance diagram for HomeokinBase:

Inheritance graph
[legend]
Collaboration diagram for HomeokinBase:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 HomeokinBase (unsigned short buffersize, const std::string &name, const std::string &revision)

Protected Member Functions

void putInBuffer (matrix::Matrix *buffer, const matrix::Matrix &vec, int delay=0)
 put new value in ring buffer
virtual matrix::Matrix calculateDelayedValues (const matrix::Matrix *buffer, int number_steps_of_delay_)
 calculate delayed values
virtual matrix::Matrix calculateSmoothValues (const matrix::Matrix *buffer, int number_steps_for_averaging_)
 calculate time-smoothed values
virtual double calcErrorFactor (const matrix::Matrix &e, bool loga, bool root)
 calculates the error_factor for either logarithmic (E=ln(e^T*e)) or square (E=sqrt(e^t*e)) error

Static Protected Member Functions

static double g (double z)
 neuron transfer function

Protected Attributes

paramval epsC
 learning rate factor for controller learning
paramval epsA
 learning rate factor for model learning
paramval factorB
 additional learning rate factor for model bias
paramint s4delay
 number of timesteps of delay in the SML
paramint s4avg
 number of timesteps used for smoothing the controller output values
paramint logaE
 logarithmic error is used for learning 1: controller 2: model 3: both
paramint rootE
 root error is used for learning 1: controller 2: model 3: both
paramval squashSize
 size of the box, where the parameter updates are clipped to
int t
unsigned short buffersize
bool initialised

Detailed Description

Abstract class (interface) for robot controller that use are based on the homeokinetic prinziple.

Implements standard buffers and configureable interface for some useful parameters like epsC, epsA, s4avg ...


Constructor & Destructor Documentation

HomeokinBase ( unsigned short  buffersize,
const std::string &  name,
const std::string &  revision 
) [inline]


Member Function Documentation

virtual double calcErrorFactor ( const matrix::Matrix e,
bool  loga,
bool  root 
) [inline, protected, virtual]

calculates the error_factor for either logarithmic (E=ln(e^T*e)) or square (E=sqrt(e^t*e)) error

virtual matrix::Matrix calculateDelayedValues ( const matrix::Matrix buffer,
int  number_steps_of_delay_ 
) [inline, protected, virtual]

calculate delayed values

virtual matrix::Matrix calculateSmoothValues ( const matrix::Matrix buffer,
int  number_steps_for_averaging_ 
) [inline, protected, virtual]

calculate time-smoothed values

static double g ( double  z  )  [inline, static, protected]

neuron transfer function

void putInBuffer ( matrix::Matrix buffer,
const matrix::Matrix vec,
int  delay = 0 
) [inline, protected]

put new value in ring buffer


Member Data Documentation

unsigned short buffersize [protected]

paramval epsA [protected]

learning rate factor for model learning

paramval epsC [protected]

learning rate factor for controller learning

paramval factorB [protected]

additional learning rate factor for model bias

bool initialised [protected]

paramint logaE [protected]

logarithmic error is used for learning 1: controller 2: model 3: both

paramint rootE [protected]

root error is used for learning 1: controller 2: model 3: both

paramint s4avg [protected]

number of timesteps used for smoothing the controller output values

paramint s4delay [protected]

number of timesteps of delay in the SML

paramval squashSize [protected]

size of the box, where the parameter updates are clipped to

int t [protected]


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