LEMUR Packages: ompl_lemur or_lemur pr_bgl prpy_lemur
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Friends Groups Pages
Public Types | Public Member Functions | Public Attributes | List of all members
pr_bgl::lpastar< Graph, AStarHeuristic, LPAStarVisitor, PredecessorMap, DistanceMap, DistanceLookaheadMap, WeightMap, VertexIndexMap, CompareFunction, CombineFunction, CostInf, CostZero > Class Template Reference

Implements the Lifelong Planning A* incremental search algorithm. More...

#include <lpastar.h>

Public Types

typedef boost::graph_traits
< Graph >::vertex_descriptor 
Vertex
 
typedef boost::graph_traits
< Graph >::vertex_iterator 
VertexIter
 
typedef boost::graph_traits
< Graph >::edge_descriptor 
Edge
 
typedef boost::graph_traits
< Graph >::out_edge_iterator 
OutEdgeIter
 
typedef boost::graph_traits
< Graph >::in_edge_iterator 
InEdgeIter
 
typedef boost::property_traits
< WeightMap >::value_type 
weight_type
 

Public Member Functions

 lpastar (const Graph &g, Vertex v_start, Vertex v_goal, AStarHeuristic h, LPAStarVisitor vis, PredecessorMap predecessor, DistanceMap distance, DistanceLookaheadMap distance_lookahead, WeightMap weight, VertexIndexMap index_map, CompareFunction compare, CombineFunction combine, CostInf inf, CostZero zero, weight_type goal_margin)
 
void reset ()
 
std::pair< weight_type,
weight_type > 
calculate_key (Vertex u, bool do_goal_margin=false)
 
bool update_predecessor (Vertex u, Vertex v, weight_type uv_weight)
 
void update_vertex (Vertex u)
 
void compute_shortest_path ()
 

Public Attributes

const Graph & g
 
Vertex v_start
 
Vertex v_goal
 
AStarHeuristic h
 
LPAStarVisitor vis
 
PredecessorMap predecessor
 
DistanceMap distance
 
DistanceLookaheadMap distance_lookahead
 
WeightMap weight
 
VertexIndexMap index_map
 
CompareFunction compare
 
CombineFunction combine
 
CostInf inf
 
CostZero zero
 
weight_type goal_margin
 
heap_indexed< std::pair
< weight_type, weight_type > > 
queue
 

Detailed Description

template<typename Graph, typename AStarHeuristic, typename LPAStarVisitor, typename PredecessorMap, typename DistanceMap, typename DistanceLookaheadMap, typename WeightMap, typename VertexIndexMap, typename CompareFunction, typename CombineFunction, typename CostInf, typename CostZero>
class pr_bgl::lpastar< Graph, AStarHeuristic, LPAStarVisitor, PredecessorMap, DistanceMap, DistanceLookaheadMap, WeightMap, VertexIndexMap, CompareFunction, CombineFunction, CostInf, CostZero >

Implements the Lifelong Planning A* incremental search algorithm.

Sven Koenig, Maxim Likhachev, and David Furcy. 2004. Lifelong planning A*. Artif. Intell. 155, 1-2 (May 2004), 93-146. DOI=http://dx.doi.org/10.1016/j.artint.2003.12.001

for now, we assume an undirected graph (that is, update_edge will attempt an upate in both directions) we assume that everything is constant (graph structure)

rhs = one-step-lookahead (based on d/g)
d (DynamicSWSF-FP) = g (LPA*) value = distance map
rhs (DynamicSWSF-FP) = rhs (LPA*) = distance_lookahead_map

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