RSTAR* planner. More...
#include <rstarplanner.h>
Public Member Functions | |
void | costs_changed () |
inform the search about the new edge costs - | |
void | costs_changed (StateChangeQuery const &stateChange) |
inform the search about the new edge costs | |
int | force_planning_from_scratch () |
set a flag to get rid of the previous search efforts, release the memory and re-initialize the search, when the next replan is called | |
virtual int | get_highlevel_expands () const |
get number of high level expands | |
virtual int | get_lowlevel_expands () const |
get number of low level expands | |
virtual double | get_solution_probabilisticeps () const |
obtain probabilistic eps suboptimality bound | |
void | print_searchpath (FILE *fOut) |
print out search path | |
int | replan (double allocated_time_sec, vector< int > *solution_stateIDs_V, int *solcost) |
replan a path within the allocated time, return the solution in the vector, also returns solution cost | |
int | replan (double allocated_time_secs, vector< int > *solution_stateIDs_V) |
replan a path within the allocated time, return the solution in the vector | |
RSTARPlanner (DiscreteSpaceInformation *environment, bool bforwardsearch) | |
constructor | |
int | set_goal (int goal_stateID) |
set the goal state | |
virtual void | set_initialsolution_eps (double initialsolution_eps) |
set initial solution epsilon that R* will try to satisfy (probabilistically) | |
int | set_search_mode (bool bSearchUntilFirstSolution) |
you can either search forwards or backwards | |
int | set_start (int start_stateID) |
set the start state | |
~RSTARPlanner () | |
destructor | |
Private Member Functions | |
int | ComputeHeuristic (CMDPSTATE *MDPstate) |
CKey | ComputeKey (RSTARState *rstarState) |
bool | ComputeLocalPath (int StartStateID, int GoalStateID, int maxc, int maxe, int *pCost, int *pCostLow, int *pExp, vector< int > *pPathIDs, int *pNewGoalStateID, double maxnumofsecs) |
CMDPSTATE * | CreateLSearchState (int stateID) |
int | CreateSearchStateSpace () |
CMDPSTATE * | CreateState (int stateID) |
void | DeleteSearchActionData (RSTARACTIONDATA *actiondata) |
void | DeleteSearchStateData (RSTARState *state) |
void | DeleteSearchStateSpace () |
bool | DestroyLocalSearchMemory () |
int | GetGVal (int StateID) |
int | getHeurValue (int StateID) |
CMDPSTATE * | GetLSearchState (int stateID) |
vector< int > | GetSearchPath (int &solcost) |
CMDPSTATE * | GetState (int stateID) |
int | ImprovePath (double MaxNumofSecs) |
void | Initialize_rstarlsearchdata (CMDPSTATE *state) |
void | Initialize_searchinfo (CMDPSTATE *state) |
void | InitializeSearchStateInfo (RSTARState *state) |
int | InitializeSearchStateSpace () |
CKey | LocalSearchComputeKey (RSTARLSearchState *rstarlsearchState) |
void | PrintSearchPath (FILE *fOut) |
void | PrintSearchState (RSTARState *state, FILE *fOut) |
void | Reevaluatefvals () |
void | ReInitializeSearchStateInfo (RSTARState *state) |
void | ReInitializeSearchStateSpace () |
int | ResetSearchStateSpace () |
bool | Search (vector< int > &pathIds, int &PathCost, bool bFirstSolution, bool bOptimalSolution, double MaxNumofSecs) |
void | SetBestPredecessor (RSTARState *rstarState, RSTARState *rstarPredState, CMDPACTION *action) |
int | SetSearchGoalState (int SearchGoalStateID) |
int | SetSearchStartState (int SearchStartStateID) |
Private Attributes | |
bool | bforwardsearch |
bool | bsearchuntilfirstsolution |
FILE * | fDeb |
double | finitial_eps |
unsigned int | highlevel_searchexpands |
unsigned int | lowlevel_searchexpands |
int | MaxMemoryCounter |
RSTARLSearchStateSpace_t * | pLSearchStateSpace |
RSTARSearchStateSpace_t * | pSearchStateSpace |
clock_t | TimeStarted |
RSTAR* planner.
Definition at line 236 of file rstarplanner.h.
RSTARPlanner::RSTARPlanner | ( | DiscreteSpaceInformation * | environment, | |
bool | bforwardsearch | |||
) |
constructor
Definition at line 40 of file rstarplanner.cpp.
RSTARPlanner::~RSTARPlanner | ( | ) |
destructor
Definition at line 87 of file rstarplanner.cpp.
int RSTARPlanner::ComputeHeuristic | ( | CMDPSTATE * | MDPstate | ) | [private] |
Definition at line 435 of file rstarplanner.cpp.
CKey RSTARPlanner::ComputeKey | ( | RSTARState * | rstarState | ) | [private] |
Definition at line 576 of file rstarplanner.cpp.
bool RSTARPlanner::ComputeLocalPath | ( | int | StartStateID, | |
int | GoalStateID, | |||
int | maxc, | |||
int | maxe, | |||
int * | pCost, | |||
int * | pCostLow, | |||
int * | pExp, | |||
vector< int > * | pPathIDs, | |||
int * | pNewGoalStateID, | |||
double | maxnumofsecs | |||
) | [private] |
Definition at line 250 of file rstarplanner.cpp.
void RSTARPlanner::costs_changed | ( | ) |
inform the search about the new edge costs -
Definition at line 1521 of file rstarplanner.cpp.
void RSTARPlanner::costs_changed | ( | StateChangeQuery const & | stateChange | ) | [virtual] |
inform the search about the new edge costs
Implements SBPLPlanner.
Definition at line 1514 of file rstarplanner.cpp.
CMDPSTATE * RSTARPlanner::CreateLSearchState | ( | int | stateID | ) | [private] |
Definition at line 184 of file rstarplanner.cpp.
int RSTARPlanner::CreateSearchStateSpace | ( | ) | [private] |
Definition at line 957 of file rstarplanner.cpp.
CMDPSTATE * RSTARPlanner::CreateState | ( | int | stateID | ) | [private] |
Definition at line 108 of file rstarplanner.cpp.
void RSTARPlanner::DeleteSearchActionData | ( | RSTARACTIONDATA * | actiondata | ) | [private] |
Definition at line 549 of file rstarplanner.cpp.
void RSTARPlanner::DeleteSearchStateData | ( | RSTARState * | state | ) | [private] |
Definition at line 533 of file rstarplanner.cpp.
void RSTARPlanner::DeleteSearchStateSpace | ( | ) | [private] |
Definition at line 975 of file rstarplanner.cpp.
bool RSTARPlanner::DestroyLocalSearchMemory | ( | ) | [private] |
Definition at line 402 of file rstarplanner.cpp.
int RSTARPlanner::force_planning_from_scratch | ( | ) | [virtual] |
set a flag to get rid of the previous search efforts, release the memory and re-initialize the search, when the next replan is called
Implements SBPLPlanner.
Definition at line 1530 of file rstarplanner.cpp.
virtual int RSTARPlanner::get_highlevel_expands | ( | ) | const [inline, virtual] |
get number of high level expands
Definition at line 274 of file rstarplanner.h.
virtual int RSTARPlanner::get_lowlevel_expands | ( | ) | const [inline, virtual] |
get number of low level expands
Definition at line 277 of file rstarplanner.h.
virtual double RSTARPlanner::get_solution_probabilisticeps | ( | ) | const [inline, virtual] |
obtain probabilistic eps suboptimality bound
Definition at line 271 of file rstarplanner.h.
int RSTARPlanner::GetGVal | ( | int | StateID | ) | [private] |
Definition at line 557 of file rstarplanner.cpp.
int RSTARPlanner::getHeurValue | ( | int | StateID | ) | [private] |
Definition at line 1161 of file rstarplanner.cpp.
CMDPSTATE * RSTARPlanner::GetLSearchState | ( | int | stateID | ) | [private] |
Definition at line 218 of file rstarplanner.cpp.
vector< int > RSTARPlanner::GetSearchPath | ( | int & | solcost | ) | [private] |
Definition at line 1169 of file rstarplanner.cpp.
CMDPSTATE * RSTARPlanner::GetState | ( | int | stateID | ) | [private] |
Definition at line 144 of file rstarplanner.cpp.
int RSTARPlanner::ImprovePath | ( | double | MaxNumofSecs | ) | [private] |
Definition at line 608 of file rstarplanner.cpp.
void RSTARPlanner::Initialize_rstarlsearchdata | ( | CMDPSTATE * | state | ) | [private] |
Definition at line 166 of file rstarplanner.cpp.
void RSTARPlanner::Initialize_searchinfo | ( | CMDPSTATE * | state | ) | [private] |
Definition at line 98 of file rstarplanner.cpp.
void RSTARPlanner::InitializeSearchStateInfo | ( | RSTARState * | state | ) | [private] |
Definition at line 469 of file rstarplanner.cpp.
int RSTARPlanner::InitializeSearchStateSpace | ( | ) | [private] |
Definition at line 1070 of file rstarplanner.cpp.
CKey RSTARPlanner::LocalSearchComputeKey | ( | RSTARLSearchState * | rstarlsearchState | ) | [private] |
Definition at line 234 of file rstarplanner.cpp.
void RSTARPlanner::print_searchpath | ( | FILE * | fOut | ) |
print out search path
Definition at line 1551 of file rstarplanner.cpp.
void RSTARPlanner::PrintSearchPath | ( | FILE * | fOut | ) | [private] |
Definition at line 1267 of file rstarplanner.cpp.
void RSTARPlanner::PrintSearchState | ( | RSTARState * | state, | |
FILE * | fOut | |||
) | [private] |
Definition at line 1150 of file rstarplanner.cpp.
void RSTARPlanner::Reevaluatefvals | ( | ) | [private] |
Definition at line 935 of file rstarplanner.cpp.
void RSTARPlanner::ReInitializeSearchStateInfo | ( | RSTARState * | state | ) | [private] |
Definition at line 494 of file rstarplanner.cpp.
void RSTARPlanner::ReInitializeSearchStateSpace | ( | ) | [private] |
Definition at line 1032 of file rstarplanner.cpp.
int RSTARPlanner::replan | ( | double | allocated_time_sec, | |
vector< int > * | solution_stateIDs_V, | |||
int * | solcost | |||
) |
replan a path within the allocated time, return the solution in the vector, also returns solution cost
Definition at line 1431 of file rstarplanner.cpp.
int RSTARPlanner::replan | ( | double | allocated_time_secs, | |
vector< int > * | solution_stateIDs_V | |||
) |
replan a path within the allocated time, return the solution in the vector
Definition at line 1422 of file rstarplanner.cpp.
int RSTARPlanner::ResetSearchStateSpace | ( | ) | [private] |
Definition at line 1022 of file rstarplanner.cpp.
bool RSTARPlanner::Search | ( | vector< int > & | pathIds, | |
int & | PathCost, | |||
bool | bFirstSolution, | |||
bool | bOptimalSolution, | |||
double | MaxNumofSecs | |||
) | [private] |
Definition at line 1282 of file rstarplanner.cpp.
int RSTARPlanner::set_goal | ( | int | goal_stateID | ) | [virtual] |
virtual void RSTARPlanner::set_initialsolution_eps | ( | double | initialsolution_eps | ) | [inline, virtual] |
set initial solution epsilon that R* will try to satisfy (probabilistically)
Reimplemented from SBPLPlanner.
Definition at line 280 of file rstarplanner.h.
int RSTARPlanner::set_search_mode | ( | bool | bSearchUntilFirstSolution | ) | [virtual] |
you can either search forwards or backwards
Implements SBPLPlanner.
Definition at line 1540 of file rstarplanner.cpp.
int RSTARPlanner::set_start | ( | int | start_stateID | ) | [virtual] |
void RSTARPlanner::SetBestPredecessor | ( | RSTARState * | rstarState, | |
RSTARState * | rstarPredState, | |||
CMDPACTION * | action | |||
) | [private] |
Definition at line 565 of file rstarplanner.cpp.
int RSTARPlanner::SetSearchGoalState | ( | int | SearchGoalStateID | ) | [private] |
Definition at line 1101 of file rstarplanner.cpp.
int RSTARPlanner::SetSearchStartState | ( | int | SearchStartStateID | ) | [private] |
Definition at line 1132 of file rstarplanner.cpp.
bool RSTARPlanner::bforwardsearch [private] |
Definition at line 301 of file rstarplanner.h.
bool RSTARPlanner::bsearchuntilfirstsolution [private] |
Definition at line 303 of file rstarplanner.h.
FILE* RSTARPlanner::fDeb [private] |
Definition at line 312 of file rstarplanner.h.
double RSTARPlanner::finitial_eps [private] |
Definition at line 299 of file rstarplanner.h.
unsigned int RSTARPlanner::highlevel_searchexpands [private] |
Definition at line 308 of file rstarplanner.h.
unsigned int RSTARPlanner::lowlevel_searchexpands [private] |
Definition at line 309 of file rstarplanner.h.
int RSTARPlanner::MaxMemoryCounter [private] |
Definition at line 310 of file rstarplanner.h.
Definition at line 306 of file rstarplanner.h.
Definition at line 305 of file rstarplanner.h.
clock_t RSTARPlanner::TimeStarted [private] |
Definition at line 311 of file rstarplanner.h.