#include <invertmotorcontroller.h>
Inherits AbstractController.
Inherited by DerController, InvertMotorBigModel, InvertMotorNStep, and InvertMotorSpace.
Inheritance diagram for InvertMotorController:
Public Member Functions | |
InvertMotorController (unsigned short buffersize, const std::string &name, const std::string &revision) | |
virtual paramval | getParam (const paramkey &key) const |
returns the value of the requested parameter or 0 (+ error message to stderr) if unknown. | |
virtual bool | setParam (const paramkey &key, paramval val) |
sets the value of the given parameter or does nothing if unknown. | |
virtual paramlist | getParamList () const |
The list of all parameters with there value as allocated lists. | |
Protected Member Functions | |
void | putInBuffer (matrix::Matrix *buffer, const matrix::Matrix &vec, int delay=0) |
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 | |
double | g (double z) |
neuron transfer function | |
double | g_s (double z) |
first dervative | |
double | g_s_inv (double z) |
inverse of the first derivative | |
double | g_s (double z, double xsi) |
an exact formula for inversion if neuron. | |
double | g_2s_div_s (double z, double xsi) |
an exact formula for g''/g' | |
double | squash (double z) |
squashing function (-0.1 to 0.1), to protect against to large weight updates | |
double | squash (void *d, double z) |
squashing function with adjustable clipping size, to protect against too large weight updates | |
Protected Attributes | |
paramval | epsC |
learning rate factor for controller learning | |
paramval | desens |
paramval | s4delay |
number of timesteps of delay in the SML | |
paramval | s4avg |
number of timesteps used for smoothing the controller output values | |
paramval | steps |
number of timesteps is used for controller learning | |
paramval | epsA |
learning rate factor for model learning | |
paramval | factorB |
additional learning rate factor for model bias | |
paramval | zetaupdate |
paramval | dampA |
damping term for model (0: no damping, 0.1 high damping) | |
short | logaE |
logarithmic error is used for learning 1: controller 2: model 3: both | |
short | rootE |
root error is used for learning 1: controller 2: model 3: both | |
short | relativeE |
if not 0: a relative error signal is used (xsi is normalised in respect to |y|) | |
paramval | squashSize |
size of the box, where the parameter updates are clipped to | |
paramval | adaptRate |
adaptation rate for learning rate adaptation | |
paramval | nomUpdate |
nominal update of controller in respect to matrix norm | |
paramval | noiseB |
size of the additional noise for model bias B | |
paramval | noiseY |
size of the additional noise for motor values | |
paramval | teacher |
factor for teaching signal | |
int | t |
unsigned short | buffersize |
bool | initialised |
Implements standart configureable interface for some useful parameters like epsC, epsA, s4avg ...
|
|
|
calculates the error_factor for either logarithmic (E=ln(e^T*e)) or square (E=sqrt(e^t*e)) error
Reimplemented in DerController, and InvertMotorBigModel.
|
|
calculate delayed values
|
|
calculate time-smoothed values
|
|
neuron transfer function
|
|
an exact formula for g''/g'
|
|
an exact formula for inversion if neuron.
|
|
first dervative
|
|
inverse of the first derivative
|
|
returns the value of the requested parameter or 0 (+ error message to stderr) if unknown.
Reimplemented from Configurable.
Reimplemented in DerController, InvertMotorBigModel, ProActive, and ProActive2.
|
|
The list of all parameters with there value as allocated lists.
Reimplemented from Configurable.
Reimplemented in DerController, InvertMotorBigModel, ProActive, and ProActive2.
|
|
|
|
sets the value of the given parameter or does nothing if unknown.
Reimplemented from Configurable.
Reimplemented in DerController, InvertMotorBigModel, ProActive, and ProActive2.
|
|
squashing function with adjustable clipping size, to protect against too large weight updates
|
|
squashing function (-0.1 to 0.1), to protect against to large weight updates
|
|
adaptation rate for learning rate adaptation
|
|
|
|
damping term for model (0: no damping, 0.1 high damping)
|
|
|
|
learning rate factor for model learning
|
|
learning rate factor for controller learning
|
|
additional learning rate factor for model bias
|
|
|
|
logarithmic error is used for learning 1: controller 2: model 3: both
|
|
size of the additional noise for model bias B
|
|
size of the additional noise for motor values
|
|
nominal update of controller in respect to matrix norm
|
|
if not 0: a relative error signal is used (xsi is normalised in respect to |y|)
|
|
root error is used for learning 1: controller 2: model 3: both
|
|
number of timesteps used for smoothing the controller output values
|
|
number of timesteps of delay in the SML
|
|
size of the box, where the parameter updates are clipped to
|
|
number of timesteps is used for controller learning
|
|
|
|
factor for teaching signal
|
|
|