HOG2
|
#include <ParallelIDAStar.h>
Public Member Functions | |
ParallelIDAStar () | |
virtual | ~ParallelIDAStar () |
void | GetPath (environment *env, state from, state to, std::vector< action > &thePath) |
uint64_t | GetNodesExpanded () |
uint64_t | GetNodesTouched () |
void | ResetNodeCount () |
void | SetHeuristic (Heuristic< state > *heur) |
Private Member Functions | |
void | StartThreadedIteration (environment env, state startState, double bound) |
void | DoIteration (environment *env, action forbiddenAction, state &currState, std::vector< action > &thePath, double bound, double g, workUnit< action > &w, vectorCache< action > &cache) |
void | GenerateWork (environment *env, action forbiddenAction, state &currState, std::vector< action > &thePath) |
void | PrintGHistogram () |
void | UpdateNextBound (double currBound, double fCost) |
Private Attributes | |
unsigned long long | nodesExpanded |
unsigned long long | nodesTouched |
state | goal |
double | nextBound |
bool | storedHeuristic |
Heuristic< state > * | heuristic |
std::vector< uint64_t > | gCostHistogram |
std::vector< uint64_t > | fCostHistogram |
std::vector< workUnit< action > > | work |
std::vector< std::thread * > | threads |
SharedQueue< int > | q |
int | foundSolution |
Definition at line 34 of file ParallelIDAStar.h.
|
inline |
Definition at line 36 of file ParallelIDAStar.h.
References ParallelIDAStar< environment, state, action >::storedHeuristic.
|
inlinevirtual |
Definition at line 37 of file ParallelIDAStar.h.
|
private |
Definition at line 297 of file ParallelIDAStar.h.
References workUnit< action >::expanded, fgreater(), workUnit< action >::fHistogram, vectorCache< storage >::getItem(), workUnit< action >::gHistogram, min(), workUnit< action >::nextBound, vectorCache< storage >::returnItem(), workUnit< action >::solution, workUnit< action >::touched, and workUnit< action >::unitNumber.
|
private |
Definition at line 200 of file ParallelIDAStar.h.
References workUnit< action >::pre, and workDepth.
|
inline |
Definition at line 43 of file ParallelIDAStar.h.
References ParallelIDAStar< environment, state, action >::nodesExpanded.
|
inline |
Definition at line 44 of file ParallelIDAStar.h.
References ParallelIDAStar< environment, state, action >::nodesTouched.
void ParallelIDAStar< environment, state, action >::GetPath | ( | environment * | env, |
state | from, | ||
state | to, | ||
std::vector< action > & | thePath | ||
) |
Definition at line 109 of file ParallelIDAStar.h.
|
inlineprivate |
Definition at line 59 of file ParallelIDAStar.h.
References ParallelIDAStar< environment, state, action >::fCostHistogram, and ParallelIDAStar< environment, state, action >::gCostHistogram.
|
inline |
Definition at line 45 of file ParallelIDAStar.h.
References ParallelIDAStar< environment, state, action >::nodesExpanded, and ParallelIDAStar< environment, state, action >::nodesTouched.
|
inline |
Definition at line 46 of file ParallelIDAStar.h.
References ParallelIDAStar< environment, state, action >::heuristic, and ParallelIDAStar< environment, state, action >::storedHeuristic.
|
private |
Definition at line 241 of file ParallelIDAStar.h.
References workUnit< action >::expanded, fgreater(), workUnit< action >::fHistogram, workUnit< action >::gHistogram, workUnit< action >::nextBound, workUnit< action >::pre, workUnit< action >::solution, workUnit< action >::touched, and workDepth.
|
private |
Definition at line 348 of file ParallelIDAStar.h.
References fgreater(), and fless().
|
private |
Definition at line 93 of file ParallelIDAStar.h.
Referenced by ParallelIDAStar< environment, state, action >::PrintGHistogram().
|
private |
Definition at line 97 of file ParallelIDAStar.h.
|
private |
Definition at line 92 of file ParallelIDAStar.h.
Referenced by ParallelIDAStar< environment, state, action >::PrintGHistogram().
|
private |
Definition at line 87 of file ParallelIDAStar.h.
|
private |
Definition at line 91 of file ParallelIDAStar.h.
Referenced by ParallelIDAStar< environment, state, action >::SetHeuristic().
|
private |
Definition at line 88 of file ParallelIDAStar.h.
|
private |
Definition at line 48 of file ParallelIDAStar.h.
Referenced by ParallelIDAStar< environment, state, action >::GetNodesExpanded(), and ParallelIDAStar< environment, state, action >::ResetNodeCount().
|
private |
Definition at line 48 of file ParallelIDAStar.h.
Referenced by ParallelIDAStar< environment, state, action >::GetNodesTouched(), and ParallelIDAStar< environment, state, action >::ResetNodeCount().
|
private |
Definition at line 96 of file ParallelIDAStar.h.
|
private |
Definition at line 90 of file ParallelIDAStar.h.
Referenced by ParallelIDAStar< environment, state, action >::ParallelIDAStar(), and ParallelIDAStar< environment, state, action >::SetHeuristic().
|
private |
Definition at line 95 of file ParallelIDAStar.h.
|
private |
Definition at line 94 of file ParallelIDAStar.h.