ARA* planner. More...
#include <araplanner.h>
Public Member Functions | |
ARAPlanner (DiscreteSpaceInformation *environment, bool bforwardsearch) | |
constructor | |
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 | |
double | get_final_eps_planning_time () |
returns the time taken to get the final solution | |
double | get_final_epsilon () |
returns the final epsilon achieved during the search | |
double | get_initial_eps () |
returns the initial epsilon | |
double | get_initial_eps_planning_time () |
returns the time taken to find the first solution | |
virtual int | get_n_expands () const |
returns the number of states expanded so far | |
int | get_n_expands_init_solution () |
returns the number of expands to find the first solution | |
virtual double | get_solution_eps () const |
returns the suboptimality bound on the currently found solution | |
void | print_searchpath (FILE *fOut) |
prints out the search path into a file | |
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 | |
int | set_goal (int goal_stateID) |
set the goal state | |
virtual void | set_initialsolution_eps (double initialsolution_eps) |
returns the value of the initial epsilon (suboptimality bound) used | |
int | set_search_mode (bool bSearchUntilFirstSolution) |
you can either search forwards or backwards | |
int | set_start (int start_stateID) |
set the start state | |
~ARAPlanner () | |
destructor | |
Private Member Functions | |
void | BuildNewOPENList (ARASearchStateSpace_t *pSearchStateSpace) |
int | ComputeHeuristic (CMDPSTATE *MDPstate, ARASearchStateSpace_t *pSearchStateSpace) |
int | CreateSearchStateSpace (ARASearchStateSpace_t *pSearchStateSpace) |
CMDPSTATE * | CreateState (int stateID, ARASearchStateSpace_t *pSearchStateSpace) |
void | DeleteSearchStateData (ARAState *state) |
void | DeleteSearchStateSpace (ARASearchStateSpace_t *pSearchStateSpace) |
int | GetGVal (int StateID, ARASearchStateSpace_t *pSearchStateSpace) |
int | getHeurValue (ARASearchStateSpace_t *pSearchStateSpace, int StateID) |
vector< int > | GetSearchPath (ARASearchStateSpace_t *pSearchStateSpace, int &solcost) |
CMDPSTATE * | GetState (int stateID, ARASearchStateSpace_t *pSearchStateSpace) |
int | ImprovePath (ARASearchStateSpace_t *pSearchStateSpace, double MaxNumofSecs) |
void | Initialize_searchinfo (CMDPSTATE *state, ARASearchStateSpace_t *pSearchStateSpace) |
void | InitializeSearchStateInfo (ARAState *state, ARASearchStateSpace_t *pSearchStateSpace) |
int | InitializeSearchStateSpace (ARASearchStateSpace_t *pSearchStateSpace) |
void | PrintSearchPath (ARASearchStateSpace_t *pSearchStateSpace, FILE *fOut) |
void | PrintSearchState (ARAState *state, FILE *fOut) |
int | ReconstructPath (ARASearchStateSpace_t *pSearchStateSpace) |
void | Reevaluatefvals (ARASearchStateSpace_t *pSearchStateSpace) |
void | ReInitializeSearchStateInfo (ARAState *state, ARASearchStateSpace_t *pSearchStateSpace) |
void | ReInitializeSearchStateSpace (ARASearchStateSpace_t *pSearchStateSpace) |
int | ResetSearchStateSpace (ARASearchStateSpace_t *pSearchStateSpace) |
bool | Search (ARASearchStateSpace_t *pSearchStateSpace, vector< int > &pathIds, int &PathCost, bool bFirstSolution, bool bOptimalSolution, double MaxNumofSecs) |
int | SetSearchGoalState (int SearchGoalStateID, ARASearchStateSpace_t *pSearchStateSpace) |
int | SetSearchStartState (int SearchStartStateID, ARASearchStateSpace_t *pSearchStateSpace) |
void | UpdatePreds (ARAState *state, ARASearchStateSpace_t *pSearchStateSpace) |
void | UpdateSuccs (ARAState *state, ARASearchStateSpace_t *pSearchStateSpace) |
Private Attributes | |
bool | bforwardsearch |
bool | bsearchuntilfirstsolution |
FILE * | fDeb |
double | final_eps |
double | final_eps_planning_time |
double | finitial_eps |
double | finitial_eps_planning_time |
int | MaxMemoryCounter |
MDPConfig * | MDPCfg_ |
int | num_of_expands_initial_solution |
ARASearchStateSpace_t * | pSearchStateSpace_ |
unsigned int | searchexpands |
clock_t | TimeStarted |
ARA* planner.
Definition at line 123 of file araplanner.h.
ARAPlanner::ARAPlanner | ( | DiscreteSpaceInformation * | environment, | |
bool | bforwardsearch | |||
) |
constructor
Definition at line 39 of file araplanner.cpp.
ARAPlanner::~ARAPlanner | ( | ) |
destructor
Definition at line 81 of file araplanner.cpp.
void ARAPlanner::BuildNewOPENList | ( | ARASearchStateSpace_t * | pSearchStateSpace | ) | [private] |
Definition at line 502 of file araplanner.cpp.
int ARAPlanner::ComputeHeuristic | ( | CMDPSTATE * | MDPstate, | |
ARASearchStateSpace_t * | pSearchStateSpace | |||
) | [private] |
Definition at line 161 of file araplanner.cpp.
void ARAPlanner::costs_changed | ( | ) |
inform the search about the new edge costs -
Definition at line 1224 of file araplanner.cpp.
void ARAPlanner::costs_changed | ( | StateChangeQuery const & | stateChange | ) | [virtual] |
inform the search about the new edge costs
Implements SBPLPlanner.
Definition at line 1215 of file araplanner.cpp.
int ARAPlanner::CreateSearchStateSpace | ( | ARASearchStateSpace_t * | pSearchStateSpace | ) | [private] |
Definition at line 550 of file araplanner.cpp.
CMDPSTATE * ARAPlanner::CreateState | ( | int | stateID, | |
ARASearchStateSpace_t * | pSearchStateSpace | |||
) | [private] |
Definition at line 102 of file araplanner.cpp.
void ARAPlanner::DeleteSearchStateData | ( | ARAState * | state | ) | [private] |
Definition at line 257 of file araplanner.cpp.
void ARAPlanner::DeleteSearchStateSpace | ( | ARASearchStateSpace_t * | pSearchStateSpace | ) | [private] |
Definition at line 571 of file araplanner.cpp.
int ARAPlanner::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 1233 of file araplanner.cpp.
double ARAPlanner::get_final_eps_planning_time | ( | ) | [inline, virtual] |
returns the time taken to get the final solution
Reimplemented from SBPLPlanner.
Definition at line 194 of file araplanner.h.
double ARAPlanner::get_final_epsilon | ( | ) | [inline, virtual] |
returns the final epsilon achieved during the search
Reimplemented from SBPLPlanner.
Definition at line 202 of file araplanner.h.
double ARAPlanner::get_initial_eps | ( | ) | [inline, virtual] |
returns the initial epsilon
Reimplemented from SBPLPlanner.
Definition at line 186 of file araplanner.h.
double ARAPlanner::get_initial_eps_planning_time | ( | ) | [inline, virtual] |
returns the time taken to find the first solution
Reimplemented from SBPLPlanner.
Definition at line 190 of file araplanner.h.
virtual int ARAPlanner::get_n_expands | ( | ) | const [inline, virtual] |
returns the number of states expanded so far
Reimplemented from SBPLPlanner.
Definition at line 166 of file araplanner.h.
int ARAPlanner::get_n_expands_init_solution | ( | ) | [inline, virtual] |
returns the number of expands to find the first solution
Reimplemented from SBPLPlanner.
Definition at line 198 of file araplanner.h.
virtual double ARAPlanner::get_solution_eps | ( | ) | const [inline, virtual] |
returns the suboptimality bound on the currently found solution
Reimplemented from SBPLPlanner.
Definition at line 162 of file araplanner.h.
int ARAPlanner::GetGVal | ( | int | StateID, | |
ARASearchStateSpace_t * | pSearchStateSpace | |||
) | [private] |
Definition at line 362 of file araplanner.cpp.
int ARAPlanner::getHeurValue | ( | ARASearchStateSpace_t * | pSearchStateSpace, | |
int | StateID | |||
) | [private] |
Definition at line 880 of file araplanner.cpp.
vector< int > ARAPlanner::GetSearchPath | ( | ARASearchStateSpace_t * | pSearchStateSpace, | |
int & | solcost | |||
) | [private] |
Definition at line 888 of file araplanner.cpp.
CMDPSTATE * ARAPlanner::GetState | ( | int | stateID, | |
ARASearchStateSpace_t * | pSearchStateSpace | |||
) | [private] |
Definition at line 138 of file araplanner.cpp.
int ARAPlanner::ImprovePath | ( | ARASearchStateSpace_t * | pSearchStateSpace, | |
double | MaxNumofSecs | |||
) | [private] |
Definition at line 370 of file araplanner.cpp.
void ARAPlanner::Initialize_searchinfo | ( | CMDPSTATE * | state, | |
ARASearchStateSpace_t * | pSearchStateSpace | |||
) | [private] |
Definition at line 92 of file araplanner.cpp.
void ARAPlanner::InitializeSearchStateInfo | ( | ARAState * | state, | |
ARASearchStateSpace_t * | pSearchStateSpace | |||
) | [private] |
Definition at line 192 of file araplanner.cpp.
int ARAPlanner::InitializeSearchStateSpace | ( | ARASearchStateSpace_t * | pSearchStateSpace | ) | [private] |
Definition at line 656 of file araplanner.cpp.
void ARAPlanner::print_searchpath | ( | FILE * | fOut | ) |
prints out the search path into a file
Definition at line 1254 of file araplanner.cpp.
void ARAPlanner::PrintSearchPath | ( | ARASearchStateSpace_t * | pSearchStateSpace, | |
FILE * | fOut | |||
) | [private] |
Definition at line 797 of file araplanner.cpp.
void ARAPlanner::PrintSearchState | ( | ARAState * | state, | |
FILE * | fOut | |||
) | [private] |
Definition at line 869 of file araplanner.cpp.
int ARAPlanner::ReconstructPath | ( | ARASearchStateSpace_t * | pSearchStateSpace | ) | [private] |
Definition at line 736 of file araplanner.cpp.
void ARAPlanner::Reevaluatefvals | ( | ARASearchStateSpace_t * | pSearchStateSpace | ) | [private] |
Definition at line 526 of file araplanner.cpp.
void ARAPlanner::ReInitializeSearchStateInfo | ( | ARAState * | state, | |
ARASearchStateSpace_t * | pSearchStateSpace | |||
) | [private] |
Definition at line 222 of file araplanner.cpp.
void ARAPlanner::ReInitializeSearchStateSpace | ( | ARASearchStateSpace_t * | pSearchStateSpace | ) | [private] |
Definition at line 614 of file araplanner.cpp.
int ARAPlanner::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 1132 of file araplanner.cpp.
int ARAPlanner::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 1123 of file araplanner.cpp.
int ARAPlanner::ResetSearchStateSpace | ( | ARASearchStateSpace_t * | pSearchStateSpace | ) | [private] |
Definition at line 605 of file araplanner.cpp.
bool ARAPlanner::Search | ( | ARASearchStateSpace_t * | pSearchStateSpace, | |
vector< int > & | pathIds, | |||
int & | PathCost, | |||
bool | bFirstSolution, | |||
bool | bOptimalSolution, | |||
double | MaxNumofSecs | |||
) | [private] |
Definition at line 989 of file araplanner.cpp.
int ARAPlanner::set_goal | ( | int | goal_stateID | ) | [virtual] |
virtual void ARAPlanner::set_initialsolution_eps | ( | double | initialsolution_eps | ) | [inline, virtual] |
returns the value of the initial epsilon (suboptimality bound) used
Reimplemented from SBPLPlanner.
Definition at line 170 of file araplanner.h.
int ARAPlanner::set_search_mode | ( | bool | bSearchUntilFirstSolution | ) | [virtual] |
you can either search forwards or backwards
Implements SBPLPlanner.
Definition at line 1243 of file araplanner.cpp.
int ARAPlanner::set_start | ( | int | start_stateID | ) | [virtual] |
int ARAPlanner::SetSearchGoalState | ( | int | SearchGoalStateID, | |
ARASearchStateSpace_t * | pSearchStateSpace | |||
) | [private] |
Definition at line 687 of file araplanner.cpp.
int ARAPlanner::SetSearchStartState | ( | int | SearchStartStateID, | |
ARASearchStateSpace_t * | pSearchStateSpace | |||
) | [private] |
Definition at line 719 of file araplanner.cpp.
void ARAPlanner::UpdatePreds | ( | ARAState * | state, | |
ARASearchStateSpace_t * | pSearchStateSpace | |||
) | [private] |
Definition at line 267 of file araplanner.cpp.
void ARAPlanner::UpdateSuccs | ( | ARAState * | state, | |
ARASearchStateSpace_t * | pSearchStateSpace | |||
) | [private] |
Definition at line 312 of file araplanner.cpp.
bool ARAPlanner::bforwardsearch [private] |
Definition at line 213 of file araplanner.h.
bool ARAPlanner::bsearchuntilfirstsolution [private] |
Definition at line 215 of file araplanner.h.
FILE* ARAPlanner::fDeb [private] |
Definition at line 222 of file araplanner.h.
double ARAPlanner::final_eps [private] |
Definition at line 202 of file araplanner.h.
double ARAPlanner::final_eps_planning_time [private] |
Definition at line 202 of file araplanner.h.
double ARAPlanner::finitial_eps [private] |
Definition at line 202 of file araplanner.h.
double ARAPlanner::finitial_eps_planning_time [private] |
Definition at line 202 of file araplanner.h.
int ARAPlanner::MaxMemoryCounter [private] |
Definition at line 220 of file araplanner.h.
MDPConfig* ARAPlanner::MDPCfg_ [private] |
Definition at line 211 of file araplanner.h.
int ARAPlanner::num_of_expands_initial_solution [private] |
Definition at line 209 of file araplanner.h.
Definition at line 217 of file araplanner.h.
unsigned int ARAPlanner::searchexpands [private] |
Definition at line 219 of file araplanner.h.
clock_t ARAPlanner::TimeStarted [private] |
Definition at line 221 of file araplanner.h.