aligator
0.6.1
A primal-dual augmented Lagrangian-type solver for nonlinear trajectory optimization.
|
Stage costs \( \ell(x, u) \) for control problems. More...
#include <aligator/core/cost-abstract.hpp>
Public Types | |
using | Scalar = _Scalar |
using | CostData = CostDataAbstractTpl<Scalar> |
using | Manifold = ManifoldAbstractTpl<Scalar> |
Public Member Functions | |
ALIGATOR_DYNAMIC_TYPEDEFS (Scalar) | |
int | nx () const |
int | ndx () const |
CostAbstractTpl (shared_ptr< Manifold > space, const int nu) | |
virtual void | evaluate (const ConstVectorRef &x, const ConstVectorRef &u, CostData &data) const =0 |
Evaluate the cost function. | |
virtual void | computeGradients (const ConstVectorRef &x, const ConstVectorRef &u, CostData &data) const =0 |
Compute the cost gradients \((\ell_x, \ell_u)\). | |
virtual void | computeHessians (const ConstVectorRef &x, const ConstVectorRef &u, CostData &data) const =0 |
Compute the cost Hessians \((\ell_{ij})_{i,j \in \{x,u\}}\). | |
virtual shared_ptr< CostData > | createData () const |
virtual | ~CostAbstractTpl ()=default |
Public Attributes | |
shared_ptr< Manifold > | space |
State dimension. | |
int | nu |
Control dimension. | |
Stage costs \( \ell(x, u) \) for control problems.
Definition at line 13 of file cost-abstract.hpp.
using aligator::CostAbstractTpl< _Scalar >::Scalar = _Scalar |
Definition at line 14 of file cost-abstract.hpp.
using aligator::CostAbstractTpl< _Scalar >::CostData = CostDataAbstractTpl<Scalar> |
Definition at line 16 of file cost-abstract.hpp.
using aligator::CostAbstractTpl< _Scalar >::Manifold = ManifoldAbstractTpl<Scalar> |
Definition at line 17 of file cost-abstract.hpp.
|
inline |
Definition at line 27 of file cost-abstract.hpp.
|
virtualdefault |
aligator::CostAbstractTpl< _Scalar >::ALIGATOR_DYNAMIC_TYPEDEFS | ( | Scalar | ) |
|
inline |
Definition at line 24 of file cost-abstract.hpp.
|
inline |
Definition at line 25 of file cost-abstract.hpp.
|
pure virtual |
Evaluate the cost function.
Implemented in aligator::ConstantCostTpl< _Scalar >, aligator::compat::croc::CrocCostModelWrapperTpl< _Scalar >, aligator::DirectSumCostTpl< _Scalar >, aligator::ProximalPenaltyTpl< _Scalar >, aligator::QuadraticCostTpl< _Scalar >, aligator::CostStackTpl< _Scalar >, aligator::QuadraticResidualCostTpl< _Scalar >, aligator::QuadraticResidualCostTpl< Scalar >, aligator::autodiff::CostFiniteDifferenceHelper< Scalar >, and aligator::LogResidualCostTpl< Scalar >.
|
pure virtual |
Compute the cost gradients \((\ell_x, \ell_u)\).
Implemented in aligator::ConstantCostTpl< _Scalar >, aligator::QuadraticCostTpl< _Scalar >, aligator::compat::croc::CrocCostModelWrapperTpl< _Scalar >, aligator::DirectSumCostTpl< _Scalar >, aligator::ProximalPenaltyTpl< _Scalar >, aligator::CostStackTpl< _Scalar >, aligator::QuadraticResidualCostTpl< _Scalar >, aligator::QuadraticResidualCostTpl< Scalar >, aligator::autodiff::CostFiniteDifferenceHelper< Scalar >, and aligator::LogResidualCostTpl< Scalar >.
|
pure virtual |
Compute the cost Hessians \((\ell_{ij})_{i,j \in \{x,u\}}\).
Implemented in aligator::QuadraticCostTpl< _Scalar >, aligator::autodiff::CostFiniteDifferenceHelper< Scalar >, aligator::ConstantCostTpl< _Scalar >, aligator::ProximalPenaltyTpl< _Scalar >, aligator::LogResidualCostTpl< Scalar >, aligator::compat::croc::CrocCostModelWrapperTpl< _Scalar >, aligator::DirectSumCostTpl< _Scalar >, aligator::CostStackTpl< _Scalar >, aligator::QuadraticResidualCostTpl< _Scalar >, and aligator::QuadraticResidualCostTpl< Scalar >.
|
inlinevirtual |
Reimplemented in aligator::compat::croc::CrocCostModelWrapperTpl< _Scalar >, aligator::ProximalPenaltyTpl< _Scalar >, aligator::LogResidualCostTpl< Scalar >, aligator::QuadraticCostTpl< _Scalar >, aligator::QuadraticResidualCostTpl< _Scalar >, aligator::QuadraticResidualCostTpl< Scalar >, aligator::CostStackTpl< _Scalar >, aligator::autodiff::CostFiniteDifferenceHelper< Scalar >, aligator::ConstantCostTpl< _Scalar >, and aligator::DirectSumCostTpl< _Scalar >.
Definition at line 43 of file cost-abstract.hpp.
shared_ptr<Manifold> aligator::CostAbstractTpl< _Scalar >::space |
State dimension.
Definition at line 20 of file cost-abstract.hpp.
int aligator::CostAbstractTpl< _Scalar >::nu |
Control dimension.
Definition at line 22 of file cost-abstract.hpp.