Class MechanicalWorkOptimizationObjective

Inheritance Relationships

Base Type

Derived Type

Class Documentation

class MechanicalWorkOptimizationObjective : public ompl::base::OptimizationObjective

An optimization objective which defines path cost using the idea of mechanical work. To be used in conjunction with TRRT.

Subclassed by ompl::base::VFMechanicalWorkOptimizationObjective

Public Functions

MechanicalWorkOptimizationObjective(const SpaceInformationPtr &si, double pathLengthWeight = 0.00001)

The mechanical work formulation requires a weighing factor to use for the length of a path in order to disambiguate optimal paths. This weighing factor should be small. The default value for this weight is 0.00001.

virtual double getPathLengthWeight() const

Set the factor to use for weighing path length in the mechanical work objective formulation.

virtual Cost stateCost(const State *s) const override

Returns a cost with a value of 1.

virtual Cost motionCost(const State *s1, const State *s2) const override

Defines motion cost in terms of the mechanical work formulation used for TRRT.

Protected Attributes

double pathLengthWeight_

The weighing factor for the path length in the mechanical work objective formulation.