Loading...
Searching...
No Matches
ATRRT.h
95 base::PlannerStatus solve(const base::PlannerTerminationCondition &plannerTerminationCondition) override;
273 std::vector<ompl::geometric::ATRRT::Motion *> computeDijkstraLowestCostPath(Motion *a, Motion *b);
307 // *********************************************************************************************************
Random number generation. An instance of this class cannot be used by multiple threads at once (membe...
Definition RandomNumbers.h:57
Definition of a cost value. Can represent the cost of a motion or the cost of a state.
Definition Cost.h:48
Object containing planner generated vertex and edge data. It is assumed that all vertices are unique,...
Definition PlannerData.h:175
Encapsulate a termination condition for a motion planner. Planners will call operator() to decide whe...
Definition PlannerTerminationCondition.h:64
std::vector< Motion * > neighbors
The connected motions in the exploration graph.
Definition ATRRT.h:243
Motion(const base::SpaceInformationPtr &si)
Constructor that allocates memory for the state.
Definition ATRRT.h:233
double frontierThreshold_
The distance between an old state and a new state that qualifies it as a frontier state.
Definition ATRRT.h:353
double getCostThreshold() const
Get the cost threshold (default is infinity). Any motion cost that is not better than this cost (acco...
Definition ATRRT.h:162
base::Cost worstCost_
The least desirable (e.g., maximum) cost value in the search tree.
Definition ATRRT.h:322
double getFrontierNodeRatio() const
Get the ratio between adding nonfrontier nodes to frontier nodes, for example .1 is 1/10 or one nonfr...
Definition ATRRT.h:204
double getInitTemperature() const
Get the temperature at the start of planning.
Definition ATRRT.h:176
double distanceFunction(const Motion *a, const Motion *b) const
Compute distance between motions (actually distance between contained states).
Definition ATRRT.h:253
ompl::base::OptimizationObjectivePtr opt_
The optimization objective being optimized by ATRRT.
Definition ATRRT.h:335
Motion * lastGoalMotion_
The most recent goal motion. Used for PlannerData computation.
Definition ATRRT.h:295
ompl::base::Cost computeCostLowestCostPath(Motion *a, Motion *b)
Compute cost of lowest-cost path found by Dijkstra.
Definition ATRRT.cpp:531
double goalBias_
The fraction of time the goal is picked as the state to expand towards (if such a state is available)...
Definition ATRRT.h:286
void setInitTemperature(double initTemperature)
Set the initial temperature at the beginning of the algorithm. Should be high to allow for initial ex...
Definition ATRRT.h:169
bool transitionTest(const base::Cost &motionCost)
Filter irrelevant configuration regarding the search of low-cost paths before inserting into tree.
Definition ATRRT.cpp:401
bool minExpansionControl(double randMotionDistance)
Use ratio to prefer frontier nodes to nonfrontier ones.
Definition ATRRT.cpp:428
double getFrontierThreshold() const
Get the distance between a new state and the nearest neighbor that qualifies that state as being a fr...
Definition ATRRT.h:190
double temp_
Temperature parameter used to control the difficulty level of transition tests. Low temperatures limi...
Definition ATRRT.h:316
double neighborhoodRadiusFactor_
Factor of maxDistance_ used to calculate neighborhood radius TODO: temporary solution.
Definition ATRRT.h:344
base::Cost bestCost_
The most desirable (e.g., minimum) cost value in the search tree.
Definition ATRRT.h:319
void getPlannerData(base::PlannerData &data) const override
Get information about the current run of the motion planner. Repeated calls to this function will upd...
Definition ATRRT.cpp:380
void setFrontierThreshold(double frontier_threshold)
Set the distance between a new state and the nearest neighbor that qualifies that state as being a fr...
Definition ATRRT.h:183
void clear() override
Clear all internal datastructures. Planner settings are not affected. Subsequent calls to solve() wil...
Definition ATRRT.cpp:75
base::Cost costThreshold_
All motion costs must be better than this cost (default is infinity).
Definition ATRRT.h:325
base::PlannerStatus solve(const base::PlannerTerminationCondition &plannerTerminationCondition) override
Function that can solve the motion planning problem. This function can be called multiple times on th...
Definition ATRRT.cpp:148
double getTempChangeFactor() const
Get the factor by which the temperature rises based on current acceptance/rejection rate.
Definition ATRRT.h:146
double frontierNodeRatio_
Target ratio of non-frontier nodes to frontier nodes. rho.
Definition ATRRT.h:355
void setFrontierNodeRatio(double frontierNodeRatio)
Set the ratio between adding nonfrontier nodes to frontier nodes, for example .1 is 1/10 or one nonfr...
Definition ATRRT.h:197
double tempChangeFactor_
The value of the expression exp^T_rate. The temperature is increased by this factor whenever the tran...
Definition ATRRT.h:329
void setup() override
Perform extra configuration steps, if needed. This call will also issue a call to ompl::base::SpaceIn...
Definition ATRRT.cpp:92
std::vector< ompl::geometric::ATRRT::Motion * > computeDijkstraLowestCostPath(Motion *a, Motion *b)
Compute lowest-cost path in graph between two motions.
Definition ATRRT.cpp:489
void setCostThreshold(double maxCost)
Set the cost threshold (default is infinity). Any motion cost that is not better than this cost (acco...
Definition ATRRT.h:154
std::shared_ptr< NearestNeighbors< Motion * > > nearestNeighbors_
A nearest-neighbors datastructure containing the tree of motions.
Definition ATRRT.h:282
void addUsefulCycles(Motion *newMotion, Motion *nearMotion)
improve solution found by TRRT
Definition ATRRT.cpp:451
void addEdge(Motion *a, Motion *b)
Add bidirectional edge between two motions.
Definition ATRRT.cpp:483
void setTempChangeFactor(double factor)
Set the factor by which the temperature is increased after a failed transition test....
Definition ATRRT.h:140
This namespace contains code that is specific to planning under geometric constraints.
Definition GeneticSearch.h:48
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
bool stating which motion cost is better
Definition ATRRT.h:299