Loading...
Searching...
No Matches
Lightning.h
42 Notes: The user of this class should invoke the loading and saving from file, otherwise experiences
201 bool reversePathIfNecessary(ompl::geometric::PathGeometric &path1, ompl::geometric::PathGeometric &path2);
A shared pointer wrapper for ompl::base::PlannerData.
Encapsulate a termination condition for a motion planner. Planners will call operator() to decide whe...
Definition PlannerTerminationCondition.h:64
The Lightning Framework's Retrieve-Repair component.
Definition LightningRetrieveRepair.h:77
void setRepairPlanner(const base::PlannerPtr &planner)
Set the planner that will be used for repairing invalid paths recalled from experience.
Definition LightningRetrieveRepair.cpp:81
bool configured_
Flag indicating whether the classes needed for planning are set up.
Definition SimpleSetup.h:297
Create the set of classes typically needed to solve a geometric problem.
Definition ExperienceSetup.h:57
Built off of SimpleSetup but provides support for planning from experience.
Definition Lightning.h:99
ompl::tools::LightningDBPtr experienceDB_
A shared object between all the planners for saving and loading previous experience.
Definition Lightning.h:210
std::size_t getExperiencesCount() const override
Get the total number of paths stored in the database.
Definition Lightning.cpp:394
ompl::geometric::LightningRetrieveRepair & getLightningRetrieveRepairPlanner() const
Get a pointer to the retrieve repair planner.
Definition Lightning.h:125
void clear() override
Clear all planning data. This only includes data generated by motion plan computation....
Definition Lightning.cpp:109
void printLogs(std::ostream &out=std::cout) const override
Display debug data about overall results from Lightning since being loaded.
Definition Lightning.cpp:371
bool saveIfChanged() override
Save the experience database to file if there has been a change.
Definition Lightning.cpp:330
void getAllPlannerDatas(std::vector< ompl::base::PlannerDataPtr > &plannerDatas) const override
Get a vector of all the planning data in the database.
Definition Lightning.cpp:399
ompl::tools::ParallelPlanPtr pp_
Instance of parallel planning to use for computing solutions in parallel.
Definition Lightning.h:207
void printResultsInfo(std::ostream &out=std::cout) const override
Display debug data about potential available solutions.
Definition Lightning.cpp:340
bool reversePathIfNecessary(ompl::geometric::PathGeometric &path1, ompl::geometric::PathGeometric &path2)
If path1 and path2 have a better start/goal match when reverse, then reverse path2.
Definition Lightning.cpp:411
void setup() override
This method will create the necessary classes for planning. The solve() method will call this functio...
Definition Lightning.cpp:68
void convertPlannerData(const ompl::base::PlannerDataPtr &plannerData, ompl::geometric::PathGeometric &path)
Convert PlannerData to PathGeometric. Assume ordering of vertices is order of path.
Definition Lightning.cpp:404
void setPlannerAllocator(const base::PlannerAllocator &pa)
Set the planner allocator to use. This is only used if no planner has been set. This is optional – a ...
Definition Lightning.h:141
const ompl::tools::DynamicTimeWarpPtr & getDynamicTimeWarp() const
Tool for comparing two paths and scoring them.
Definition Lightning.h:189
base::PlannerStatus solve(double time=1.0) override
Run the planner for up to a specified amount of time (default is 1 second)
Definition Lightning.cpp:314
void print(std::ostream &out=std::cout) const override
Print information about the current setup.
Definition Lightning.cpp:350
Lightning(const base::SpaceInformationPtr &si)
Constructor needs the state space used for planning.
Definition Lightning.cpp:44
void setRepairPlanner(const base::PlannerPtr &planner) override
Set the planner to use for repairing experience paths inside the LightningRetrieveRepair planner....
Definition Lightning.h:133
ompl::tools::DynamicTimeWarpPtr dtw_
Tool for comparing two paths and scoring them.
Definition Lightning.h:213
std::function< PlannerPtr(const SpaceInformationPtr &)> PlannerAllocator
Definition of a function that can allocate a planner.
Definition Planner.h:437
Main namespace. Contains everything in this library.
Definition MultiLevelPlanarManipulatorDemo.cpp:66
A class to store the exit status of Planner::solve()
Definition PlannerStatus.h:49