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

#include <trackablemeasure.h>

Inheritance diagram for TrackableMeasure:
Collaboration diagram for TrackableMeasure:

Public Member Functions

 TrackableMeasure (std::list< Trackable * > trackableList, const char *measureName, ComplexMeasureMode cmode, std::list< Position > cornerPointList, short dimensions, int numberBins)
 creates a new TrackableMeasure. More...
 
virtual void step ()
 defined by AbstractMeasure. More...
 
- Public Member Functions inherited from ComplexMeasure
 ComplexMeasure (const char *measureName, ComplexMeasureMode mode, int numberBins)
 creates a new complex measure. More...
 
virtual void addObservable (double &observedValue, double minValue, double maxValue)
 adds a observed variable to the measure. More...
 
virtual ~ComplexMeasure ()
 
- Public Member Functions inherited from AbstractMeasure
 AbstractMeasure (const char *measureName)
 
virtual ~AbstractMeasure ()
 
virtual std::string getName () const
 
virtual double getValue () const
 
virtual double & getValueAddress ()
 
virtual void setStepSize (int newStepSize)
 
virtual int getStepSize () const
 
virtual long getActualStep () const
 
virtual void setDisplayPrecision (int digits)
 
virtual int getDisplayPrecision () const
 
- Public Member Functions inherited from IMeasure
virtual ~IMeasure ()
 

Protected Member Functions

virtual double findRange (std::list< Position > positionList, short dim, bool min)
 
virtual void addDimension (short dim, std::list< Position > cornerPointList)
 
- Protected Member Functions inherited from ComplexMeasure
void calculatePInf ()
 calculates the Predictive Information More...
 
void updateEntropy (int binNumber)
 updates the entropy. More...
 
void computeEntropy ()
 computes the entropy. More...
 
void initF ()
 inits F, neccessary after each call of addObservable() More...
 

Protected Attributes

std::list< Trackable * > trackableList
 
ComplexMeasureMode cmode
 
TrackMode tmode
 
- Protected Attributes inherited from ComplexMeasure
std::list< double * > observedValueList
 
std::list< Discretisizer * > discretisizerList
 
ComplexMeasureMode mode
 
int numberBins
 
long fSize
 
int historySize
 
int * binNumberHistory
 
int historyIndex
 
int * historyIndexList
 
int historyIndexNumber
 
int historyInterval
 
matrix::SparseArray< long, int > F
 
- Protected Attributes inherited from AbstractMeasure
std::string name
 
double value
 
long actualStep
 
int stepSize
 
int displayPrecision
 

Constructor & Destructor Documentation

TrackableMeasure ( std::list< Trackable * >  trackableList,
const char *  measureName,
ComplexMeasureMode  cmode,
std::list< Position cornerPointList,
short  dimensions,
int  numberBins 
)

creates a new TrackableMeasure.

The position of the Trackables in the given list is counted in a fequency list. The possible positions are given by the cornerPointList, which contains the cornerPoints of the arena where the trackables are placed. the complex measure ist then based on the frequency list

Parameters
trackableListthe list of the Trackables
cornerPointListthe list with the cornerPoints of the arena
dimensionswhich dimensions do you like to count? Note that the needed memory is (numberBins^ndim), but calculation costs are O(1)
cmodewhich type of complex measure should be evaluated?
numberBinsnumber of bins used for discretisation

Member Function Documentation

void addDimension ( short  dim,
std::list< Position cornerPointList 
)
protectedvirtual
double findRange ( std::list< Position positionList,
short  dim,
bool  min 
)
protectedvirtual
void step ( )
virtual

defined by AbstractMeasure.

This method is called from StatisticTools for updating the measure in every simStep (ODE).

Reimplemented from ComplexMeasure.

Member Data Documentation

ComplexMeasureMode cmode
protected
TrackMode tmode
protected
std::list<Trackable*> trackableList
protected

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