ARAPlanner Class Reference

ARA* planner. More...

#include <araplanner.h>

Inheritance diagram for ARAPlanner:
Inheritance graph
[legend]

List of all members.

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)
CMDPSTATECreateState (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)
CMDPSTATEGetState (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
MDPConfigMDPCfg_
int num_of_expands_initial_solution
ARASearchStateSpace_tpSearchStateSpace_
unsigned int searchexpands
clock_t TimeStarted

Detailed Description

ARA* planner.

Definition at line 123 of file araplanner.h.


Constructor & Destructor Documentation

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.


Member Function Documentation

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 -

Note:
since ARA* is non-incremental, it is sufficient (and more efficient) to just inform ARA* of the fact that some costs changed

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]

set the goal state

Implements SBPLPlanner.

Definition at line 1158 of file araplanner.cpp.

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]

set the start state

Implements SBPLPlanner.

Definition at line 1185 of file araplanner.cpp.

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.


Member Data Documentation

Definition at line 213 of file araplanner.h.

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.

Definition at line 202 of file araplanner.h.

double ARAPlanner::finitial_eps [private]

Definition at line 202 of file araplanner.h.

Definition at line 202 of file araplanner.h.

Definition at line 220 of file araplanner.h.

Definition at line 211 of file araplanner.h.

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.


The documentation for this class was generated from the following files:
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Defines


sbpl
Author(s): Maxim Likhachev/maximl@seas.upenn.edu
autogenerated on Fri Jan 11 09:38:50 2013