PPL API Reference |
|
---|
Public Member Functions | |
Construction | |
SafeIntervalTool () | |
SafeIntervalTool (XMLNode &_node) | |
virtual | ~SafeIntervalTool () |
MPBaseObject Overrides | |
virtual void | Initialize () override |
Interval Computation | |
Intervals | ComputeIntervals (const CfgType &_cfg) |
Intervals | ComputeIntervals (const WeightType &_weight, const VID _source, const VID _target, RoadmapType *_roadmap) |
Interval Checking | |
bool | ContainsTimestep (const Intervals &_intervals, const double _timestep) |
I/O | |
virtual void | Print (std::ostream &_os) const |
Name and Label Accessors | |
const std::string & | GetName () const |
Get the class name for this object. | |
const std::string & | GetLabel () const |
Get the unique label for this object. | |
std::string | GetNameAndLabel () const |
Get the unique string identifier for this object "m_name::m_label". | |
void | SetLabel (const std::string &) |
Set the unique label for this object. | |
MPLibrary Accessors | |
void | SetMPLibrary (MPLibrary *) noexcept |
Set the owning MPLibrary. | |
MPLibrary * | GetMPLibrary () const noexcept |
Get the owning MPLibrary. | |
bool | IsRunning () const noexcept |
Check the library's running flag. | |
DistanceMetricPointer | GetDistanceMetric (const std::string &) const noexcept |
Get a distance metric by label from the owning MPLibrary. | |
ValidityCheckerPointer | GetValidityChecker (const std::string &) const noexcept |
Get a validity checker by label from the owning MPLibrary. | |
NeighborhoodFinderPointer | GetNeighborhoodFinder (const std::string &) const noexcept |
Get a neighborhood finder by label from the owning MPLibrary. | |
SamplerPointer | GetSampler (const std::string &) const noexcept |
Get a sampler by label from the owning MPLibrary. | |
LocalPlannerPointer | GetLocalPlanner (const std::string &) const noexcept |
Get a local planner by label from the owning MPLibrary. | |
ExtenderPointer | GetExtender (const std::string &) const noexcept |
Get an extender by label from the owning MPLibrary. | |
PathModifierPointer | GetPathModifier (const std::string &) const noexcept |
Get a path modifier by label from the owning MPLibrary. | |
ConnectorPointer | GetConnector (const std::string &) const noexcept |
Get a connector by label from the owning MPLibrary. | |
MetricPointer | GetMetric (const std::string &) const noexcept |
Get a metric by label from the owning MPLibrary. | |
MapEvaluatorPointer | GetMapEvaluator (const std::string &) const noexcept |
Get a map evaluator by label from the owning MPLibrary. | |
MPStrategyPointer | GetMPStrategy (const std::string &) const noexcept |
Get a strategy by label from the owning MPLibrary. | |
MPTraits::MPTools * | GetMPTools () const noexcept |
Get the MPTools container from the owning MPLibrary. | |
Problem Accessors | |
MPProblem * | GetMPProblem () const noexcept |
Get the library's current MPProblem. | |
Environment * | GetEnvironment () const noexcept |
Get the current environment. | |
MPTask * | GetTask () const noexcept |
Get the current task. | |
GroupTask * | GetGroupTask () const noexcept |
Get the current group task. | |
Solution Accessors | |
MPSolution * | GetMPSolution () const noexcept |
RoadmapType * | GetRoadmap (Robot *const _r=nullptr) const noexcept |
Get the current free-space roadmap. | |
GroupRoadmapType * | GetGroupRoadmap (RobotGroup *const _g=nullptr) const noexcept |
Get the current free-space group roadmap. | |
RoadmapType * | GetBlockRoadmap (Robot *const _r=nullptr) const noexcept |
Get the current obstacle-space roadmap. | |
Path * | GetPath (Robot *const _r=nullptr) const noexcept |
Get the current best path. | |
GroupPath * | GetGroupPath (RobotGroup *const _g=nullptr) const noexcept |
Get the current best group path. | |
StatClass * | GetStatClass () const noexcept |
Get the current StatClass. | |
LocalObstacleMap * | GetLocalObstacleMap () const noexcept |
Get the local obstacle map. | |
GoalTracker * | GetGoalTracker () const noexcept |
Get the goal tracker. | |
Public Types | |
Motion Planning Types | |
typedef MPTraits::RoadmapType | RoadmapType |
typedef MPTraits::CfgType | CfgType |
typedef MPTraits::WeightType | WeightType |
typedef MPTraits::Path | Path |
typedef RoadmapType::VID | VID |
Local Types | |
typedef std::vector< Range< double > > | Intervals |
A set of time intervals. | |
Local Types | |
typedef MPTraits::GroupRoadmapType | GroupRoadmapType |
typedef MPTraits::LocalObstacleMap | LocalObstacleMap |
typedef MPTraits::GroupPathType | GroupPath |
typedef MPTraits::MPLibrary | MPLibrary |
typedef MPTraits::MPSolution | MPSolution |
typedef MPTraits::GoalTracker | GoalTracker |
typedef MPLibrary::SamplerPointer | SamplerPointer |
typedef MPLibrary::LocalPlannerPointer | LocalPlannerPointer |
typedef MPLibrary::ExtenderPointer | ExtenderPointer |
typedef MPLibrary::PathModifierPointer | PathModifierPointer |
typedef MPLibrary::ConnectorPointer | ConnectorPointer |
typedef MPLibrary::MetricPointer | MetricPointer |
typedef MPLibrary::MapEvaluatorPointer | MapEvaluatorPointer |
typedef MPLibrary::MPStrategyPointer | MPStrategyPointer |
typedef MPLibrary::DistanceMetricPointer | DistanceMetricPointer |
typedef MPLibrary::ValidityCheckerPointer | ValidityCheckerPointer |
typedef MPLibrary::NeighborhoodFinderPointer | NeighborhoodFinderPointer |
Protected Member Functions | |
void | SetName (const std::string &_s) |
const std::string & | GetBaseFilename () const |
Protected Attributes | |
bool | m_debug |
Print debug info? | |
Computes safe intervals for Cfgs and Edges. A 'safe interval' is an interval of time where collision with a known dynamic obstacle (with known trajectory) will not occur.
This tool implements the concept of a 'Safe Intervals' from the paper:
Phillips, Mike, and Maxim Likhachev. "Sipp: Safe interval path planning for dynamic environments." Robotics and Automation (ICRA), 2011 IEEE International Conference on. IEEE, 2011.
|
overridevirtual |
Initialize this object for the current MPProblem. This should reset any internal state of the algorithms so that they are ready for execution. It is also the place to initialize any state that depends on the current problem.
Reimplemented from MPBaseObject< MPTraits >.
SafeIntervalTool< MPTraits >::Intervals SafeIntervalTool< MPTraits >::ComputeIntervals | ( | const CfgType & | _cfg | ) |
Compute the safe intervals for a given Cfg.
_cfg | The configuration to compute safeIntervals's for. |
SafeIntervalTool< MPTraits >::Intervals SafeIntervalTool< MPTraits >::ComputeIntervals | ( | const WeightType & | _weight, |
const VID | _source, | ||
const VID | _target, | ||
RoadmapType * | _roadmap | ||
) |
Compute the safe intervals for a given Edge, a source and a target.
_weight | The edge to compute safeIntervals's for. |
_source | The source VID to compute safeIntervals's for. |
_target | The target VID to compute safeIntervals's for. |
_roadmap | The current roadmap. |
bool SafeIntervalTool< MPTraits >::ContainsTimestep | ( | const Intervals & | _intervals, |
const double | _timestep | ||
) |
Determine if a timestep is contained within a SafeInterval
_intervals | The safe intervals to check in. |
_timestep | The timestep to check. |
|
virtualinherited |
Print internal state of this object.
_os | The std::ostream to print to. |
Reimplemented in ConditionalEvaluator< MPTraits >, PrintMapEvaluation< MPTraits >, MinkowskiDistance< MPTraits >, AdaptiveRRT< MPTraits >, BasicRRTStrategy< MPTraits >, CCsConnector< MPTraits >, ConnectorMethod< MPTraits >, NeighborhoodConnector< MPTraits >, BasicExtender< MPTraits >, ExtenderMethod< MPTraits >, LocalPlannerMethod< MPTraits >, StraightLine< MPTraits >, ComposeEvaluator< MPTraits >, LazyQuery< MPTraits >, QueryMethod< MPTraits >, SIPPMethod< MPTraits >, BasicPRM< MPTraits >, GroupDecoupledStrategy< MPTraits >, MPStrategyMethod< MPTraits >, TogglePRMStrategy< MPTraits >, BruteForceNF< MPTraits >, NeighborhoodFinderMethod< MPTraits >, and UniformRandomSampler< MPTraits >.
|
protectedinherited |
_s | Class name |
|
protectedinherited |