Robot Simulator of the Robotics Group for Self-Organization of Control  0.8.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
regularisation.h File Reference
#include <cmath>
#include <selforg/controller_misc.h>
Include dependency graph for regularisation.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

double sqr (double x)
 
double g (double z)
 neuron transfer function More...
 
double g_s (double z)
 first dervative More...
 
double g_derivative (double z)
 first dervative with smoothing for large z More...
 
double g_s_inv (double z)
 inverse of the first derivative More...
 
double g_s (double z, double xsi)
 

\[ g'(z+xsi) = 1-(tanh(z+xsi))^2 \]

with additional clipping More...

 
double g_s_soft (double z, double xsi)
 soft version:

\[ g'(z+xsi) = 1/(1+(z+xsi)^2 \]

with additional clipping More...

 
double g_ss_div_s (double z, double xsi)
 an exact formula for g''/g'= -2g(Z), with clipped Z = z+xsi More...
 
double g_ss_div_s_soft (double z, double xsi)
 an soft formula for g''/g' = -2Z, with clipped Z = z+xsi More...
 
double derive_g_s_inv_exact_clip (double z, double xsi)
 with

\[ g'(z) = 1-(g(z+\xi))^2 \]

we get

\[\frac{\partial}{\partial z} \frac{1}{g'(Z)} = \frac{g''}{g'^2} \]

again with clipped Z More...

 
double g_s_expand2 (double z, double xsi)
 

\[ g'(z) = 1-(z+\xi)^2 \]

which is the series expansion to the second order More...

 
double g_s_inv_expand2 (double z, double xsi)
 

\[ \frac{1}{g'(z)} \approx 1+(z+\xi)^2 \]

with geometric series approximation More...

 
double g_ss_div_s_expand2 (double z, double xsi)
 

\[ \frac{g''(z)}{g'(z)} \approx 2(z+\xi)(1+(z+\xi)^2) \]

with geometric series approximation More...

 
double squash (double z)
 squashing function (-0.1 to 0.1), to protect against to large weight updates More...
 
double squash (void *d, double z)
 squashing function with adjustable clipping size, to protect against too large weight updates More...
 

Function Documentation

double derive_g_s_inv_exact_clip ( double  z,
double  xsi 
)
inline

with

\[ g'(z) = 1-(g(z+\xi))^2 \]

we get

\[\frac{\partial}{\partial z} \frac{1}{g'(Z)} = \frac{g''}{g'^2} \]

again with clipped Z

double g ( double  z)
inline

neuron transfer function

double g_derivative ( double  z)
inline

first dervative with smoothing for large z

double g_s ( double  z)
inline

first dervative

double g_s ( double  z,
double  xsi 
)
inline

\[ g'(z+xsi) = 1-(tanh(z+xsi))^2 \]

with additional clipping

double g_s_expand2 ( double  z,
double  xsi 
)
inline

\[ g'(z) = 1-(z+\xi)^2 \]

which is the series expansion to the second order

double g_s_inv ( double  z)
inline

inverse of the first derivative

double g_s_inv_expand2 ( double  z,
double  xsi 
)
inline

\[ \frac{1}{g'(z)} \approx 1+(z+\xi)^2 \]

with geometric series approximation

double g_s_soft ( double  z,
double  xsi 
)
inline

soft version:

\[ g'(z+xsi) = 1/(1+(z+xsi)^2 \]

with additional clipping

double g_ss_div_s ( double  z,
double  xsi 
)
inline

an exact formula for g''/g'= -2g(Z), with clipped Z = z+xsi

double g_ss_div_s_expand2 ( double  z,
double  xsi 
)
inline

\[ \frac{g''(z)}{g'(z)} \approx 2(z+\xi)(1+(z+\xi)^2) \]

with geometric series approximation

double g_ss_div_s_soft ( double  z,
double  xsi 
)
inline

an soft formula for g''/g' = -2Z, with clipped Z = z+xsi

double sqr ( double  x)
inline
double squash ( double  z)
inline

squashing function (-0.1 to 0.1), to protect against to large weight updates

double squash ( void *  d,
double  z 
)
inline

squashing function with adjustable clipping size, to protect against too large weight updates