RcsPySim
A robot control and simulation library
Rcs::OMCollisionCost Class Reference

#include <OMCollisionCost.h>

Inheritance diagram for Rcs::OMCollisionCost:
Collaboration diagram for Rcs::OMCollisionCost:

Public Member Functions

 OMCollisionCost (RcsCollisionMdl *collisionMdl, double maxCollCost=1e3)
 
virtual ~OMCollisionCost ()
 
virtual void computeObservation (double *state, double *velocity, const MatNd *currentAction, double dt) const
 
virtual void getLimits (double *minState, double *maxState, double *maxVelocity) const
 
virtual unsigned int getStateDim () const
 
virtual unsigned int getVelocityDim () const
 
std::vector< std::string > getStateNames () const override
 
- Public Member Functions inherited from Rcs::ObservationModel
virtual ~ObservationModel ()
 
MatNd * computeObservation (const MatNd *currentAction, double dt) const
 
void computeObservation (MatNd *observation, const MatNd *currentAction, double dt) const
 
virtual void reset ()
 
virtual std::vector< std::string > getVelocityNames () const
 
virtual void getMinMax (double *min, double *max) const final
 
virtual unsigned int getDim () const final
 
virtual std::vector< std::string > getNames () const final
 
template<typename OM >
OM * findModel ()
 
template<typename OM >
Offsets findOffsets ()
 
virtual std::vector< ObservationModel * > getNested () const
 
- Public Member Functions inherited from Rcs::BoxSpaceProvider
 BoxSpaceProvider ()
 
virtual ~BoxSpaceProvider ()
 
 BoxSpaceProvider (const BoxSpaceProvider &)=delete
 
BoxSpaceProvideroperator= (const BoxSpaceProvider &)=delete
 
 BoxSpaceProvider (BoxSpaceProvider &&)=delete
 
BoxSpaceProvideroperator= (BoxSpaceProvider &&)=delete
 
const BoxSpacegetSpace () const
 

Private Attributes

RcsCollisionMdl * collisionMdl
 
double maxCollCost
 

Detailed Description

Definition at line 40 of file OMCollisionCost.h.

Constructor & Destructor Documentation

◆ OMCollisionCost()

Rcs::OMCollisionCost::OMCollisionCost ( RcsCollisionMdl *  collisionMdl,
double  maxCollCost = 1e3 
)
explicit

Definition at line 46 of file OMCollisionCost.cpp.

◆ ~OMCollisionCost()

Rcs::OMCollisionCost::~OMCollisionCost ( )
virtual

Definition at line 56 of file OMCollisionCost.cpp.

Member Function Documentation

◆ computeObservation()

void Rcs::OMCollisionCost::computeObservation ( double *  state,
double *  velocity,
const MatNd *  currentAction,
double  dt 
) const
virtual

Implement to fill the observation vector with the observed values.

Parameters
[out]statestate observation vector to fill, has getStateDim() elements.
[out]velocityvelocity observation vector to fill, has getVelocityDim() elements.
[in]currentActionaction in current step. May be NULL if not available.
[in]dttime step since the last observation has been taken

Implements Rcs::ObservationModel.

Definition at line 71 of file OMCollisionCost.cpp.

◆ getLimits()

void Rcs::OMCollisionCost::getLimits ( double *  minState,
double *  maxState,
double *  maxVelocity 
) const
virtual

Provides the minimum and maximum observable values. Since the velocity is symmetric, only the maximum needs to be provided. The default implementation uses -inf and inf.

Parameters
[out]minStateminimum state vector to fill, has getStateDim() elements.
[out]maxStatemaximum state vector to fill, has getStateDim() elements.
[out]maxVelocitymaximum velocity vector to fill, has getVelocityDim() elements.

Reimplemented from Rcs::ObservationModel.

Definition at line 80 of file OMCollisionCost.cpp.

◆ getStateDim()

unsigned int Rcs::OMCollisionCost::getStateDim ( ) const
virtual

The number of state variables.

Implements Rcs::ObservationModel.

Definition at line 61 of file OMCollisionCost.cpp.

◆ getStateNames()

std::vector< std::string > Rcs::OMCollisionCost::getStateNames ( ) const
overridevirtual

Provides names for each state entry.

Returns
a vector of name strings. Must be of length getStateDim() or empty for a nameless space.

Reimplemented from Rcs::ObservationModel.

Definition at line 86 of file OMCollisionCost.cpp.

◆ getVelocityDim()

unsigned int Rcs::OMCollisionCost::getVelocityDim ( ) const
virtual

The number of velocity variables. The default implementation assumes that for each state there is a velocity.

Reimplemented from Rcs::ObservationModel.

Definition at line 66 of file OMCollisionCost.cpp.

Member Data Documentation

◆ collisionMdl

RcsCollisionMdl* Rcs::OMCollisionCost::collisionMdl
private

Rcs collision model (not owned!)

Definition at line 62 of file OMCollisionCost.h.

◆ maxCollCost

double Rcs::OMCollisionCost::maxCollCost
private

Definition at line 64 of file OMCollisionCost.h.


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