HOG2
Public Member Functions | Private Member Functions | Private Attributes | List of all members
SFIDAStar< state, action > Class Template Reference

#include <SFIDAStar.h>

Public Member Functions

 SFIDAStar ()
 
virtual ~SFIDAStar ()
 
void GetPath (SearchEnvironment< state, action > *env, state from, state to, std::vector< state > &thePath)
 
void GetPath (SearchEnvironment< state, action > *env, state from, state to, std::vector< action > &thePath)
 
uint64_t GetNodesExpanded ()
 
uint64_t GetNodesTouched ()
 
void ResetNodeCount ()
 

Private Member Functions

double DoIteration (SearchEnvironment< state, action > *env, state &currState, state &goalState, action forbiddenForwardAction, bool validForward, action forbiddenBackAction, bool validBack, std::vector< action > &thePath, double bound, double g)
 
bool ShouldSearchForward1 (SearchEnvironment< state, action > *env, state &currState, state &goalState, double gCost, double bound)
 
bool ShouldSearchForward2 (SearchEnvironment< state, action > *env, state &currState, state &goalState, double gCost, double bound)
 
void UpdateNextBound (double currBound, double fCost)
 

Private Attributes

unsigned long nodesExpanded
 
unsigned long nodesTouched
 
double nextBound
 

Detailed Description

template<class state, class action>
class SFIDAStar< state, action >

Definition at line 21 of file SFIDAStar.h.

Constructor & Destructor Documentation

◆ SFIDAStar()

template<class state , class action >
SFIDAStar< state, action >::SFIDAStar ( )
inline

Definition at line 23 of file SFIDAStar.h.

◆ ~SFIDAStar()

template<class state , class action >
virtual SFIDAStar< state, action >::~SFIDAStar ( )
inlinevirtual

Definition at line 24 of file SFIDAStar.h.

Member Function Documentation

◆ DoIteration()

template<class state , class action >
double SFIDAStar< state, action >::DoIteration ( SearchEnvironment< state, action > *  env,
state &  currState,
state &  goalState,
action  forbiddenForwardAction,
bool  validForward,
action  forbiddenBackAction,
bool  validBack,
std::vector< action > &  thePath,
double  bound,
double  g 
)
private

◆ GetNodesExpanded()

template<class state , class action >
uint64_t SFIDAStar< state, action >::GetNodesExpanded ( )
inline

Definition at line 30 of file SFIDAStar.h.

References SFIDAStar< state, action >::nodesExpanded.

◆ GetNodesTouched()

template<class state , class action >
uint64_t SFIDAStar< state, action >::GetNodesTouched ( )
inline

Definition at line 31 of file SFIDAStar.h.

References SFIDAStar< state, action >::nodesTouched.

◆ GetPath() [1/2]

template<class state , class action >
void SFIDAStar< state, action >::GetPath ( SearchEnvironment< state, action > *  env,
state  from,
state  to,
std::vector< action > &  thePath 
)

◆ GetPath() [2/2]

template<class state , class action >
void SFIDAStar< state, action >::GetPath ( SearchEnvironment< state, action > *  env,
state  from,
state  to,
std::vector< state > &  thePath 
)

Definition at line 51 of file SFIDAStar.h.

◆ ResetNodeCount()

template<class state , class action >
void SFIDAStar< state, action >::ResetNodeCount ( )
inline

◆ ShouldSearchForward1()

template<class state , class action >
bool SFIDAStar< state, action >::ShouldSearchForward1 ( SearchEnvironment< state, action > *  env,
state &  currState,
state &  goalState,
double  gCost,
double  bound 
)
private

◆ ShouldSearchForward2()

template<class state , class action >
bool SFIDAStar< state, action >::ShouldSearchForward2 ( SearchEnvironment< state, action > *  env,
state &  currState,
state &  goalState,
double  gCost,
double  bound 
)
private

◆ UpdateNextBound()

template<class state , class action >
void SFIDAStar< state, action >::UpdateNextBound ( double  currBound,
double  fCost 
)
private

Definition at line 260 of file SFIDAStar.h.

References fgreater(), and fless().

Member Data Documentation

◆ nextBound

template<class state , class action >
double SFIDAStar< state, action >::nextBound
private

Definition at line 47 of file SFIDAStar.h.

◆ nodesExpanded

template<class state , class action >
unsigned long SFIDAStar< state, action >::nodesExpanded
private

◆ nodesTouched

template<class state , class action >
unsigned long SFIDAStar< state, action >::nodesTouched
private

The documentation for this class was generated from the following file: