ompl::base::CostConvergenceTerminationCondition Class Reference
: A termination condition for stopping an optimizing planner based on cost convergence More...
#include <ompl/base/terminationconditions/CostConvergenceTerminationCondition.h>
Inheritance diagram for ompl::base::CostConvergenceTerminationCondition:
Public Member Functions  
CostConvergenceTerminationCondition (ProblemDefinitionPtr &pdef, size_t solutionsWindow=10, double epsilon=0.1)  
Constructor. More...  
void  processNewSolution (const Cost solutionCost) 
Public Member Functions inherited from ompl::base::PlannerTerminationCondition  
PlannerTerminationCondition (const PlannerTerminationConditionFn &fn)  
Construct a termination condition. By default, eval() will call the externally specified function fn to decide whether the planner should terminate.  
PlannerTerminationCondition (const PlannerTerminationConditionFn &fn, double period)  
Construct a termination condition that is evaluated every period seconds. The evaluation of the condition consists of calling fn() in a separate thread. Calls to eval() will always return the last value computed by the call to fn().  
bool  operator() () const 
Return true if the planner should stop its computation.  
operator bool () const  
Cast as true if the planner should stop its computation.  
void  terminate () const 
Notify that the condition for termination should become true, regardless of what eval() returns. This function may be called while the condition is being evaluated by other threads.  
bool  eval () const 
The implementation of some termination condition. By default, this just calls fn_()  
Detailed Description
: A termination condition for stopping an optimizing planner based on cost convergence
Definition at line 108 of file CostConvergenceTerminationCondition.h.
Constructor & Destructor Documentation
◆ CostConvergenceTerminationCondition()
ompl::base::CostConvergenceTerminationCondition::CostConvergenceTerminationCondition  (  ProblemDefinitionPtr &  pdef, 
size_t  solutionsWindow = 10 , 

double  epsilon = 0.1 

) 
Constructor.
 Parameters

pdef Problem definition, needed to get access to the optimization objective and to set a callback to get intermediate solutions. solutionsWindow Minimum number of solutions to use in deciding whether a planner has converged. epsilon Threshold to consider for convergence. This should be a positive number close to 0. If the cumulative moving average does not change by a relative fraction of epsilon after a new better solution is found, convergence has been reached and a planner should terminate..
Definition at line 39 of file CostConvergenceTerminationCondition.cpp.
The documentation for this class was generated from the following files:
 ompl/base/terminationconditions/CostConvergenceTerminationCondition.h
 ompl/base/terminationconditions/src/CostConvergenceTerminationCondition.cpp