|
| DelayedHeuristicAStar (int batchLookupSize) |
|
virtual | ~DelayedHeuristicAStar () |
|
void | GetPath (environment *env, const state &from, const state &to, std::vector< state > &thePath) |
| Perform an A* search between two states. More...
|
|
void | GetPath (environment *, const state &, const state &, std::vector< action > &) |
|
bool | InitializeSearch (environment *env, const state &from, const state &to, std::vector< state > &thePath) |
| Initialize the A* search. More...
|
|
bool | DoSingleSearchStep (std::vector< state > &thePath) |
| Expand a single node. More...
|
|
state | CheckNextNode () |
| Returns the next state on the open list (but doesn't pop it off the queue). More...
|
|
void | ExtractPathToStart (state &node, std::vector< state > &thePath) |
|
void | ExtractPathToStartFromID (uint64_t node, std::vector< state > &thePath) |
| Get the path from a goal state to the start state. More...
|
|
const state & | GetParent (const state &s) |
|
virtual const char * | GetName () |
| Return the name of the algorithm. More...
|
|
void | PrintStats () |
| A function that prints the number of states in the closed list and open queue. More...
|
|
uint64_t | GetUniqueNodesExpanded () |
|
void | ResetNodeCount () |
|
int | GetMemoryUsage () |
| Return the amount of memory used by DelayedHeuristicAStar. More...
|
|
bool | GetClosedListGCost (const state &val, double &gCost) const |
| Get state from the closed list. More...
|
|
bool | GetOpenListGCost (const state &val, double &gCost) const |
|
bool | GetHCost (const state &val, double &hCost) const |
|
bool | GetClosedItem (const state &s, AStarOpenClosedDataWithF< state > &) |
|
unsigned int | GetNumOpenItems () |
|
const AStarOpenClosedDataWithF< state > & | GetOpenItem (unsigned int which) |
|
const int | GetNumItems () |
|
const AStarOpenClosedDataWithF< state > & | GetItem (unsigned int which) |
|
bool | HaveExpandedState (const state &val) |
|
dataLocation | GetStateLocation (const state &val) |
|
void | SetReopenNodes (bool re) |
|
bool | GetReopenNodes () |
|
void | SetDirected (bool d) |
|
void | SetHeuristic (Heuristic< state > *h) |
|
void | SetConstraint (Constraint< state > *c) |
|
uint64_t | GetNodesExpanded () const |
|
uint64_t | GetNodesTouched () const |
|
uint64_t | GetNecessaryExpansions () const |
|
void | LogFinalStats (StatCollection *) |
|
void | SetStopAfterGoal (bool val) |
|
bool | GetStopAfterGoal () |
|
void | FullBPMX (uint64_t nodeID, int distance) |
| Perform a full bpmx propagation. More...
|
|
void | OpenGLDraw () const |
| Draw the open/closed list. More...
|
|
void | Draw (Graphics::Display &disp) const |
| Draw the open/closed list. More...
|
|
std::string | SVGDraw () const |
|
std::string | SVGDrawDetailed () const |
|
void | SetPhi (std::function< double(double, double)> p) |
| Setting this function. More...
|
|
double | Phi (double h, double g) |
|
void | SetWeight (double w) |
|
double | GetWeight () |
|
| GenericSearchAlgorithm () |
|
virtual | ~GenericSearchAlgorithm () |
|
virtual void | OpenGLDraw (const environment *env) const |
|
template<class state, class action, class environment, class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
class DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >
A templated version of A*, based on TemplateAStar, which delays heuristic lookups as long as possible and batches them.
Definition at line 63 of file DelayedHeuristicAStar.h.
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
Definition at line 65 of file DelayedHeuristicAStar.h.
References DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::directed, DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::env, DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::phi, DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::reopenNodes, DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::ResetNodeCount(), DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::stopAfterGoal, DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::theConstraint, DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::theHeuristic, and DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::weight.
template<class state , class action , class environment , class batchHeuristic , class openList >
bool DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::DoSingleSearchStep |
( |
std::vector< state > & |
thePath | ) |
|
|
virtual |
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
void DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::ExtractPathToStart |
( |
state & |
node, |
|
|
std::vector< state > & |
thePath |
|
) |
| |
|
inline |
Definition at line 83 of file DelayedHeuristicAStar.h.
References DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::env, DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::ExtractPathToStartFromID(), kNotFound, and DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::openClosedList.
template<class state , class action , class environment , class batchHeuristic , class openList >
void DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::ExtractPathToStartFromID |
( |
uint64_t |
node, |
|
|
std::vector< state > & |
thePath |
|
) |
| |
template<class state , class action , class environment , class batchHeuristic , class openList >
void DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::FullBPMX |
( |
uint64_t |
nodeID, |
|
|
int |
distance |
|
) |
| |
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
template<class state , class action , class environment , class batchHeuristic , class openList >
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
uint64_t DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::GetNodesExpanded |
( |
| ) |
const |
|
inlinevirtual |
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
uint64_t DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::GetNodesTouched |
( |
| ) |
const |
|
inlinevirtual |
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
unsigned int DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::GetNumOpenItems |
( |
| ) |
|
|
inline |
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
template<class state , class action , class environment , class batchHeuristic , class openList >
void DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::GetPath |
( |
environment * |
_env, |
|
|
const state & |
from, |
|
|
const state & |
to, |
|
|
std::vector< state > & |
thePath |
|
) |
| |
|
virtual |
Perform an A* search between two states.
- Author
- Nathan Sturtevant
- Date
- 03/22/06
- Parameters
-
_env | The search environment |
from | The start state |
to | The goal state |
thePath | A vector of states which will contain an optimal path between from and to when the function returns, if one exists. |
Implements GenericSearchAlgorithm< state, action, environment >.
Definition at line 213 of file DelayedHeuristicAStar.h.
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
uint64_t DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::GetUniqueNodesExpanded |
( |
| ) |
|
|
inline |
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
bool DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::HaveExpandedState |
( |
const state & |
val | ) |
|
|
inline |
Definition at line 107 of file DelayedHeuristicAStar.h.
References DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::env, kNotFound, and DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::openClosedList.
template<class state , class action , class environment , class batchHeuristic , class openList >
bool DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::InitializeSearch |
( |
environment * |
_env, |
|
|
const state & |
from, |
|
|
const state & |
to, |
|
|
std::vector< state > & |
thePath |
|
) |
| |
|
virtual |
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
template<class state , class action , class environment , class batchHeuristic , class openList >
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
double DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::Phi |
( |
double |
h, |
|
|
double |
g |
|
) |
| |
|
inline |
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
Definition at line 96 of file DelayedHeuristicAStar.h.
References DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::nodesExpanded, DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::nodesTouched, and DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::uniqueNodesExpanded.
Referenced by DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::DelayedHeuristicAStar().
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
void DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::SetDirected |
( |
bool |
d | ) |
|
|
inline |
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
void DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::SetPhi |
( |
std::function< double(double, double)> |
p | ) |
|
|
inline |
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
void DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::SetReopenNodes |
( |
bool |
re | ) |
|
|
inline |
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
void DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::SetStopAfterGoal |
( |
bool |
val | ) |
|
|
inline |
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
void DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::SetWeight |
( |
double |
w | ) |
|
|
inline |
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
std::vector<double> DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::edgeCosts |
|
private |
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
Definition at line 159 of file DelayedHeuristicAStar.h.
Referenced by DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::DelayedHeuristicAStar(), DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::ExtractPathToStart(), DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::GetStateLocation(), and DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::HaveExpandedState().
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
std::vector<uint64_t> DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::neighborID |
|
private |
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
std::vector<state> DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::neighbors |
|
private |
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
Definition at line 76 of file DelayedHeuristicAStar.h.
Referenced by DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::ExtractPathToStart(), DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::GetItem(), DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::GetNumItems(), DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::GetNumOpenItems(), DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::GetOpenItem(), DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::GetStateLocation(), and DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::HaveExpandedState().
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
std::function<double(double, double)> DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::phi |
|
private |
Definition at line 164 of file DelayedHeuristicAStar.h.
Referenced by DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::DelayedHeuristicAStar(), DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::Phi(), DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::SetPhi(), and DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::SetWeight().
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
Definition at line 166 of file DelayedHeuristicAStar.h.
Referenced by DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::DelayedHeuristicAStar(), DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::GetReopenNodes(), and DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::SetReopenNodes().
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
Definition at line 160 of file DelayedHeuristicAStar.h.
Referenced by DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::DelayedHeuristicAStar(), DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::GetStopAfterGoal(), and DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::SetStopAfterGoal().
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
uint64_t DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::uniqueNodesExpanded |
|
private |
template<class state , class action , class environment , class batchHeuristic = HeuristicLookupBuffer<state, environment>, class openList = AStarOpenClosed<state, AStarCompareWithF<state>, AStarOpenClosedDataWithF<state>>>
Definition at line 163 of file DelayedHeuristicAStar.h.
Referenced by DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::DelayedHeuristicAStar(), DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::GetWeight(), and DelayedHeuristicAStar< state, action, environment, batchHeuristic, openList >::SetWeight().