37 #ifndef OMPL_GEOMETRIC_PLANNERS_KPIECE_KPIECE1_
38 #define OMPL_GEOMETRIC_PLANNERS_KPIECE_KPIECE1_
40 #include "ompl/geometric/planners/PlannerIncludes.h"
41 #include "ompl/geometric/planners/kpiece/Discretization.h"
85 virtual void clear(
void);
131 disc_.setBorderFraction(bp);
138 return disc_.getBorderFraction();
194 virtual void setup(
void);
double failedExpansionScoreFactor_
When extending a motion from a cell, the extension can fail. If it is, the score of the cell is multi...
double getBorderFraction(void) const
Get the fraction of time to focus exploration on boundary.
Object containing planner generated vertex and edge data. It is assumed that all vertices are unique...
double getFailedExpansionCellScoreFactor(void) const
Get the factor that is multiplied to a cell's score if extending a motion from that cell failed...
const base::ProjectionEvaluatorPtr & getProjectionEvaluator(void) const
Get the projection evaluator.
Motion * lastGoalMotion_
The most recent goal motion. Used for PlannerData computation.
RNG rng_
The random number generator.
base::State * state
The state contained by this motion.
Representation of a motion for this algorithm.
void freeMotion(Motion *motion)
Free the memory for a motion.
A boost shared pointer wrapper for ompl::base::StateSampler.
double minValidPathFraction_
When extending a motion, the planner can decide to keep the first valid part of it, even if invalid states are found, as long as the valid part represents a sufficiently large fraction from the original motion.
Encapsulate a termination condition for a motion planner. Planners will call operator() to decide whe...
Discretization< Motion > disc_
The tree datastructure and the grid that covers it.
void setProjectionEvaluator(const std::string &name)
Set the projection evaluator (select one from the ones registered with the state space).
double goalBias_
The fraction of time the goal is picked as the state to expand towards (if such a state is available)...
void setGoalBias(double goalBias)
Set the goal bias.
void setProjectionEvaluator(const base::ProjectionEvaluatorPtr &projectionEvaluator)
Set the projection evaluator. This class is able to compute the projection of a given state...
double getGoalBias(void) const
Get the goal bias the planner is using.
double maxDistance_
The maximum length of a motion to be added to a tree.
virtual void getPlannerData(base::PlannerData &data) const
Get information about the current run of the motion planner. Repeated calls to this function will upd...
Random number generation. An instance of this class cannot be used by multiple threads at once (membe...
One-level discretization used for KPIECE.
double getRange(void) const
Get the range the planner is using.
Kinematic Planning by Interior-Exterior Cell Exploration.
Base class for a planner.
void setRange(double distance)
Set the range the planner is supposed to use.
A boost shared pointer wrapper for ompl::base::ProjectionEvaluator.
A class to store the exit status of Planner::solve()
Motion(const base::SpaceInformationPtr &si)
Constructor that allocates memory for the state.
void setBorderFraction(double bp)
Set the fraction of time for focusing on the border (between 0 and 1). This is the minimum fraction u...
KPIECE1(const base::SpaceInformationPtr &si)
Constructor.
Definition of an abstract state.
virtual void clear(void)
Clear all internal datastructures. Planner settings are not affected. Subsequent calls to solve() wil...
virtual void setup(void)
Perform extra configuration steps, if needed. This call will also issue a call to ompl::base::SpaceIn...
Motion * parent
The parent motion in the exploration tree.
void setMinValidPathFraction(double fraction)
When extending a motion, the planner can decide to keep the first valid part of it, even if invalid states are found, as long as the valid part represents a sufficiently large fraction from the original motion. This function sets the minimum acceptable fraction (between 0 and 1).
base::ProjectionEvaluatorPtr projectionEvaluator_
This algorithm uses a discretization (a grid) to guide the exploration. The exploration is imposed on...
base::StateSamplerPtr sampler_
A state space sampler.
double getMinValidPathFraction(void) const
Get the value of the fraction set by setMinValidPathFraction()
SpaceInformationPtr si_
The space information for which planning is done.
virtual base::PlannerStatus solve(const base::PlannerTerminationCondition &ptc)
Function that can solve the motion planning problem. This function can be called multiple times on th...
void setFailedExpansionCellScoreFactor(double factor)
When extending a motion from a cell, the extension can be successful or it can fail. If the extension fails, the score of the cell is multiplied by factor. These number should be in the range (0, 1].