libmove3d-planners
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | List of all members
TransitionEdgeExpansion Class Reference

Expansion procedure of the TransitionEdge-based RRT (TE-RRT) algorithm. More...

#include <TransitionEdge-RRT.hpp>

Inheritance diagram for TransitionEdgeExpansion:
RRTExpansion TreeExpansion BaseExpansion

Public Member Functions

 TransitionEdgeExpansion (Graph *graph, Node *goal)
 Constructor. More...
 
virtual ~TransitionEdgeExpansion ()
 Destructor.
 
virtual confPtr_t sampleExpansionDirection (Node *directionNode, Node *fromNode, int nConsecutiveFail=0)
 Sample a direction for the expansion process (taking into account the goal bias, if relevant). More...
 
bool attemptJunction (Node *fromNode, Node *toNode)
 Attempt to link two given nodes (i.e. More...
 
- Public Member Functions inherited from RRTExpansion
 RRTExpansion (Graph *graph)
 Constructor.
 
virtual ~RRTExpansion ()
 Destructor.
 
virtual bool isValidConnection (localPathPtr_t path)
 Check whether the given path is a valid connection. More...
 
virtual bool addCycles ()
 Try to add cycles to the graph. More...
 
virtual bool addCycles1 ()
 
virtual bool addCycles2 ()
 
virtual bool addCycles3 ()
 
- Public Member Functions inherited from TreeExpansion
 TreeExpansion (Graph *graph)
 Constructor.
 
virtual ~TreeExpansion ()
 Destructor.
 
void expansionSucceeded (Node *node)
 Actions to be done after the expansion attempted from the given node, in case of success.
 
void expansionFailed (Node *node)
 Actions to be done after the expansion attempted from the given node, in case of failure.
 
- Public Member Functions inherited from BaseExpansion
 BaseExpansion ()
 Constructor.
 
 BaseExpansion (Graph *prtGraph)
 
 ~BaseExpansion ()
 Destructor.
 
void setGraph (Graph *G)
 Set the graph that is beeing expanded.
 
GraphgetGraph ()
 Get the graph that is beeing expanded.
 
int getDirectionMethod ()
 Get Node Expansion Method.
 
void setDirectionMethod (int directionExpansion)
 Set Expansion node Method.
 
int getNodeMethod ()
 Get Node Expansion Method.
 
void setNodeMethod (int nodeExpansion)
 Set Expansion node Method.
 
void setFromComp (Node *fromComp)
 Set the From Connected Component.
 
NodegetFromComp ()
 Get the From Connected Component.
 
void setToComp (Node *toComp)
 Set the To Connected Component.
 
NodegetToComp ()
 Get the To Connected Component.
 
double step ()
 Expansion Step (Delta) More...
 
double getDMax ()
 
double computeInterpolationFactor (double pathLength)
 Compute the interpolation factor along the path, based on the extension step.
 
confPtr_t interpolate (confPtr_t conf, LocalPath *path, double factor)
 Interpolation along the given path.
 
double positionAlongPath (LocalPath &path, double param)
 Position on localpath in [0,1].
 
double pathDelta (LocalPath &path)
 Return the path parameter that is the closest to step()
 
LocalPath getExtensiontPath (std::tr1::shared_ptr< Configuration > qi, std::tr1::shared_ptr< Configuration > qf)
 Computes a localpath parameter used for expansion of at max step() of length. More...
 
void expansionFailed (Node &node)
 Function called when a node can not be connected. More...
 
virtual NodeaddNode (Node *currentNode, LocalPath &path, double pathDelta, Node *directionNode, unsigned &nbCreatedNodes)
 Adds a node to a connected component. More...
 
bool refinementControl (LocalPath &path, double rho, Node &compNode)
 Function that balances the ratio of exploration towards refinement.
 
bool nextStep (LocalPath &path, std::tr1::shared_ptr< Configuration > &directionConfig, double &pathDelta, std::tr1::shared_ptr< LocalPath > &newPath, Env::expansionMethod method)
 Returns a valid configuration on the local path.
 
bool nextStep (LocalPath &path, Node *directionNode, double &pathDelta, std::tr1::shared_ptr< LocalPath > &newPath, Env::expansionMethod method)
 Returns a valid configuration on the local path.
 
virtual NodegetExpansionNode (Node *compNode, confPtr_t direction, int distance)
 Gets the nearest node in the graph. More...
 
std::tr1::shared_ptr
< Configuration
getExpansionDirection (Node *expandComp, Node *goalComp, bool samplePassive, Node *&directionNode)
 
NodegetLasAddedNode ()
 Return last added node.
 
void addConnectibleNode ()
 
unsigned int getNbConnectibleNodes ()
 

Additional Inherited Members

- Protected Member Functions inherited from RRTExpansion
virtual NodeaddNode (localPathPtr_t path, Node *fromNode, Node *directionNode)
 Add a node to the graph, after an expansion that has produced the given path, starting from fromNode. More...
 
- Protected Attributes inherited from BaseExpansion
int m_ExpansionNodeMethod
 
int m_MaxExpandNodeFailure
 
int m_kNearestPercent
 
int m_ExpansionDirectionMethod
 
bool m_IsDirSampleWithRlg
 
Graphm_Graph
 
Nodem_last_added_node
 
Nodem_fromComp
 
Nodem_toComp
 
unsigned int _nbConnectibleNodes
 

Detailed Description

Expansion procedure of the TransitionEdge-based RRT (TE-RRT) algorithm.

Constructor & Destructor Documentation

TransitionEdgeExpansion::TransitionEdgeExpansion ( Graph graph,
Node goal 
)

Constructor.


TransitionEdge Expansion


Constructor.

Member Function Documentation

bool TransitionEdgeExpansion::attemptJunction ( Node fromNode,
Node toNode 
)

Attempt to link two given nodes (i.e.

two components, when relevant).

Returns
TRUE if the junction is successful.
confPtr_t TransitionEdgeExpansion::sampleExpansionDirection ( Node directionNode,
Node fromNode,
int  nConsecutiveFail = 0 
)
virtual

Sample a direction for the expansion process (taking into account the goal bias, if relevant).

Parameters
directionNodecontains the goal node when relevant
Returns
the configuration toward which the tree will be expanded

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