pure virtual base class for a generic planner More...
#include <planner.h>
Public Member Functions | |
virtual void | costs_changed (StateChangeQuery const &stateChange)=0 |
Notifies the planner that costs have changed. May need to be specialized for different subclasses in terms of what to do here. | |
virtual int | force_planning_from_scratch ()=0 |
forgets previous planning efforts and starts planning from scratch next time replan is called | |
virtual double | get_final_eps_planning_time () |
returns the time taken to get the final solution | |
virtual double | get_final_epsilon () |
returns the final epsilon achieved during the search | |
virtual double | get_initial_eps () |
returns the initial epsilon | |
virtual double | get_initial_eps_planning_time () |
returns the time taken to find the first solution | |
virtual int | get_n_expands () const |
virtual int | get_n_expands_init_solution () |
returns the number of expands to find the first solution | |
virtual double | get_solution_eps () const |
virtual int | replan (double allocated_time_sec, std::vector< int > *solution_stateIDs_V)=0 |
returns 1 if solution is found, 0 otherwise will replan incrementally if possible (e.g., as supported by the planner and not forced to replan from scratch) takes in the time available for planner and returns a sequence of stateIDs that corresponds to the solution | |
virtual int | replan (double allocated_time_sec, std::vector< int > *solution_stateIDs_V, int *solcost)=0 |
works same as replan function with two parameters, but also returns the cost of the solution | |
virtual int | set_goal (int goal_stateID)=0 |
sets the goal of search (planner will automatically decide whether it needs to replan from scratch) | |
virtual void | set_initialsolution_eps (double initialsolution_eps) |
setting initial solution eps This parameter is ignored in planners that don't have a notion of eps In ARA* / AD*: (cost(initialsolution) <= eps*cost(optimalsolution)) | |
virtual int | set_search_mode (bool bSearchUntilFirstSolution)=0 |
sets the mode for searching | |
virtual int | set_start (int start_stateID)=0 |
sets the start of search (planner will automatically decide whether it needs to replan from scratch) | |
virtual | ~SBPLPlanner () |
Protected Attributes | |
DiscreteSpaceInformation * | environment_ |
virtual SBPLPlanner::~SBPLPlanner | ( | ) | [inline, virtual] |
virtual void SBPLPlanner::costs_changed | ( | StateChangeQuery const & | stateChange | ) | [pure virtual] |
Notifies the planner that costs have changed. May need to be specialized for different subclasses in terms of what to do here.
Implemented in RSTARPlanner, PPCPPlanner, ADPlanner, ARAPlanner, and anaPlanner.
virtual int SBPLPlanner::force_planning_from_scratch | ( | ) | [pure virtual] |
forgets previous planning efforts and starts planning from scratch next time replan is called
Implemented in RSTARPlanner, ARAPlanner, PPCPPlanner, ADPlanner, and anaPlanner.
virtual double SBPLPlanner::get_final_eps_planning_time | ( | ) | [inline, virtual] |
returns the time taken to get the final solution
Reimplemented in ARAPlanner, and ADPlanner.
virtual double SBPLPlanner::get_final_epsilon | ( | ) | [inline, virtual] |
returns the final epsilon achieved during the search
Reimplemented in ARAPlanner, and ADPlanner.
virtual double SBPLPlanner::get_initial_eps | ( | ) | [inline, virtual] |
returns the initial epsilon
Reimplemented in ARAPlanner, and ADPlanner.
virtual double SBPLPlanner::get_initial_eps_planning_time | ( | ) | [inline, virtual] |
returns the time taken to find the first solution
Reimplemented in ARAPlanner, and ADPlanner.
virtual int SBPLPlanner::get_n_expands | ( | ) | const [inline, virtual] |
Reimplemented in ADPlanner, ARAPlanner, and anaPlanner.
virtual int SBPLPlanner::get_n_expands_init_solution | ( | ) | [inline, virtual] |
returns the number of expands to find the first solution
Reimplemented in ARAPlanner, and ADPlanner.
virtual double SBPLPlanner::get_solution_eps | ( | ) | const [inline, virtual] |
Reimplemented in ADPlanner, ARAPlanner, and anaPlanner.
virtual int SBPLPlanner::replan | ( | double | allocated_time_sec, |
std::vector< int > * | solution_stateIDs_V | ||
) | [pure virtual] |
returns 1 if solution is found, 0 otherwise will replan incrementally if possible (e.g., as supported by the planner and not forced to replan from scratch) takes in the time available for planner and returns a sequence of stateIDs that corresponds to the solution
virtual int SBPLPlanner::replan | ( | double | allocated_time_sec, |
std::vector< int > * | solution_stateIDs_V, | ||
int * | solcost | ||
) | [pure virtual] |
works same as replan function with two parameters, but also returns the cost of the solution
virtual int SBPLPlanner::set_goal | ( | int | goal_stateID | ) | [pure virtual] |
sets the goal of search (planner will automatically decide whether it needs to replan from scratch)
Implemented in RSTARPlanner, ADPlanner, ARAPlanner, PPCPPlanner, and anaPlanner.
virtual void SBPLPlanner::set_initialsolution_eps | ( | double | initialsolution_eps | ) | [inline, virtual] |
setting initial solution eps This parameter is ignored in planners that don't have a notion of eps In ARA* / AD*: (cost(initialsolution) <= eps*cost(optimalsolution))
Reimplemented in RSTARPlanner, ADPlanner, ARAPlanner, and anaPlanner.
virtual int SBPLPlanner::set_search_mode | ( | bool | bSearchUntilFirstSolution | ) | [pure virtual] |
sets the mode for searching
if bSearchUntilFirstSolution is false, then planner searches for at most allocatime_time_sec, independently of whether it finds a solution or not (default mode) if bSearchUntilFirstSolution is true, then planner searches until it finds the first solution. It may be faster than allocated_time or it may be longer In other words, in the latter case, the planner does not spend time on improving the solution even if time permits, but may also take longer than allocated_time before returning So, normally bSearchUntilFirstSolution should be set to false.
Implemented in RSTARPlanner, ARAPlanner, PPCPPlanner, ADPlanner, and anaPlanner.
virtual int SBPLPlanner::set_start | ( | int | start_stateID | ) | [pure virtual] |
sets the start of search (planner will automatically decide whether it needs to replan from scratch)
Implemented in RSTARPlanner, ADPlanner, ARAPlanner, PPCPPlanner, and anaPlanner.
DiscreteSpaceInformation* SBPLPlanner::environment_ [protected] |