Exotica
Classes | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | List of all members
exotica::OMPLTimeIndexedRRTConnect Class Reference

#include <time_indexed_rrt_connect.h>

Inheritance diagram for exotica::OMPLTimeIndexedRRTConnect:
Inheritance graph
Collaboration diagram for exotica::OMPLTimeIndexedRRTConnect:
Collaboration graph

Classes

class  Motion
 Representation of a motion. More...
 
struct  TreeGrowingInfo
 Information attached to growing a tree of motions (used internally) More...
 

Public Member Functions

 OMPLTimeIndexedRRTConnect (const base::SpaceInformationPtr &si)
 
virtual ~OMPLTimeIndexedRRTConnect ()
 
void getPlannerData (base::PlannerData &data) const override
 
base::PlannerStatus solve (const base::PlannerTerminationCondition &ptc) override
 
void clear () override
 
void setRange (double distance)
 Set the range the planner is supposed to use. This parameter greatly influences the runtime of the algorithm. It represents the maximum length of a motion to be added in the tree of motions. More...
 
double getRange () const
 Get the range the planner is using. More...
 
template<template< typename T > class NN>
void setNearestNeighbors ()
 Set a different nearest neighbors datastructure. More...
 
void setup () override
 

Protected Types

enum  GrowState { TRAPPED, ADVANCED, REACHED }
 The state of the tree after an attempt to extend it. More...
 
typedef std::shared_ptr< NearestNeighbors< Motion * > > TreeData
 A nearest-neighbor datastructure representing a tree of motions. More...
 

Protected Member Functions

void freeMemory ()
 Free the memory allocated by this planner. More...
 
double distanceFunction (const Motion *a, const Motion *b) const
 Compute distance between motions (actually distance between contained states) More...
 
double forwardTimeDistance (const Motion *a, const Motion *b) const
 
double reverseTimeDistance (const Motion *a, const Motion *b) const
 
bool correctTime (const Motion *a, Motion *b, bool reverse, bool &changed) const
 
GrowState growTree (TreeData &tree, TreeGrowingInfo &tgi, Motion *rmotion)
 Grow a tree towards a random state. More...
 

Protected Attributes

base::StateSamplerPtr sampler_
 State sampler. More...
 
TreeData tStart_
 The start tree. More...
 
TreeData tGoal_
 The goal tree. More...
 
double maxDistance_
 The maximum length of a motion to be added to a tree. More...
 
RNG rng_
 The random number generator. More...
 
std::pair< base::State *, base::State * > connectionPoint_
 The pair of states in each tree connected during planning. Used for PlannerData computation. More...
 
bool reverse_check_
 

Member Typedef Documentation

◆ TreeData

typedef std::shared_ptr<NearestNeighbors<Motion *> > exotica::OMPLTimeIndexedRRTConnect::TreeData
protected

A nearest-neighbor datastructure representing a tree of motions.

Member Enumeration Documentation

◆ GrowState

The state of the tree after an attempt to extend it.

Enumerator
TRAPPED 

no progress has been made

ADVANCED 

progress has been made towards the randomly sampled state

REACHED 

the randomly sampled state was reached

Constructor & Destructor Documentation

◆ OMPLTimeIndexedRRTConnect()

exotica::OMPLTimeIndexedRRTConnect::OMPLTimeIndexedRRTConnect ( const base::SpaceInformationPtr &  si)

◆ ~OMPLTimeIndexedRRTConnect()

virtual exotica::OMPLTimeIndexedRRTConnect::~OMPLTimeIndexedRRTConnect ( )
virtual

Member Function Documentation

◆ clear()

void exotica::OMPLTimeIndexedRRTConnect::clear ( )
override

◆ correctTime()

bool exotica::OMPLTimeIndexedRRTConnect::correctTime ( const Motion a,
Motion b,
bool  reverse,
bool &  changed 
) const
inlineprotected

◆ distanceFunction()

double exotica::OMPLTimeIndexedRRTConnect::distanceFunction ( const Motion a,
const Motion b 
) const
inlineprotected

Compute distance between motions (actually distance between contained states)

◆ forwardTimeDistance()

double exotica::OMPLTimeIndexedRRTConnect::forwardTimeDistance ( const Motion a,
const Motion b 
) const
inlineprotected

◆ freeMemory()

void exotica::OMPLTimeIndexedRRTConnect::freeMemory ( )
protected

Free the memory allocated by this planner.

◆ getPlannerData()

void exotica::OMPLTimeIndexedRRTConnect::getPlannerData ( base::PlannerData &  data) const
override

◆ getRange()

double exotica::OMPLTimeIndexedRRTConnect::getRange ( ) const
inline

Get the range the planner is using.

◆ growTree()

GrowState exotica::OMPLTimeIndexedRRTConnect::growTree ( TreeData tree,
TreeGrowingInfo tgi,
Motion rmotion 
)
protected

Grow a tree towards a random state.

◆ reverseTimeDistance()

double exotica::OMPLTimeIndexedRRTConnect::reverseTimeDistance ( const Motion a,
const Motion b 
) const
inlineprotected

◆ setNearestNeighbors()

template<template< typename T > class NN>
void exotica::OMPLTimeIndexedRRTConnect::setNearestNeighbors ( )
inline

Set a different nearest neighbors datastructure.

◆ setRange()

void exotica::OMPLTimeIndexedRRTConnect::setRange ( double  distance)
inline

Set the range the planner is supposed to use. This parameter greatly influences the runtime of the algorithm. It represents the maximum length of a motion to be added in the tree of motions.

◆ setup()

void exotica::OMPLTimeIndexedRRTConnect::setup ( )
override

◆ solve()

base::PlannerStatus exotica::OMPLTimeIndexedRRTConnect::solve ( const base::PlannerTerminationCondition &  ptc)
override

Member Data Documentation

◆ connectionPoint_

std::pair<base::State *, base::State *> exotica::OMPLTimeIndexedRRTConnect::connectionPoint_
protected

The pair of states in each tree connected during planning. Used for PlannerData computation.

◆ maxDistance_

double exotica::OMPLTimeIndexedRRTConnect::maxDistance_
protected

The maximum length of a motion to be added to a tree.

◆ reverse_check_

bool exotica::OMPLTimeIndexedRRTConnect::reverse_check_
protected

◆ rng_

RNG exotica::OMPLTimeIndexedRRTConnect::rng_
protected

The random number generator.

◆ sampler_

base::StateSamplerPtr exotica::OMPLTimeIndexedRRTConnect::sampler_
protected

State sampler.

◆ tGoal_

TreeData exotica::OMPLTimeIndexedRRTConnect::tGoal_
protected

The goal tree.

◆ tStart_

TreeData exotica::OMPLTimeIndexedRRTConnect::tStart_
protected

The start tree.


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