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
GenContext Class Reference

The GenContext class. More...

#include <GenContext.h>

Inheritance diagram for GenContext:
Collaboration diagram for GenContext:

Public Member Functions

 GenContext (GenPrototype *prototype)
 constructor to create a GenContext. More...
 
virtual ~GenContext ()
 destructor to delete a GenContext. More...
 
GenPrototypegetPrototype (void) const
 [inline], [const] More...
 
void addGen (Gen *gen)
 [inline] This function add a Gen to the Context. More...
 
void removeGen (Gen *gen)
 [inline] This function removes one gen which is saved inside the context (but NO deleting of the gen!!!). More...
 
const std::vector< Gen * > & getGene (void) const
 [inline], [const] This function gives all gens which are saved in this context back. More...
 
void update (double factor=1.5)
 This function makes an update on the statistical values. More...
 
- Public Member Functions inherited from Inspectable
 Inspectable (const iparamkey &name="")
 TYPEDEFS END. More...
 
virtual ~Inspectable ()
 
virtual iparamkeylist getInternalParamNames () const
 The list of the names of all internal parameters given by getInternalParams(). More...
 
virtual iparamvallist getInternalParams () const
 
virtual iparamvalptrlist getInternalParamsPtr () const
 be careful: matrices will be ignored More...
 
virtual ilayerlist getStructuralLayers () const
 Specifies which parameter vector forms a structural layer (in terms of a neural network) The ordering is important. More...
 
virtual iconnectionlist getStructuralConnections () const
 Specifies which parameter matrix forms a connection between layers (in terms of a neural network) The orderning is not important. More...
 
virtual void addInspectableValue (const iparamkey &key, iparamval const *val, const std::string &descr=std::string())
 This is the new style for adding inspectable values. More...
 
virtual void addInspectableMatrix (const iparamkey &key, const matrix::Matrix *m, bool only4x4AndDiag=true, const std::string &descr=std::string())
 This is the new style for adding inspectable values. More...
 
virtual void addInspectableDescription (const iparamkey &key, const std::string &descr)
 adds a description for the given parameter using info-lines The line will start (appart from the #I) with a D for description followed by the key end then followed by the string. More...
 
virtual void addInfoLine (std::string infoLine)
 Adds an info line to this inspectable instance. More...
 
virtual void addInfoLines (std::list< std::string > infoLineList)
 Adds a bunch of infolines with addInfoLine to this inspectable instance. More...
 
virtual void removeInfoLines ()
 Removes all infolines from this inspectable instance. More...
 
virtual const infoLinesListgetInfoLines () const
 Returns all infolines added to this inspectable instance. More...
 
virtual void addInspectable (Inspectable *insp)
 Adds an inspectable as a child object. More...
 
virtual void removeInspectable (Inspectable *insp)
 Removes an inspectable as a child object. More...
 
virtual void setNameOfInspectable (const iparamkey &name)
 set the name of the inspectable More...
 
virtual const iparamkey getNameOfInspectable () const
 return the name of the inspectable, getName() would conflict with Configurable::getName() too often More...
 
virtual const inspectableListgetInspectables () const
 Returns the list containing all inspectable children. More...
 

Static Public Member Functions

static bool restore ()
 restore all GenContext More...
 

Protected Attributes

std::vector< Gen * > m_storage
 (vector<Gen*> Storage for all Genes which are saved in this context. More...
 
GenPrototypem_prototype
 (GenPrototyp*) the prototype for which are the context is. More...
 
double m_min
 the min value of the gens More...
 
double m_w1
 the under whisker of the gens More...
 
double m_q1
 the under quartil of the gens More...
 
double m_med
 the median of the gens More...
 
double m_avg
 the average of the gens More...
 
double m_q3
 the upper quartil of the gens More...
 
double m_w3
 the upper whisker of the gens More...
 
double m_max
 the max value of the gens More...
 
- Protected Attributes inherited from Inspectable
iparamkey name
 
iparampairlist mapOfValues
 
imatrixpairlist mapOfMatrices
 
infoLinesList infoLineStringList
 

Additional Inherited Members

- Public Types inherited from Inspectable
typedef std::string iparamkey
 
typedef double iparamval
 
typedef std::pair< iparamkey,
iparamval const * > 
iparampair
 
typedef std::pair< iparamkey,
std::pair< const
matrix::Matrix *, bool > > 
imatrixpair
 
typedef std::list< iparamkeyiparamkeylist
 
typedef std::list< std::string > infoLinesList
 
typedef std::list< iparamvaliparamvallist
 
typedef std::list< iparamval
const * > 
iparamvalptrlist
 
typedef std::list< iparampairiparampairlist
 
typedef std::list< imatrixpairimatrixpairlist
 
typedef struct Inspectable::ILayer ILayer
 
typedef struct
Inspectable::IConnection 
IConnection
 
typedef std::list< ILayerilayerlist
 
typedef std::list< IConnectioniconnectionlist
 
typedef std::list< const
Inspectable * > 
inspectableList
 

Detailed Description

The GenContext class.

This class is used for create a context for some gens. This mean it saves all gens which have the same prototype and are a part of an individual which are in ONE generation. It can be useful for some statistical calculation or for optimizing the mutation factor.

The Gen Context is inside the gen. alg. only saved in the GenPrototype.

Constructor & Destructor Documentation

GenContext ( GenPrototype prototype)

constructor to create a GenContext.

Information which the class need are the prototype (name an group of gens).

Parameters
prototype(GenPrototype*) Pointer to the prototype.
~GenContext ( )
virtual

destructor to delete a GenContext.

Member Function Documentation

void addGen ( Gen gen)
inline

[inline] This function add a Gen to the Context.

Parameters
gen(Gen*) the new Gen, which should be added
const std::vector<Gen*>& getGene ( void  ) const
inline

[inline], [const] This function gives all gens which are saved in this context back.

Returns
(vector<Gen*>&) list with all gens.
GenPrototype* getPrototype ( void  ) const
inline

[inline], [const]

This function gives the prototype for hich are the context is make back.

Returns
(GenPrototype*) the prototype
void removeGen ( Gen gen)
inline

[inline] This function removes one gen which is saved inside the context (but NO deleting of the gen!!!).

param gen (Gen*) The gen, which should be removed

bool restore ( )
static

restore all GenContext

Returns
(bool) if all ok
void update ( double  factor = 1.5)

This function makes an update on the statistical values.

Parameters
factor(double) this factor is normal 1.5 and is for the whisker distance in the analysation

Member Data Documentation

double m_avg
protected

the average of the gens

double m_max
protected

the max value of the gens

double m_med
protected

the median of the gens

double m_min
protected

the min value of the gens

GenPrototype* m_prototype
protected

(GenPrototyp*) the prototype for which are the context is.

double m_q1
protected

the under quartil of the gens

double m_q3
protected

the upper quartil of the gens

std::vector<Gen*> m_storage
protected

(vector<Gen*> Storage for all Genes which are saved in this context.

double m_w1
protected

the under whisker of the gens

double m_w3
protected

the upper whisker of the gens


The documentation for this class was generated from the following files: