Main Page   Namespace List   Class Hierarchy   Compound List   File List   Compound Members   File Members  

Planner Class Reference

The base class for all path planners. More...

#include <planner.h>

Inheritance diagram for Planner:

Solver IncrementalPlanner RoadmapPlanner FDP RRT PRM FDPBestFirst FDPBi FDPStar RandomTree RRTDual RRTGoalBias RRTGoalZoom RRTHull RRTPolar List of all members.

Public Methods

 Planner (Problem *problem)
 A constructor that initializes data members. More...

 ~Planner ()
void Reset ()
 Reset the planner. More...

virtual void Construct ()=0
 Generate a planning graph. More...

virtual bool Plan ()=0
 Attempt to solve an Initial-Goal query. More...

virtual void WriteGraphs (ofstream &fout)=0
 Write roadmap or trees to a file. More...

virtual void ReadGraphs (ifstream &fin)=0
 Read roadmap or trees from a file. More...

bool GapSatisfied (const MSLVector &x1, const MSLVector &x2)
 Determine if the gap error is staisfied. More...


Public Attributes

double CumulativePlanningTime
 Total amount of time spent on planning. More...

double CumulativeConstructTime
 Total amount of time spent on construction. More...

list< MSLVectorPath
 The solution path, as a list of states. More...

list< double > TimeList
 The times associated with the path. More...

list< MSLVectorPolicy1
 The solution policy before the jump. More...

list< double > TimeList1
 The times associated with a solution path before the jump. More...

list< MSLVectorPolicy2
 The solution policy after the jump. More...

list< double > TimeList2
 The times associated with a solution path after the jump. More...

MSLVector GapState1
 The last state in a path before a jump occurs. More...

MSLVector GapState2
 The first state in a path after a jump occurs. More...

bool Holonomic
 Set to true to ignore inputs and avoid integration (default false). This will make "regular" path planning much faster. More...

MSLVector GapError
 How much gap error is allowed for each element in bidirectional search. More...

MSLTreeT
 A search tree (used by incremental planners, but included in Planner base to allow GuiPlanner to handle all planners). More...

MSLTreeT2
 A second tree (if needed). More...

MSLGraphRoadmap
 A graph to represent a roadmap (used by roadmap planners, but included in Planner base to allow GuiPlanner to handle all planners). More...

list< MSLVectorStateList
 The states associated with a solution path. More...

list< MSLVectorInputList
 The inputs associated with a solution path. More...

int NumNodes
 Number of nodes to generate in a single execution of Plan or Construct. More...

double PlannerDeltaT
 Time step to use for incremental planners. More...


Protected Methods

MSLVector RandomState ()
 Choose a state at random. More...

MSLVector NormalState (MSLVector mean, double sd)
 Pick a state using a Normal distribution. More...


Protected Attributes

MSLRandomSource R

Detailed Description

The base class for all path planners.


Constructor & Destructor Documentation

Planner::Planner Problem   problem
 

A constructor that initializes data members.

Planner::~Planner  
 


Member Function Documentation

virtual void Planner::Construct   [pure virtual]
 

Generate a planning graph.

Implemented in IncrementalPlanner.

bool Planner::GapSatisfied const MSLVector   x1,
const MSLVector   x2
 

Determine if the gap error is staisfied.

MSLVector Planner::NormalState MSLVector    mean,
double    sd
[protected]
 

Pick a state using a Normal distribution.

virtual bool Planner::Plan   [pure virtual]
 

Attempt to solve an Initial-Goal query.

Implemented in FDP.

MSLVector Planner::RandomState   [protected]
 

Choose a state at random.

virtual void Planner::ReadGraphs ifstream &    fin [pure virtual]
 

Read roadmap or trees from a file.

Implemented in IncrementalPlanner.

void Planner::Reset  
 

Reset the planner.

Reimplemented in FDP.

virtual void Planner::WriteGraphs ofstream &    fout [pure virtual]
 

Write roadmap or trees to a file.

Implemented in IncrementalPlanner.


Member Data Documentation

double Planner::CumulativeConstructTime
 

Total amount of time spent on construction.

double Planner::CumulativePlanningTime
 

Total amount of time spent on planning.

MSLVector Planner::GapError
 

How much gap error is allowed for each element in bidirectional search.

MSLVector Planner::GapState1
 

The last state in a path before a jump occurs.

MSLVector Planner::GapState2
 

The first state in a path after a jump occurs.

bool Planner::Holonomic
 

Set to true to ignore inputs and avoid integration (default false). This will make "regular" path planning much faster.

list<MSLVector> Planner::InputList
 

The inputs associated with a solution path.

int Planner::NumNodes
 

Number of nodes to generate in a single execution of Plan or Construct.

list<MSLVector> Planner::Path
 

The solution path, as a list of states.

double Planner::PlannerDeltaT
 

Time step to use for incremental planners.

list<MSLVector> Planner::Policy1
 

The solution policy before the jump.

list<MSLVector> Planner::Policy2
 

The solution policy after the jump.

MSLRandomSource Planner::R [protected]
 

MSLGraph* Planner::Roadmap
 

A graph to represent a roadmap (used by roadmap planners, but included in Planner base to allow GuiPlanner to handle all planners).

list<MSLVector> Planner::StateList
 

The states associated with a solution path.

MSLTree* Planner::T
 

A search tree (used by incremental planners, but included in Planner base to allow GuiPlanner to handle all planners).

MSLTree* Planner::T2
 

A second tree (if needed).

list<double> Planner::TimeList
 

The times associated with the path.

list<double> Planner::TimeList1
 

The times associated with a solution path before the jump.

list<double> Planner::TimeList2
 

The times associated with a solution path after the jump.


The documentation for this class was generated from the following files: Motion Strategy Library


Web page maintained by Steve LaValle