Nonlinear Objective Function Splatting

JuMP doesn’t support second-derivative information for multivariate user-defined functions (docs: https://jump.dev/JuMP.jl/stable/nlp/#User-defined-Functions-1).

You can see this by comparing the number of non-zero elements in the Lagrangian Hessian of approach 1:

-------------------------1-------------------------
This is Ipopt version 3.13.2, running with linear solver mumps.
NOTE: Other linear solvers might be more efficient (see Ipopt documentation).

Number of nonzeros in equality constraint Jacobian...:    15185
Number of nonzeros in inequality constraint Jacobian.:        0
Number of nonzeros in Lagrangian Hessian.............:        0

and approach 4:

-------------------------4-------------------------
This is Ipopt version 3.13.2, running with linear solver mumps.
NOTE: Other linear solvers might be more efficient (see Ipopt documentation).

Number of nonzeros in equality constraint Jacobian...:    15185
Number of nonzeros in inequality constraint Jacobian.:        0
Number of nonzeros in Lagrangian Hessian.............:    45544
2 Likes