Class IMacBeliefSampler

Inheritance Relationships

Base Type

Class Documentation

class IMacBeliefSampler : public IMacExecutor

Subclass which removes all functionality except IMac belief sampling. This removes any function which uses this->_currentState (hence stateless). The IMac model isn’t even used, but want to reuse the sampling functionality. This is necessary for use within DEPSOT. When sampling, the random seed can be specified.

Members: As in superclass

Public Functions

inline IMacBeliefSampler()

Initialises all attributes, where this->_imac is set to a nullptr.

Eigen::MatrixXi sampleFromBelief(const Eigen::MatrixXd &distMatrix, const double &seed = 0.0, const std::vector<IMacObservation> &observations = std::vector<IMacObservation>{})

Sample from a belief over the current IMac state.

Parameters:
  • distMatrix – The belief over the current IMac state.

  • seed – The random seed (if 0, use current seed)

  • observations – Any observations made at the current timestep

Returns:

The sampled IMac state

inline virtual Eigen::MatrixXi restart(const std::vector<IMacObservation> &observations = std::vector<IMacObservation>{})

Function not implemented in IMacBeliefSampler.

inline virtual Eigen::MatrixXi updateState(const std::vector<IMacObservation> &observations)

Function not implemented in IMacBeliefSampler.

inline virtual void logMapDynamics(const std::filesystem::path &outFile)

Function not implemented in IMacBeliefSampler.

inline virtual Eigen::MatrixXi clearRobotPosition(const GridCell &cell)

Function not implemented in IMacBeliefSampler.