ompl::magic Namespace Reference

This namespace includes magic constants used in various places in OMPL. More...

Variables

static const unsigned int DEFAULT_NEAREST_NEIGHBORS_LAZY = 5
 The number of nearest neighbors to consider by default in the construction of the PRM roadmap.
static const unsigned int MIN_ADDED_SEGMENTS_FOR_LAZY_OPTIMIZATION = 5
 When optimizing solutions with lazy planners, this is the minimum number of path segments to add before attempting a new optimized solution extraction.
static const unsigned int MAX_RANDOM_BOUNCE_STEPS = 5
 The number of steps to take for a random bounce motion generated as part of the expansion step of PRM.
static const double ROADMAP_BUILD_TIME = 0.2
 The time in seconds for a single roadmap building operation (dt)
static const unsigned int DEFAULT_NEAREST_NEIGHBORS = 10
 The number of nearest neighbors to consider by default in the construction of the PRM roadmap.
static const unsigned int MAX_CLIMB_NO_UPDATE_STEPS = 10
 Maximum number of consecutive failures to allow before giving up on improving a state. A failure consists of being unable to sample a state that is closer to the specified goal region.
static const double GAP_COST_FRACTION = 0.05
 The fraction of the path length to consider as gap cost when aligning paths to be hybridized.
static const double PROJECTION_DIMENSION_SPLITS = 20.0
 When the cell sizes for a projection are automatically computed, this value defines the number of parts into which each dimension is split.
static const unsigned int PROJECTION_EXTENTS_SAMPLES = 100
 When no cell sizes are specified for a projection, they are inferred like so: 1. approximate extent of projected space by taking a number of samples (the constant below) 2. compute the cell sizes by dividing the extent by PROJECTION_DIMENSION_SPLITS.
static const double PROJECTION_EXPAND_FACTOR = 0.05
 When a bounding box of projected states cannot be inferred, it will be estimated by sampling states. To get closer to the true bounding box, we grow the bounding box of the projected sampled states by 5% on each side.
static const double MAX_MOTION_LENGTH_AS_SPACE_EXTENT_FRACTION = 0.2
 For planners: if default values are to be used for the maximum length of motions, this constant defines what fraction of the space extent (computed with ompl::base::SpaceInformation::getMaximumExtent()) is to be used as the maximum length of a motion.
static const double COST_MAX_MOTION_LENGTH_AS_SPACE_EXTENT_FRACTION = 0.175
 For cost-based planners it has been observed that smaller ranges are typically suitable. The same range computation strategy is used for all planners, but for cost planners an additional factor (smaller than 1) is multiplied in.
static const double STD_DEV_AS_SPACE_EXTENT_FRACTION = 0.1
 When standard deviation is needed for Gaussian sampling in the state space, by default the value of the standard deviation is computed as a fraction of the extent of the space.
static const double BETTER_PATH_COST_MARGIN = std::numeric_limits<double>::epsilon() * 1e3
 When running algorithms such as RRT*, rewire updates are made when the cost of a path appears better than the cost of another. The minimum margin for a path to be better than another one is specified by this parameter. This is used to avoid numerical issues that can otherwise arise.
static const unsigned int MAX_VALID_SAMPLE_ATTEMPTS = 100
 When multiple attempts are needed to generate valid samples, this value defines the default number of attempts.
static const unsigned int FIND_VALID_STATE_ATTEMPTS_WITHOUT_TERMINATION_CHECK = 2
 Maximum number of sampling attempts to find a valid state, without checking whether the allowed time elapsed. This value should not really be changed.
static const unsigned int TEST_STATE_COUNT = 1000
 When multiple states need to be generated as part of the computation of various information (usually through stochastic processes), this parameter controls how many samples are generated.

Detailed Description

This namespace includes magic constants used in various places in OMPL.

We strive to minimize the use of constants in the code, but at places, this is necessary. These constants typically do not have to be changed, but we chose to expose their functionality for the more curious user. The constants in this namespace include values typically used in the computation of default settings.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines