I am looking for a C++ library, and I am dealing with convex objective and constraint functions.
Asked
Active
Viewed 1.8k times
22
-
Most LP solvers have their own way of defining problem sets. Programmatic interfaces for it is mostly sugar coating. – Ritesh M Nayak Dec 30 '09 at 07:00
-
I am using cvxopt, and to install I just downloaded the precompiled libraries from http://www.lfd.uci.edu/~gohlke/pythonlibs/#cvxopt, then did pip install (downloaded wheel), then made sure to import numpy before using it. – Phylliida Nov 06 '15 at 21:55
-
@Phylliida: Does CVXOPT have a C++ version/interface? – Hans Jan 22 '21 at 23:25
3 Answers
12
I am guessing your problem is non-linear. Where i work, we use SNOPT, Ipopt and another proprietary solver (not for sale). We have also tried and heard good things about Knitro.
As long as your problem is convex, all these solvers work well.
They all have their own API, but they all ask for the same information : values, first and second derivatives.

Benoît
- 16,798
- 8
- 46
- 66
1
From what I know, the CPLEX solver is the best convex optimization solver. Its the state of the art in LP solvers. Does convex optimization really well. While looking for it, I see that its IBM's software now. You can find it here : http://www-01.ibm.com/software/integration/optimization/cplex/

Ritesh M Nayak
- 8,001
- 14
- 49
- 78
-
You can find other open source solvers and their performance benchmarks here: http://plato.asu.edu/ftp/lpfree.html Also, dont forget to check out http://code.msdn.microsoft.com/solverfoundation – Ritesh M Nayak Dec 30 '09 at 06:59
-
-
cplex solves linearly or quadratically constrained convex problems. It's very fast, but it doesn't handle general convex problems. – David Nehme Nov 30 '10 at 01:14