ompl::multilevel Namespace Reference

This namespace contains datastructures and planners to exploit multilevel abstractions, which you have to specify using a sequence of SpaceInformationPtr (each with their own StateValidityChecker). More...

Classes

class  BundleSpace
 A single Bundle-space. More...
 
class  BundleSpaceGraph
 A graph on a Bundle-space. More...
 
class  BundleSpaceGraphSampler
 
class  BundleSpaceGraphSamplerRandomDegreeVertex
 
class  BundleSpaceGraphSamplerRandomEdge
 
class  BundleSpaceGraphSamplerRandomVertex
 
class  BundleSpaceImportance
 
class  BundleSpaceImportanceExponential
 
class  BundleSpaceImportanceGreedy
 
class  BundleSpaceImportanceUniform
 
class  BundleSpaceMetric
 
class  BundleSpaceMetricGeodesic
 
class  BundleSpacePropagator
 
class  BundleSpacePropagatorGeometric
 
class  BundleSpaceSequence
 A planner for a sequence of BundleSpaces. More...
 
class  CompoundProjection
 
class  FiberedProjection
 
class  FindSection
 
class  FindSectionSideStep
 
class  Head
 A pointer to a specific location on the base path of the path restriction. More...
 
class  HeadAnalyzer
 
class  PathRestriction
 Representation of path restriction (union of fibers over a base path). More...
 
class  PathSection
 Representation of a path section (not necessarily feasible). More...
 
class  PlannerDataVertexAnnotated
 An annotated vertex, adding information about its level in the multilevel hierarchy. Class has two modes: Mode 1 (baseMode), we store a reference to its base state element. In Mode 2 (totalMode), we store a deep copy of the lift of the base state into the total space (NOTE: required for PlannerData functions like decoupleFromPlanner()) More...
 
class  PlannerMultiLevel
 MultiLevel Planner Interface. Extends base::Planner by allowing sequences of base::SpaceInformationPtr. More...
 
class  Projection
 
class  Projection_EmptySet
 
class  Projection_Identity
 
class  Projection_None
 
class  Projection_Relaxation
 
class  Projection_RN_RM
 
class  Projection_RNSO2_RN
 
class  Projection_SE2_R2
 
class  Projection_SE2RN_R2
 
class  Projection_SE2RN_SE2
 
class  Projection_SE2RN_SE2RM
 
class  Projection_SE3_R3
 
class  Projection_SE3RN_R3
 
class  Projection_SE3RN_SE3
 
class  Projection_SE3RN_SE3RM
 
class  Projection_SO2N_SO2M
 
class  Projection_SO2RN_SO2
 
class  Projection_SO2RN_SO2RM
 
class  Projection_SO3RN_SO3
 
class  Projection_SO3RN_SO3RM
 
class  Projection_XRN_X
 
class  Projection_XRN_XRM
 
class  ProjectionFactory
 
class  QMPImpl
 Implementation of the Quotient space roadMap Planner. More...
 
class  QMPStarImpl
 
class  QRRTImpl
 Implementation of BundleSpace Rapidly-Exploring Random Trees Algorithm. More...
 
class  QRRTStarImpl
 Implementation of BundleSpace Rapidly-Exploring Random Tree Star Algorithm. More...
 

Typedefs

using Configuration = ompl::multilevel::BundleSpaceGraph::Configuration
 
using QMP = BundleSpaceSequence< QMPImpl >
 [Q]uotient space road[M]ap [P]lanner (QMP) Algorithm More...
 
using QMPStar = BundleSpaceSequence< QMPStarImpl >
 [Q]uotient space road[M]ap [P]lanner Star (QMP*) Algorithm More...
 
using QRRT = BundleSpaceSequence< QRRTImpl >
 [Q]uotient space [R]apidly exploring [R]andom [T]rees (QRRT) Algorithm More...
 
using QRRTStar = BundleSpaceSequence< QRRTStarImpl >
 [Q]uotient space [R]apidly exploring [R]andom [T]rees Star (QRRT*) Algorithm More...
 

Enumerations

enum  FindSectionType { NONE = 0, SIDE_STEP = 1, PATTERN_DANCE = 2 }
 
enum  ProjectionType {
  PROJECTION_NONE = 0, PROJECTION_EMPTY_SET = 1, PROJECTION_IDENTITY = 2, PROJECTION_CONSTRAINED_RELAXATION = 3,
  PROJECTION_RN_RM = 4, PROJECTION_SE2_R2 = 5, PROJECTION_SE2RN_R2 = 6, PROJECTION_SE2RN_SE2 = 7,
  PROJECTION_SE2RN_SE2RM = 8, PROJECTION_SO2RN_SO2 = 9, PROJECTION_SO2RN_SO2RM = 10, PROJECTION_SE3_R3 = 11,
  PROJECTION_SE3RN_R3 = 12, PROJECTION_SE3RN_SE3 = 13, PROJECTION_SE3RN_SE3RM = 14, PROJECTION_SO3RN_SO3 = 15,
  PROJECTION_SO3RN_SO3RM = 16, PROJECTION_RNSO2_RN = 17, PROJECTION_SO2N_SO2M = 18, PROJECTION_TASK_SPACE = 19,
  PROJECTION_COMPOUND = -2, PROJECTION_UNKNOWN = -1
}
 

Functions

 OMPL_CLASS_FORWARD (Projection)
 
 OMPL_CLASS_FORWARD (BundleSpaceGraph)
 
 OMPL_CLASS_FORWARD (PathRestriction)
 
 OMPL_CLASS_FORWARD (FiberedProjection)
 
std::ostream & operator<< (std::ostream &out, const Head &h)
 
std::ostream & operator<< (std::ostream &out, const PathRestriction &r)
 
std::ostream & operator<< (std::ostream &out, const PathSection &s)
 
std::ostream & operator<< (std::ostream &out, const BundleSpace &bundleSpace)
 
std::ostream & operator<< (std::ostream &out, const Projection &projection)
 
 OMPL_CLASS_FORWARD (PathGeometric)
 

Detailed Description

This namespace contains datastructures and planners to exploit multilevel abstractions, which you have to specify using a sequence of SpaceInformationPtr (each with their own StateValidityChecker).

Typedef Documentation

◆ QMP

[Q]uotient space road[M]ap [P]lanner (QMP) Algorithm

Short description
The Quotient-space roadMap Planner (QMP) is a multi-query, probabilistically complete roadmap planner which generalizes PRM to bundle spaces.
External documentation
A. Orthey, A. Escande and E. Yoshida, Quotient-Space Motion Planning, in International Conference on Intelligent Robots and Systems, 2018, [PDF]

Definition at line 132 of file QMP.h.

◆ QMPStar

[Q]uotient space road[M]ap [P]lanner Star (QMP*) Algorithm

Short description
Quotient space roadMap Planner Star (QMP*) generalizes the PRM* algorithm to bundle spaces.
External documentation
Andreas Orthey and Sohaib Akbar and Marc Toussaint, Multilevel Motion Planning: A Fiber Bundle Formulation, in arXiv:2007.09435 [cs.RO], 2020, [PDF]

Definition at line 127 of file QMPStar.h.

◆ QRRT

[Q]uotient space [R]apidly exploring [R]andom [T]rees (QRRT) Algorithm

Short description
QRRT is a planner using different abstractions levels, each described by a quotient-space, and grows trees both sequentially and simultaneously on them. The growing of each tree is similar to the RRT algorithm, but it differs that (1) a tree is only started if there exists a solution on a lower-dimensional quotient-space, and (2) a sample is not drawn uniformly, but constraint to the tree of the lower-dimensional quotient-space. The algorithm stops if a planner terminate condition (ptc) is reached, or if a solution has been found on the last quotient-space, which is equivalent to the configuration space.
External documentation
A. Orthey and M. Toussaint, Rapidly-Exploring Quotient-Space Trees: Motion Planning using Sequential Simplifications, in International Symposium of Robotics Research, 2019, [PDF]

Definition at line 135 of file QRRT.h.

◆ QRRTStar

[Q]uotient space [R]apidly exploring [R]andom [T]rees Star (QRRT*) Algorithm

Short description
QRRTstar is an almost-surely asymptotically optimal planners which generalizes RRTstar to multilevel abstractions, which we formulate using fiber bundle sequences.
External documentation
Andreas Orthey and Sohaib Akbar and Marc Toussaint, Multilevel Motion Planning: A Fiber Bundle Formulation, in arXiv:2007.09435 [cs.RO], 2020, [PDF]

Definition at line 132 of file QRRTStar.h.

Enumeration Type Documentation

◆ ProjectionType

Enumerator
PROJECTION_NONE 

ompl::multilevel::Projection_None

PROJECTION_EMPTY_SET 

ompl::multilevel::Projection_EmptySet

PROJECTION_IDENTITY 

ompl::multilevel::Projection_Identity

PROJECTION_CONSTRAINED_RELAXATION 

ompl::multilevel::Projection_Relaxation

PROJECTION_RN_RM 

RN \rightarrow RM, m < n.

PROJECTION_SE2_R2 

SE2 \rightarrow R2.

PROJECTION_SE2RN_R2 

SE2RN \rightarrow R2.

PROJECTION_SE2RN_SE2 

SE2RN \rightarrow SE2.

PROJECTION_SE2RN_SE2RM 

SE2RN \rightarrow SE2RM, m < n.

PROJECTION_SO2RN_SO2 

SO2RN \rightarrow SO2.

PROJECTION_SO2RN_SO2RM 

SO2RN \rightarrow SO2RM, m < n.

PROJECTION_SE3_R3 

SE3 \rightarrow R3.

PROJECTION_SE3RN_R3 

SE3RN \rightarrow R3.

PROJECTION_SE3RN_SE3 

SE3RN \rightarrow SE3.

PROJECTION_SE3RN_SE3RM 

SE3RN \rightarrow SE3RM, m < n.

PROJECTION_SO3RN_SO3 

SO3RN \rightarrow SO3.

PROJECTION_SO3RN_SO3RM 

SO3RN \rightarrow SO3RM, m < n.

PROJECTION_RNSO2_RN 

RNSO2 \rightarrow RN, n > 0.

PROJECTION_SO2N_SO2M 

SO2N \rightarrow SO2M (N copies of SO2 onto M copies of SO2)

PROJECTION_TASK_SPACE 

X \rightarrow T (A mapping from state space X to a task space T)

PROJECTION_COMPOUND 

Compound projection.

PROJECTION_UNKNOWN 

Unknown projection.

Definition at line 114 of file ProjectionTypes.h.