ompl::multilevel::FindSectionSideStep Class Reference

#include <ompl/multilevel/datastructures/pathrestriction/FindSectionSideStep.h>

Inheritance diagram for ompl::multilevel::FindSectionSideStep:

Public Member Functions

 FindSectionSideStep (PathRestriction *)
virtual bool solve (HeadPtr &head) override
bool recursiveSideStep (HeadPtr &head, bool interpolateFiberFirst=true, unsigned int depth=0)
- Public Member Functions inherited from ompl::multilevel::FindSection
 FindSection (PathRestriction *)
bool findFeasibleStateOnFiber (const base::State *xBase, base::State *xBundle)
 Sample state on fiber while keeping base state fixed.
bool tripleStep (HeadPtr &head, const base::State *sBundleGoal, double locationOnBasePathGoal)
 Triple step pattern.

Additional Inherited Members

- Protected Attributes inherited from ompl::multilevel::FindSection
 Pointer to associated bundle space.
base::StatexBaseTmp_ {nullptr}
base::StatexBundleTmp_ {nullptr}
base::StatexFiberStart_ {nullptr}
base::StatexFiberGoal_ {nullptr}
base::StatexFiberTmp_ {nullptr}
ParameterExponentialDecay neighborhoodRadiusBaseSpace_
 Radius of restriction neighborhood.
double neighborhoodRadiusBaseSpaceLambda_ {1.0}
double neighborhoodRadiusBaseSpaceTarget_ {0.5}
double validBaseSpaceSegmentLength_
 Step size to check validity.
double validBundleSpaceSegmentLength_
double validFiberSpaceSegmentLength_

Detailed Description

Short description
FindSectionSideStep tries to solve the find section problem by going along an L1 interpolation towards the goal while no collision occurs. Once a collision occurs, we sample randomly on the current fiber and make side steps towards feasible samples. We then recursively continue from those samples.
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 FindSectionSideStep.h.

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