Thunder.h
168 void convertPlannerData(const ompl::base::PlannerDataPtr plannerData, ompl::geometric::PathGeometric &path);
176 bool reversePathIfNecessary(ompl::geometric::PathGeometric &path1, ompl::geometric::PathGeometric &path2);
std::vector< ompl::geometric::PathGeometric > queuedSolutionPaths_
Accumulated experiences to be later added to experience database.
Definition: Thunder.h:202
std::size_t getExperiencesCount() const
Get the total number of paths stored in the database.
Definition: Thunder.cpp:480
ompl::tools::ThunderDBPtr getExperienceDB()
Hook for getting access to debug data.
Definition: Thunder.cpp:519
ompl::geometric::ThunderRetrieveRepair & getRetrieveRepairPlanner() const
Get a pointer to the retrieve repair planner.
Definition: Thunder.h:119
A shared pointer wrapper for ompl::base::StateSpace.
bool saveIfChanged()
Save the experience database to file if there has been a change.
Definition: Thunder.cpp:410
ompl::tools::ParallelPlanPtr pp_
Instance of parallel planning to use for computing solutions in parallel.
Definition: Thunder.h:196
Encapsulate a termination condition for a motion planner. Planners will call operator() to decide whe...
Definition: PlannerTerminationCondition.h:66
virtual base::PlannerStatus solve(double time=1.0)
Run the planner for up to a specified amount of time (default is 1 second)
Definition: Thunder.cpp:398
Built off of SimpleSetup but provides support for planning from experience.
Definition: Thunder.h:85
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: Thunder.cpp:497
virtual void print(std::ostream &out=std::cout) const
Print information about the current setup.
Definition: Thunder.cpp:427
The Thunder Framework's Retrieve-Repair component.
Definition: ThunderRetrieveRepair.h:75
Thunder(const base::SpaceInformationPtr &si)
Constructor needs the state space used for planning.
Definition: Thunder.cpp:46
std::function< PlannerPtr(const SpaceInformationPtr &)> PlannerAllocator
Definition of a function that can allocate a planner.
Definition: Planner.h:423
A shared pointer wrapper for ompl::base::Planner.
void printLogs(std::ostream &out=std::cout) const
Display debug data about overall results from Thunder since being loaded.
Definition: Thunder.cpp:453
A class to store the exit status of Planner::solve()
Definition: PlannerStatus.h:48
A shared pointer wrapper for ompl::base::SpaceInformation.
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: Thunder.cpp:191
void setRepairPlanner(const base::PlannerPtr &planner)
Set the planner that will be used for repairing invalid paths recalled from experience.
Definition: ThunderRetrieveRepair.cpp:91
virtual void clear(void)
Clear all planning data. This only includes data generated by motion plan computation. Planner settings, start & goal states are not affected.
Definition: Thunder.cpp:175
void convertPlannerData(const ompl::base::PlannerDataPtr plannerData, ompl::geometric::PathGeometric &path)
Convert PlannerData to PathGeometric. Assume ordering of verticies is order of path.
Definition: Thunder.cpp:490
void printResultsInfo(std::ostream &out=std::cout) const
Display debug data about potential available solutions.
Definition: Thunder.cpp:416
virtual void setup(void)
This method will create the necessary classes for planning. The solve() method will call this functio...
Definition: Thunder.cpp:78
void setRepairPlanner(const base::PlannerPtr &planner)
Set the planner to use for repairing experience paths inside the ThunderRetrieveRepair planner...
Definition: Thunder.h:127
bool dualThreadScratchEnabled_
Definition: Thunder.h:193
A shared pointer wrapper for ompl::base::PlannerData.
Create the set of classes typically needed to solve a geometric problem.
Definition: ExperienceSetup.h:58
void getAllPlannerDatas(std::vector< ompl::base::PlannerDataPtr > &plannerDatas) const
Get a vector of all the planning data in the database.
Definition: Thunder.cpp:485
ompl::tools::ThunderDBPtr experienceDB_
A shared object between all the planners for saving and loading previous experience.
Definition: Thunder.h:199