KrisLibrary  1.0.0
Public Member Functions | Public Attributes | List of all members
QuadraticObjective Class Reference

A cost that measures quadratic tracking error and control cost. Note that the time must exist in the state. More...

#include <Objective.h>

Inheritance diagram for QuadraticObjective:
IntegratorObjectiveFunctional ObjectiveFunctionalBase

Public Member Functions

 QuadraticObjective (int timeIndex=0)
 
virtual const char * TypeString ()
 Subclasses: return an identifier for this goal type.
 
virtual Real TerminalCost (const Vector &qend)
 
virtual Real DifferentialCost (const State &x, const ControlInput &u)
 Subclasses must override this.
 
- Public Member Functions inherited from IntegratorObjectiveFunctional
 IntegratorObjectiveFunctional (Real dt=0.1, int timeIndex=-1)
 
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 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

InterpolatorPtr desiredPath
 
Math::Matrix stateCostMatrix
 
Math::Matrix controlCostMatrix
 
Math::Matrix terminalCostMatrix
 
- Public Attributes inherited from IntegratorObjectiveFunctional
Real dt
 
int timeIndex
 

Detailed Description

A cost that measures quadratic tracking error and control cost. Note that the time must exist in the state.

The error functional has differential cost L(x,u,t) = (x-xdes(t))^T P (x-xdes(t)) + u^T Q u with P = stateCostMatrix and Q = controlCost matrix.

Terminal cost is Phi(x) = (x-xdes(T))^T R (x-xdes(T)) with R = terminalCostMatrix.


The documentation for this class was generated from the following files: