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

A search algorithm which combines direction maps with abstraction. More...

#include <AbstractWeightedSearchAlgorithm.h>

Inheritance diagram for AbstractWeightedSearchAlgorithm< state, action, environment >:
Inheritance graph
[legend]
Collaboration diagram for AbstractWeightedSearchAlgorithm< state, action, environment >:
Collaboration graph
[legend]

Public Member Functions

 AbstractWeightedSearchAlgorithm ()
 
virtual ~AbstractWeightedSearchAlgorithm ()
 
bool InitializeSearch (environment *env, const state &from, const state &to, std::vector< state > &thePath)
 
virtual void GetPath (environment *env, const state &from, const state &to, std::vector< state > &thePath)
 
virtual void GetPath (environment *, const state &, const state &, std::vector< action > &)
 
virtual const char * GetName ()
 
virtual uint64_t GetNodesExpanded () const
 
virtual uint64_t GetNodesTouched () const
 
virtual void LogFinalStats (StatCollection *)
 
void SetWeightedEnvironment (WeightedMap2DEnvironment *w)
 Set the weighted environment This must be set for the algorithm to work. More...
 
void SetSkipAbsNode (double pathPerc)
 Set skip abstract nodes, and partial path refinement If set to 'true', the algorithm plans to the one-after-next abstract node, and cuts off the path after pathPerc. More...
 
- Public Member Functions inherited from GenericSearchAlgorithm< state, action, environment >
 GenericSearchAlgorithm ()
 
virtual ~GenericSearchAlgorithm ()
 
virtual bool DoSingleSearchStep (std::vector< state > &thePath)
 
virtual void OpenGLDraw () const
 
virtual void OpenGLDraw (const environment *env) const
 

Private Attributes

uint64_t nodesExpanded
 
uint64_t nodesTouched
 
WeightedMap2DEnvironmentwenv
 
bool partialSkip
 
double refinePart
 

Detailed Description

template<class state, class action, class environment>
class AbstractWeightedSearchAlgorithm< state, action, environment >

A search algorithm which combines direction maps with abstraction.

This algorithm requires an abstraction environment with a MapSectorAbstraction as well as a WeightedMap2DEnvironment.

Definition at line 320 of file AbstractWeightedSearchAlgorithm.h.

Constructor & Destructor Documentation

◆ AbstractWeightedSearchAlgorithm()

template<class state , class action , class environment >
AbstractWeightedSearchAlgorithm< state, action, environment >::AbstractWeightedSearchAlgorithm

Definition at line 355 of file AbstractWeightedSearchAlgorithm.h.

◆ ~AbstractWeightedSearchAlgorithm()

template<class state , class action , class environment >
AbstractWeightedSearchAlgorithm< state, action, environment >::~AbstractWeightedSearchAlgorithm
virtual

Definition at line 361 of file AbstractWeightedSearchAlgorithm.h.

Member Function Documentation

◆ GetName()

template<class state , class action , class environment >
virtual const char* AbstractWeightedSearchAlgorithm< state, action, environment >::GetName ( )
inlinevirtual

◆ GetNodesExpanded()

template<class state , class action , class environment >
virtual uint64_t AbstractWeightedSearchAlgorithm< state, action, environment >::GetNodesExpanded ( ) const
inlinevirtual

◆ GetNodesTouched()

template<class state , class action , class environment >
virtual uint64_t AbstractWeightedSearchAlgorithm< state, action, environment >::GetNodesTouched ( ) const
inlinevirtual

◆ GetPath() [1/2]

template<class state , class action , class environment >
virtual void AbstractWeightedSearchAlgorithm< state, action, environment >::GetPath ( environment *  ,
const state &  ,
const state &  ,
std::vector< action > &   
)
inlinevirtual

◆ GetPath() [2/2]

template<class state , class action , class environment >
void AbstractWeightedSearchAlgorithm< state, action, environment >::GetPath ( environment *  env,
const state &  from,
const state &  to,
std::vector< state > &  thePath 
)
virtual

◆ InitializeSearch()

template<class state , class action , class environment >
bool AbstractWeightedSearchAlgorithm< state, action, environment >::InitializeSearch ( environment *  env,
const state &  from,
const state &  to,
std::vector< state > &  thePath 
)
virtual

◆ LogFinalStats()

template<class state , class action , class environment >
virtual void AbstractWeightedSearchAlgorithm< state, action, environment >::LogFinalStats ( StatCollection )
inlinevirtual

◆ SetSkipAbsNode()

template<class state , class action , class environment >
void AbstractWeightedSearchAlgorithm< state, action, environment >::SetSkipAbsNode ( double  pathPerc)
inline

Set skip abstract nodes, and partial path refinement If set to 'true', the algorithm plans to the one-after-next abstract node, and cuts off the path after pathPerc.

0 < pathPerc <= 1

Definition at line 343 of file AbstractWeightedSearchAlgorithm.h.

References AbstractWeightedSearchAlgorithm< state, action, environment >::partialSkip, and AbstractWeightedSearchAlgorithm< state, action, environment >::refinePart.

◆ SetWeightedEnvironment()

template<class state , class action , class environment >
void AbstractWeightedSearchAlgorithm< state, action, environment >::SetWeightedEnvironment ( WeightedMap2DEnvironment w)
inline

Set the weighted environment This must be set for the algorithm to work.

Definition at line 337 of file AbstractWeightedSearchAlgorithm.h.

References AbstractWeightedSearchAlgorithm< state, action, environment >::wenv.

Member Data Documentation

◆ nodesExpanded

template<class state , class action , class environment >
uint64_t AbstractWeightedSearchAlgorithm< state, action, environment >::nodesExpanded
private

◆ nodesTouched

template<class state , class action , class environment >
uint64_t AbstractWeightedSearchAlgorithm< state, action, environment >::nodesTouched
private

◆ partialSkip

template<class state , class action , class environment >
bool AbstractWeightedSearchAlgorithm< state, action, environment >::partialSkip
private

◆ refinePart

template<class state , class action , class environment >
double AbstractWeightedSearchAlgorithm< state, action, environment >::refinePart
private

◆ wenv

template<class state , class action , class environment >
WeightedMap2DEnvironment* AbstractWeightedSearchAlgorithm< state, action, environment >::wenv
private

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