Reinforcement Learning Toolbox 2.0
last updated:
General
Documentation
Manual
Tutorial
Class Reference
Master Thesis
Examples
Related Papers
Downloads
Links
News
mailto:webmaster
Main Page     Class Hierarchy   Compound List   File List   Compound Members   File Members

CRBFFeatureCalculator Class Reference

Represents a normalized RBF network. More...

#include <clinearfafeaturecalculator.h>

Inheritance diagram for CRBFFeatureCalculator:

CLinearMultiFeatureCalculator CGridFeatureCalculator CFeatureCalculator CStateModifier CStateProperties List of all members.


Public Member Functions

  CRBFFeatureCalculator (unsigned int numDim, unsigned int dimensions[], unsigned int partitions[], double offsets[], double sigma[])
  CRBFFeatureCalculator (unsigned int numDim, unsigned int dimensions[], unsigned int partitions[], double offsets[], double sigma[], unsigned int areaSize[])
  ~CRBFFeatureCalculator ()


Protected Member Functions

virtual double  getFeatureFactor (CState *state, ColumnVector *featPos)
  Calculates the feature factor with the RBF function.

virtual void  initAreaSize ()
  set the areaSize array



Protected Attributes

double *  sigma
double  sigmaMaxSize

Detailed Description

Represents a normalized RBF network.

This class lays a grid of RBF-Functions over a specified sub-space of the model space. You can specify which dimensions you want to use (dimensions array), how much partitions you need for each dimension, an offset for each dimension which is added to the RBF centers and the sigmas for each dimension. When talking about grids, the RBF center is always in the center of the partition. The size of the feature space is the product of all numbers of partitions.

This class always works with the normalized continuous state variable values (scaled to the intervall [0, 1], so consider that when choosing your offsets and sigmas.
The number of active states for each dimension is choosen according the sigma value. All features are active that are within a range of 2 * sigma. So if you want only the neighbors to be active too, use the thumbrule sigma[i] = 1 / (2 * numPartitions[i] ), so you get 3 active features per dimension.

Constructor & Destructor Documentation

CRBFFeatureCalculator::CRBFFeatureCalculator unsigned int  numDim,
unsigned int  dimensions[],
unsigned int  partitions[],
double  offsets[],
double  sigma[]
 
CRBFFeatureCalculator::CRBFFeatureCalculator unsigned int  numDim,
unsigned int  dimensions[],
unsigned int  partitions[],
double  offsets[],
double  sigma[],
unsigned int  areaSize[]
 
CRBFFeatureCalculator::~CRBFFeatureCalculator  ) 
 

Member Function Documentation

virtual double CRBFFeatureCalculator::getFeatureFactor CState state,
ColumnVector *  featPos
[protected, virtual]
 

Calculates the feature factor with the RBF function.

Implements CLinearMultiFeatureCalculator.

virtual void CRBFFeatureCalculator::initAreaSize  )  [protected, virtual]
 

set the areaSize array

The number of active states for each dimension is choosen according the sigma value. All features are active that are within a range of 2 * sigma. So if you want only the neighbors to be active too, use the thumbrule sigma[i] = 1 / (2 * numPartitions[i] ), so you get 3 active features per dimension.

Reimplemented from CLinearMultiFeatureCalculator.


Member Data Documentation

double* CRBFFeatureCalculator::sigma [protected]
 
double CRBFFeatureCalculator::sigmaMaxSize [protected]
 

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