KrisLibrary
1.0.0
|
A cost functional of the form J[x,u] = int_0^T L(x(t),u(t)) dt + Phi(x(T)) More...
#include <Objective.h>
Public Member Functions | |
IntegratorObjectiveFunctional (Real dt=0.1, int timeIndex=-1) | |
virtual Real | DifferentialCost (const State &x, const ControlInput &u)=0 |
Subclasses must override this. | |
virtual Real | Domain (const ControlInput &u, const Interpolator *path) |
Subclasses should override this if timeIndex < 0. | |
virtual Real | IncrementalCost (const ControlInput &u, const Interpolator *path) |
This is implemented for you. | |
Public Member Functions inherited from ObjectiveFunctionalBase | |
virtual const char * | TypeString () |
Subclasses: return an identifier for this goal type. | |
virtual std::string | Description () |
Subclasses: return a string for printing (optional) | |
virtual Real | IncrementalCost (const Interpolator *path) |
virtual Real | IncrementalCost (const KinodynamicMilestonePath &path) |
virtual Real | TerminalCost (const Config &qend) |
Subclasses: return the cost of a terminal state. | |
virtual bool | PathInvariant () const |
Subclasses: planners may exploit path-invariant costs for faster performance. | |
virtual Real | PathCost (const MilestonePath &path) |
virtual Real | PathCost (const KinodynamicMilestonePath &path) |
virtual bool | SaveParams (AnyCollection &collection) |
Subclasses: read and write parameters to collection. | |
virtual bool | LoadParams (AnyCollection &collection) |
Public Attributes | |
Real | dt |
int | timeIndex |
A cost functional of the form J[x,u] = int_0^T L(x(t),u(t)) dt + Phi(x(T))
where x is the state trajectory and u is the control trajectory with domain [0,T].
If timeIndex is provided and nonnegative, then that element of x is assumed to be time. Otherwise, the subclass needs to overload Domain() to tell this class what time domain should be integrated over, i.e., how long each segment takes to execute. This information may be, for example, in the first element of u.