Class OptimizePlan

Class Documentation

class OptimizePlan

Run one or more motion planners repeatedly (using a specified number of threads), and hybridize solutions, trying to optimize solutions.

Public Functions

inline OptimizePlan(const base::ProblemDefinitionPtr &pdef)

Create an instance for a specified space information.

virtual ~OptimizePlan() = default
void addPlanner(const base::PlannerPtr &planner)

Add a planner to use.

void addPlannerAllocator(const base::PlannerAllocator &pa)

Add a planner allocator to use.

void clearPlanners()

Clear the set of planners to be executed.

inline const base::ProblemDefinitionPtr &getProblemDefinition() const

Get the problem definition used.

inline base::ProblemDefinitionPtr &getProblemDefinition()

Get the problem definition used.

base::PlannerStatus solve(double solveTime, unsigned int maxSol = 10, unsigned int nthreads = 1)

Try to solve the specified problem within a solveTime seconds, using at most nthreads threads. If more than maxSol solutions are generated, stop generating more.

Protected Attributes

ParallelPlan pp_

Instance of parallel planning to use for computing solutions in parallel.

std::vector<base::PlannerPtr> planners_

The set of planners to be used.