Skip to content

Simplify handling of linear and quadratic derivatives for nonlinear solvers #1397

Closed
@blegat

Description

@blegat

The wrappers of nonlinear solvers like Ipopt and NLopt are quite complicated because the solvers only expect gradient, jacobian, hessian callbacks and they also support linear and quadratic objective and constraints.
We cannot rewrite them with bridges since bridges do not play well with the NLPBlock.
This will be resolved by #846 but in the short term, it would be good to have a solution as well.
We could create an MOI layer (that would be a copy-paste of part of the Ipopt wrapper basically) that would do the transformation.
Now how do we add this MOI layer in JuMP for nonlinear solvers ?
Similarly to jump-dev/JuMP.jl#2610, the MOI layer would be automatically added by JuMP if it detects that a linear/quadratic constraints is not supported even when adding bridges but the solver supports NLPBlock.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions