Are you aware of a fast solver (open source or commercial) for convex NLPs that is faster than IPOPT? I'm interested in problems in the 50K+ variable range, both dense and sparse. Ideally, it would be a solver dedicated to solving convex NLPs.
Are you formulating your model with nonlinear expressions that just happen to be convex?
Or can you provide conic normal forms, maybe using a modeling tool based on displicined convex programming? In that case, some solvers might be able to exploit that! Disciplined geometric programming is another way to teach solvers how to exploit convexity in nonlinear situations.
MOSEK is a commercial solver in that field.
SCS, ECOS and COSMO are some open-source packages.
UPDATE: Added a reference to DCP.
-
$\begingroup$ I am generating functions designed to be convex automatically. The functional form can be anything (i.e., general non-linear). $\endgroup$ – Nikos Kazazakis Oct 3 '19 at 16:39
-
3$\begingroup$ Mosek can only used if the problem can be stated on conic form. $\endgroup$ – ErlingMOSEK Oct 4 '19 at 10:02
-
1$\begingroup$ For now, it is believed that all convex programs can be reformulated as conic ones (which is why Mosek got rid of general convex solver in 9.0). Couldn't you generate conic formulations in your case? Maybe using DCP? $\endgroup$ – dourouc05 Oct 4 '19 at 14:14
You may want to try out the NLP solver Knitro, which, despite being commercial, is faster than Ipopt: http://plato.asu.edu/ftp/ampl-nlp.html
-
6