![]() |
Parasol Planning Library (PPL)
|
#include <MPLibrary.h>

Data Structures | |
| struct | Solver |
Public Member Functions | |
Construction | |
| MPLibrary () | |
| MPLibrary (const std::string &_filename) | |
| MPLibrary (XMLNode &planningLibraryNode) | |
| virtual | ~MPLibrary () |
Configuration | |
| void | ReadXMLFile (const std::string &_filename) |
| void | ProcessXML (XMLNode &node) |
Distance Metric Accessors | |
| DistanceMetricPointer | GetDistanceMetric (const std::string &_l) |
| void | AddDistanceMetric (DistanceMetricPointer _dm, const std::string &_l) |
Validity Checker Accessors | |
| ValidityCheckerPointer | GetValidityChecker (const std::string &_l) |
| void | AddValidityChecker (ValidityCheckerPointer _vc, const std::string &_l) |
| void | ToggleValidity () |
Neighborhood Finder Accessors | |
| NeighborhoodFinderPointer | GetNeighborhoodFinder (const std::string &_l) |
| void | AddNeighborhoodFinder (NeighborhoodFinderPointer _nf, const std::string &_l) |
Sampler Accessors | |
| const SamplerSet *const | GetSamplers () const |
| SamplerPointer | GetSampler (const std::string &_l) |
| void | AddSampler (SamplerPointer _s, const std::string &_l) |
Local Planner Accessors | |
| LocalPlannerPointer | GetLocalPlanner (const std::string &_l) |
| void | AddLocalPlanner (LocalPlannerPointer _lp, const std::string &_l) |
Extender Accessors | |
| ExtenderPointer | GetExtender (const std::string &_l) |
| void | AddExtender (ExtenderPointer _mps, const std::string &_l) |
Path Modifier Accessors | |
| PathModifierPointer | GetPathModifier (const std::string &_l) |
| void | AddPathModifier (PathModifierPointer _ps, const std::string &_l) |
Edge Validity Checker Accessors | |
| EdgeValidityCheckerPointer | GetEdgeValidityChecker (const std::string &_l) |
| void | AddEdgeValidityChecker (EdgeValidityCheckerPointer _ps, const std::string &_l) |
Connector Accessors | |
| ConnectorPointer | GetConnector (const std::string &_l) |
| void | AddConnector (ConnectorPointer _c, const std::string &_l) |
Metric Accessors | |
| MetricPointer | GetMetric (const std::string &_l) |
| void | AddMetric (MetricPointer _m, const std::string &_l) |
Map Evaluator Accessors | |
| MapEvaluatorPointer | GetMapEvaluator (const std::string &_l) |
| void | AddMapEvaluator (MapEvaluatorPointer _me, const std::string &_l) |
MPStrategy Accessors | |
| const MPStrategySet *const | GetMPStrategies () const |
| MPStrategyPointer | GetMPStrategy (const std::string &_l) |
| void | AddMPStrategy (MPStrategyPointer _mps, const std::string &_l) |
MPTools Accessors | |
| MPTools * | GetMPTools () |
Input Accessors | |
| MPProblem * | GetMPProblem () const noexcept |
| void | SetMPProblem (MPProblem *const _problem) noexcept |
| MPTask * | GetTask () const noexcept |
| void | SetTask (MPTask *const _task) noexcept |
| GroupTask * | GetGroupTask () const noexcept |
| void | SetGroupTask (GroupTask *const _task) noexcept |
| const std::string & | GetBaseFilename () const noexcept |
| void | SetBaseFilename (const std::string &_s) noexcept |
Solution Accessors | |
| MPSolution * | GetMPSolution () const noexcept |
| void | SetMPSolution (MPSolution *_sol) noexcept |
| RoadmapType * | GetRoadmap (Robot *const _r=nullptr) const noexcept |
| GroupRoadmapType * | GetGroupRoadmap (RobotGroup *const _g=nullptr) const noexcept |
| RoadmapType * | GetBlockRoadmap (Robot *const _r=nullptr) const noexcept |
| Path * | GetPath (Robot *const _r=nullptr) const noexcept |
| GroupPath * | GetGroupPath (RobotGroup *const _g=nullptr) const noexcept |
| LocalObstacleMap * | GetLocalObstacleMap (Robot *const _r=nullptr) const noexcept |
| GoalTracker * | GetGoalTracker () const noexcept |
| StatClass * | GetStatClass () const noexcept |
Edge Reconstruction | |
| std::vector< typename RoadmapType::VP > | ReconstructEdge (RoadmapType *const _roadmap, const VID _source, const VID _target, const double _posRes, const double _oriRes) |
| std::vector< typename GroupRoadmapType::VP > | ReconstructEdge (GroupRoadmapType *const _roadmap, const VID _source, const VID _target, const double _posRes, const double _oriRes) |
| template<typename AbstractRoadmapType > | |
| std::vector< typename AbstractRoadmapType::VP > | ReconstructEdge (AbstractRoadmapType *const _roadmap, const VID _source, const VID _target) |
Execution Interface | |
| void | Halt () |
| bool | IsRunning () const noexcept |
| Check to see if the strategy should continue. More... | |
| void | SetSeed () const noexcept |
| Set the current seed to match the first solver node. More... | |
| void | SetSeed (const long _seed) const noexcept |
| void | AddSolver (const std::string &_label, long _seed, const std::string &_baseFileName, bool _vizmoDebug=false) |
| std::vector< std::string > | GetSolverLabels () |
| void | Solve (MPProblem *_problem, MPTask *_task, MPSolution *_solution) |
| void | Solve (MPProblem *_problem, MPTask *_task) |
| void | Solve (MPProblem *_problem, GroupTask *_task) |
| Group overload: More... | |
| void | Solve (MPProblem *_problem, GroupTask *_task, MPSolution *_solution) |
| void | Solve (MPProblem *_problem, MPTask *_task, MPSolution *_solution, const std::string &_label, const long _seed, const std::string &_baseFilename) |
Debugging | |
| void | Print (std::ostream &_os) const |
| Print each method set. More... | |
Protected Attributes | |
Method Sets | |
Method sets hold and offer access to the motion planning objects of the corresponding type. | |
| DistanceMetricSet * | m_distanceMetrics {nullptr} |
| ValidityCheckerSet * | m_validityCheckers {nullptr} |
| NeighborhoodFinderSet * | m_neighborhoodFinders {nullptr} |
| SamplerSet * | m_samplers {nullptr} |
| LocalPlannerSet * | m_localPlanners {nullptr} |
| ExtenderSet * | m_extenders {nullptr} |
| PathModifierSet * | m_pathModifiers {nullptr} |
| EdgeValidityCheckerSet * | m_edgeValidityCheckers {nullptr} |
| ConnectorSet * | m_connectors {nullptr} |
| MetricSet * | m_metrics {nullptr} |
| MapEvaluatorSet * | m_mapEvaluators {nullptr} |
| MPStrategySet * | m_mpStrategies {nullptr} |
| typedef GroupRoadmap<GroupCfg<RoadmapType>, GroupLocalPlan<RoadmapType> > MPLibrary::GroupRoadmapType |
| typedef MethodSet<MetricMethod> MPLibrary::MetricSet |
| typedef MPSolutionType MPLibrary::MPSolution |
| typedef MPToolsType MPLibrary::MPTools |
| typedef GenericStateGraph<Cfg, DefaultWeight<Cfg> > MPLibrary::RoadmapType |
| typedef MethodSet<SamplerMethod> MPLibrary::SamplerSet |
| typedef size_t MPLibrary::VID |
| MPLibrary::MPLibrary | ( | ) |
| MPLibrary::MPLibrary | ( | const std::string & | _filename | ) |
| MPLibrary::MPLibrary | ( | XMLNode & | planningLibraryNode | ) |
|
virtual |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Add an input set to this MPLibrary.
| _label | The MPStrategy label to use. |
| _seed | The random seed to use. |
| _baseFileName | The base name of the XML file to use. |
| _vizmoDebug | Enable/disable vizmo debug. |
|
inline |
|
noexcept |
|
noexcept |
|
inline |
|
inline |
|
inline |
|
inline |
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
|
inline |
|
inline |
|
inline |
|
noexcept |
|
noexcept |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
noexcept |
|
inline |
|
inline |
|
inline |
|
noexcept |
|
noexcept |
|
inline |
| void MPLibrary::Halt | ( | ) |
Halt the current strategy and move on to finalization. Useful for controlling the library from an external client object.
|
noexcept |
Check to see if the strategy should continue.
| void MPLibrary::Print | ( | std::ostream & | _os | ) | const |
Print each method set.
| void MPLibrary::ProcessXML | ( | XMLNode & | node | ) |
| void MPLibrary::ReadXMLFile | ( | const std::string & | _filename | ) |
Read an XML file to set the algorithms and parameters in this instance.
| _filename | The XML file name. |
| std::vector< typename AbstractRoadmapType::VP > MPLibrary::ReconstructEdge | ( | AbstractRoadmapType *const | _roadmap, |
| const VID | _source, | ||
| const VID | _target | ||
| ) |
| std::vector< typename MPLibrary::GroupRoadmapType::VP > MPLibrary::ReconstructEdge | ( | GroupRoadmapType *const | _roadmap, |
| const VID | _source, | ||
| const VID | _target, | ||
| const double | _posRes, | ||
| const double | _oriRes | ||
| ) |
| std::vector< typename MPLibrary::RoadmapType::VP > MPLibrary::ReconstructEdge | ( | RoadmapType *const | _roadmap, |
| const VID | _source, | ||
| const VID | _target, | ||
| const double | _posRes, | ||
| const double | _oriRes | ||
| ) |
Recompute a roadmap edge path at full resolution (source and target cfgs are not included).
| _roadmap | The roadmap pointer. |
| _source | The source VID. |
| _target | The target VID. |
| _posRes | The position resolution to use. |
| _oriRes | The orientation resolution to use. |
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
Set the current seed to match the first solver node.
|
noexcept |
Set the current seed.
| _seed | The seed value. |
|
noexcept |
| void MPLibrary::Solve | ( | MPProblem * | _problem, |
| GroupTask * | _task, | ||
| MPSolution * | _solution | ||
| ) |
Run each input (solver) in sequence.
| _problem | The problem representation. |
| _task | The task representation. |
| void MPLibrary::Solve | ( | MPProblem * | _problem, |
| MPTask * | _task, | ||
| MPSolution * | _solution | ||
| ) |
Run a single input (solver) and get back its solution.
| _problem | The problem representation. |
| _task | The task representation. |
| _solution | The solution container, which may or may not already be populated. Existing solutions should be extended, not overwritten. |
| void MPLibrary::Solve | ( | MPProblem * | _problem, |
| MPTask * | _task, | ||
| MPSolution * | _solution, | ||
| const std::string & | _label, | ||
| const long | _seed, | ||
| const std::string & | _baseFilename | ||
| ) |
Run a specific MPStrategy from the XML file with a designated seed and base output file name. This is intended for use with the simulator where agents may need to call various strategies within a single execution.
| _problem | The problem representation. |
| _task | The task representation. |
| _solution | The solution container, which may or may not already be populated. Existing solutions should be extended, not overwritten. |
| _label | The label of the MPStrategy to call. |
| _seed | The seed to use. |
| _baseFilename | The base name for output files. |
|
inline |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |