Class CoveragePlanner

Inheritance Relationships

Base Type

  • public despot::Planner

Class Documentation

class CoveragePlanner : public despot::Planner

Class for POMDP coverage planner

Attributes: Same as superclass, plus:

  • _initPos: The robot’s initial location

  • _initTime: The robot’s starting time

  • _timeBound: The time bound for planning

  • _fov: The robot’s FOV as a vector of relative grid cells

  • _exec: The IMac executor describing how the real world operates

  • _planIMac: The IMac model used for planning, which may not match with _exec

  • _boundType: The type of upper and lower bounds to use during planning

  • _pruningConstant: The DESPOT regularisation constant

  • _numScenarios: The number of scenarios to sample in DESPOT

Public Functions

inline CoveragePlanner(const GridCell &initPos, const int &initTime, const int &timeBound, const std::vector<GridCell> &fov, std::shared_ptr<IMacExecutor> exec, std::shared_ptr<IMac> planIMac, std::string boundType = "DEFAULT", const double &pruningConstant = 0.1, const int &numScenarios = 500)

Calls super constructor and initialises attributes.

Parameters:
  • initPos – The robot’s initial position

  • initTime – The robot’s start time

  • timeBound – The time bound on planning

  • fov – The robot’s field of view as a vector of relative grid cells

  • exec – The IMac executor which defines the world

  • planIMac – The IMac model used for planning

  • boundType – The type of upper and lower bounds to use during planning

  • pruningConstant – The DESPOT regularisation constant

  • numScenarios – The number of scenarios to sample in DESPOT

inline ~CoveragePlanner()

Empty destructor.

despot::DSPOMDP *InitializeModel(despot::option::Option *options)

Create, initialize, and return a CoveragePOMDP model.

Parameters:

options – Parsed command line options (not used)

Returns:

The coverage POMDP

despot::World *InitializeWorld(std::string &world_type, despot::DSPOMDP *model, despot::option::Option *options)

Create, initialize, and return the CoverageWorld. All args are ignored

Parameters:
  • world_type – Type of the world: pomdp, simulator, or real-world

  • model – The POMDP model

  • options – Parsed command line options

Returns:

The coverage world

virtual void InitializeDefaultParameters()

Provide default values for global parameters (such as those in Globals::config)

despot::option::Option *InitializeParameters(std::string &solver_type, bool &search_solver, int &num_runs, std::string &simulator_type, std::string &belief_type, int &time_limit)

A wrapper around InitializeParamers which feeds in custom argv. Also fixes the typo in the function name.

Parameters:
  • solver_type – The type of solver

  • search_solver – Not entirely sure. Inherited from DESPOT

  • num_runs – How many runs to run

  • simulator_type – The simulation type

  • belief_type – The type of belief used for planning

  • time_limit – The time limit for planning

Returns:

The options fed into the planner

virtual std::string ChooseSolver()

Return name of solver to be used (here: DESPOT).

Returns:

The name of the solver