Cartesian product of multiple constraint sets. This class makes computing multipliers and Jacobian matrix projections more convenient.
More...
|
| | ALIGATOR_DYNAMIC_TYPEDEFS (Scalar) |
| |
| | ConstraintSetProductTpl (const std::vector< xyz::polymorphic< Base > > components, const std::vector< Eigen::Index > &blockSizes) |
| |
| | ConstraintSetProductTpl (const ConstraintSetProductTpl &)=default |
| |
| ConstraintSetProductTpl & | operator= (const ConstraintSetProductTpl &)=default |
| |
| | ConstraintSetProductTpl (ConstraintSetProductTpl &&)=default |
| |
| ConstraintSetProductTpl & | operator= (ConstraintSetProductTpl &&)=default |
| |
| Scalar | evaluate (const ConstVectorRef &zproj) const override |
| |
| void | projection (const ConstVectorRef &z, VectorRef zout) const override |
| | Compute projection of variable z onto the constraint set.
|
| |
| void | normalConeProjection (const ConstVectorRef &z, VectorRef zout) const override |
| | Compute projection of z onto the normal cone to the set. The default implementation is just \( \mathrm{id} - P\).
|
| |
| void | applyProjectionJacobian (const ConstVectorRef &z, MatrixRef Jout) const override |
| | Apply a jacobian of the projection/proximal operator to a matrix.
|
| |
| void | applyNormalConeProjectionJacobian (const ConstVectorRef &z, MatrixRef Jout) const override |
| | Apply the jacobian of the projection on the normal cone.
|
| |
| void | computeActiveSet (const ConstVectorRef &z, Eigen::Ref< ActiveType > out) const override |
| |
| const std::vector< xyz::polymorphic< Base > > & | components () const |
| |
| const std::vector< Eigen::Index > & | blockSizes () const |
| |
| | ALIGATOR_DYNAMIC_TYPEDEFS (Scalar) |
| |
| | ConstraintSetTpl ()=default |
| |
| virtual bool | disableGaussNewton () const |
| |
| void | setProxParameter (const Scalar mu) const |
| | Update proximal parameter; this applies to when this class is a proximal operator that isn't a projection (e.g. \( \ell_1 \)).
|
| |
| virtual | ~ConstraintSetTpl ()=default |
| |
| bool | operator== (const ConstraintSetTpl< Scalar > &rhs) |
| |
| Scalar | evaluateMoreauEnvelope (const ConstVectorRef &zin, const ConstVectorRef &zproj) const |
| | Evaluate the Moreau envelope with parameter mu for the given contraint set or nonsmooth penalty \(g\) at point zin.
|
| |
| Scalar | computeMoreauEnvelope (const ConstVectorRef &zin, VectorRef zprojout) const |
| | Evaluate the Moreau envelope with parameter mu for the given contraint set or nonsmooth penalty \(g\) at point zin. This variant evaluates the prox map.
|
| |
| Scalar | mu () const |
| |
| Scalar | mu_inv () const |
| |
| | ALIGATOR_DYNAMIC_TYPEDEFS (Scalar) |
| |
| | ConstraintSetTpl ()=default |
| |
| virtual bool | disableGaussNewton () const |
| |
| void | setProxParameter (const Scalar mu) const |
| | Update proximal parameter; this applies to when this class is a proximal operator that isn't a projection (e.g. \( \ell_1 \)).
|
| |
| virtual | ~ConstraintSetTpl ()=default |
| |
| bool | operator== (const ConstraintSetTpl< Scalar > &rhs) |
| |
| Scalar | evaluateMoreauEnvelope (const ConstVectorRef &zin, const ConstVectorRef &zproj) const |
| | Evaluate the Moreau envelope with parameter mu for the given contraint set or nonsmooth penalty \(g\) at point zin.
|
| |
| Scalar | computeMoreauEnvelope (const ConstVectorRef &zin, VectorRef zprojout) const |
| | Evaluate the Moreau envelope with parameter mu for the given contraint set or nonsmooth penalty \(g\) at point zin. This variant evaluates the prox map.
|
| |
| Scalar | mu () const |
| |
| Scalar | mu_inv () const |
| |
template<typename
Scalar>
struct aligator::ConstraintSetProductTpl< Scalar >
Cartesian product of multiple constraint sets. This class makes computing multipliers and Jacobian matrix projections more convenient.
- Warning
- This struct contains a non-owning vector of its component sets.
- Todo
- Switch to using our aligator::BlkMatrix template class.
Definition at line 41 of file constraint-set-product.hpp.