Class CostConvergenceTerminationCondition

Inheritance Relationships

Base Type

Class Documentation

class CostConvergenceTerminationCondition : public ompl::base::PlannerTerminationCondition

: A termination condition for stopping an optimizing planner based on cost convergence

Public Functions

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..

void processNewSolution(const Cost solutionCost)