proxsuite-nlp
0.10.0
A primal-dual augmented Lagrangian-type solver for nonlinear programming on manifolds.
|
Equality constraints \(c(x) = 0\). More...
#include <proxsuite-nlp/modelling/constraints/equality-constraint.hpp>
Public Types | |
using | Scalar = _Scalar |
using | Base = ConstraintSetTpl<Scalar> |
using | ActiveType = typename Base::ActiveType |
Public Types inherited from proxsuite::nlp::ConstraintSetTpl< _Scalar > | |
using | Scalar |
using | ActiveType |
Public Member Functions | |
EqualityConstraintTpl ()=default | |
EqualityConstraintTpl (const EqualityConstraintTpl &)=default | |
EqualityConstraintTpl & | operator= (const EqualityConstraintTpl &)=default |
EqualityConstraintTpl (EqualityConstraintTpl &&)=default | |
EqualityConstraintTpl & | operator= (EqualityConstraintTpl &&)=default |
bool | disableGaussNewton () const |
void | projection (const ConstVectorRef &, VectorRef zout) const |
Compute projection of variable z onto the constraint set. | |
void | normalConeProjection (const ConstVectorRef &z, VectorRef zout) const |
Compute projection of z onto the normal cone to the set. The default implementation is just \( \mathrm{id} - P\). | |
void | applyProjectionJacobian (const ConstVectorRef &, MatrixRef Jout) const |
Apply a jacobian of the projection/proximal operator to a matrix. | |
void | applyNormalConeProjectionJacobian (const ConstVectorRef &, MatrixRef) const |
Apply the jacobian of the projection on the normal cone. | |
void | computeActiveSet (const ConstVectorRef &, Eigen::Ref< ActiveType > out) const |
Public Member Functions inherited from proxsuite::nlp::ConstraintSetTpl< _Scalar > | |
ConstraintSetTpl ()=default | |
virtual _Scalar | evaluate (const ConstVectorRef &) 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 |
Public Attributes | |
Scalar | |
Public Attributes inherited from proxsuite::nlp::ConstraintSetTpl< _Scalar > | |
Scalar | |
Additional Inherited Members | |
Protected Attributes inherited from proxsuite::nlp::ConstraintSetTpl< _Scalar > | |
_Scalar | mu_ |
_Scalar | mu_inv_ |
Equality constraints \(c(x) = 0\).
This class implements the set associated with equality constraints \( c(x) = 0 \), where \(c : \calX \to \RR^p\) is a residual function.
Definition at line 18 of file equality-constraint.hpp.
using proxsuite::nlp::EqualityConstraintTpl< _Scalar >::Scalar = _Scalar |
Definition at line 20 of file equality-constraint.hpp.
using proxsuite::nlp::EqualityConstraintTpl< _Scalar >::Base = ConstraintSetTpl<Scalar> |
Definition at line 29 of file equality-constraint.hpp.
using proxsuite::nlp::EqualityConstraintTpl< _Scalar >::ActiveType = typename Base::ActiveType |
Definition at line 30 of file equality-constraint.hpp.
|
default |
|
default |
|
default |
|
default |
|
default |
|
inlinevirtual |
Do not use the vector-Hessian product in the Hessian for Gauss Newton.
Reimplemented from proxsuite::nlp::ConstraintSetTpl< _Scalar >.
Definition at line 32 of file equality-constraint.hpp.
|
inlinevirtual |
Compute projection of variable z
onto the constraint set.
[in] | z | Input vector |
[out] | zout | Output projection |
Implements proxsuite::nlp::ConstraintSetTpl< _Scalar >.
Definition at line 34 of file equality-constraint.hpp.
|
inlinevirtual |
Compute projection of z
onto the normal cone to the set. The default implementation is just \( \mathrm{id} - P\).
[in] | z | Input vector |
[out] | zout | Output projection on the normal projection |
Implements proxsuite::nlp::ConstraintSetTpl< _Scalar >.
Definition at line 38 of file equality-constraint.hpp.
|
inlinevirtual |
Apply a jacobian of the projection/proximal operator to a matrix.
This carries out the product \(PJ\), where \( P \in\partial_B\prox(z)\).
[in] | z | Input vector (multiplier estimate) |
[out] | Jout | Output Jacobian matrix, which will be modifed in-place and returned. |
Reimplemented from proxsuite::nlp::ConstraintSetTpl< _Scalar >.
Definition at line 43 of file equality-constraint.hpp.
|
inlinevirtual |
Apply the jacobian of the projection on the normal cone.
[in] | z | Input vector |
[out] | Jout | Output Jacobian matrix of shape \((nr, ndx)\), which will be modified in place. The modification should be a row-wise operation. |
Reimplemented from proxsuite::nlp::ConstraintSetTpl< _Scalar >.
Definition at line 48 of file equality-constraint.hpp.
|
inlinevirtual |
Compute the active set of the constraint. Active means the Jacobian of the proximal operator is nonzero.
Implements proxsuite::nlp::ConstraintSetTpl< _Scalar >.
Definition at line 53 of file equality-constraint.hpp.
proxsuite::nlp::EqualityConstraintTpl< _Scalar >::Scalar |
Definition at line 21 of file equality-constraint.hpp.