Klamp't
0.9.0
|
A base class for objective functionals in time/config/velocity space. More...
#include <PlannerObjective.h>
Public Member Functions | |
virtual const char * | TypeString () |
Subclasses: return an identifier for this goal type. | |
virtual string | Description () |
Subclasses: return a string for printing (optional) | |
virtual Real | TerminalCost (Real tend, const Vector &qend, const Vector &dqend) |
virtual Real | DifferentialCost (Real t, const Vector &q, const Vector &dq) |
virtual bool | DifferentialTimeInvariant () const |
Subclasses: planners may exploit time invariant costs for faster performance. | |
virtual bool | TerminalTimeInvariant () const |
virtual bool | PathInvariant () const |
Subclasses: planners may exploit path-invariant costs for faster performance. | |
virtual Real | IncrementalCost (Real t, const ParabolicRamp::ParabolicRampND &ramp) |
virtual Real | IncrementalCost (Real t, const ParabolicRamp::DynamicPath &path) |
virtual Real | PathCost (const ParabolicRamp::DynamicPath &path, Real tstart=0) |
virtual Real | Delta (PlannerObjectiveBase *priorGoal) |
virtual bool | Read (File &file) |
Subclasses: read and write to binary file (optional, not implemented yet) | |
virtual bool | Write (File &file) |
A base class for objective functionals in time/config/velocity space.
|
inlinevirtual |
Subclasses: a similarity metric in for the amount of change between this objective and a prior goal. Results >= 0.
Reimplemented in Klampt::CartesianTrackingObjective, Klampt::IKObjective, Klampt::CartesianObjective, Klampt::CompositeObjective, Klampt::VelocityObjective, Klampt::ConfigObjective, Klampt::TerminalTimeObjective, and Klampt::TimeObjective.
Referenced by Klampt::TimeObjective::DifferentialCost(), Klampt::ConfigObjective::PathCost(), Klampt::VelocityObjective::PathCost(), Klampt::CartesianObjective::PathCost(), Klampt::IKObjective::PathCost(), Klampt::TerminalTimeObjective::TypeString(), Klampt::CompositeObjective::TypeString(), and Klampt::CartesianTrackingObjective::TypeString().
|
inlinevirtual |
Subclasses: return the differential cost of passing through state (q,dq) at time t
Reimplemented in Klampt::CartesianTrackingObjective, Klampt::CompositeObjective, and Klampt::TimeObjective.
Referenced by Klampt::CompositeObjective::TypeString(), and Klampt::CartesianTrackingObjective::TypeString().
|
inlinevirtual |
Subclasses: return the incremental cost of undertaking the segment 'ramp' starting at time t. This should be equal to the integral of the differential cost, or at least a good approximation
Reimplemented in Klampt::CartesianTrackingObjective, Klampt::CompositeObjective, and Klampt::TimeObjective.
References PathCost().
Referenced by Klampt::TimeObjective::DifferentialCost(), Klampt::CompositeObjective::TypeString(), and Klampt::CartesianTrackingObjective::TypeString().
|
virtual |
Optional: return the cost of a candidate path starting at time tstart. This should be equal to the sum of the increment costs + the terminal cost
Reimplemented in Klampt::CartesianTrackingObjective, Klampt::IKObjective, Klampt::CartesianObjective, Klampt::CompositeObjective, Klampt::VelocityObjective, Klampt::ConfigObjective, Klampt::TerminalTimeObjective, and Klampt::TimeObjective.
Referenced by IncrementalCost(), Klampt::TimeObjective::TypeString(), Klampt::TerminalTimeObjective::TypeString(), Klampt::CompositeObjective::TypeString(), and Klampt::CartesianTrackingObjective::TypeString().
|
inlinevirtual |
Subclasses: return the cost of a terminal state (qend,dqend) reached at time tend
Reimplemented in Klampt::CartesianTrackingObjective, Klampt::IKObjective, Klampt::CartesianObjective, Klampt::CompositeObjective, Klampt::VelocityObjective, Klampt::ConfigObjective, and Klampt::TerminalTimeObjective.
Referenced by Klampt::CartesianObjective::PathCost(), Klampt::IKObjective::PathCost(), Klampt::TerminalTimeObjective::TypeString(), Klampt::CompositeObjective::TypeString(), Klampt::CartesianObjective::TypeString(), Klampt::IKObjective::TypeString(), and Klampt::CartesianTrackingObjective::TypeString().