Bonmin (Basic Open-source Nonlinear Mixed INteger programming) is an
experimental open-source C++ code for solving general MINLP (Mixed Integer
NonLinear Programming) problems of the form:
min f(x)
s.t. g_L <= g(x) <= g_U
x_L <= x <= x_U
x_i in Z for all i in I and,
x_i in R for all i not in I.
where f(x): R^n --> R, g(x): R^n --> R^m are twice continuously differentiable
functions and I is a subset of {1,..,n}.
Bonmin features several algorithms
* B-BB is a NLP-based branch-and-bound algorithm,
* B-OA is an outer-approximation decomposition algorithm,
* B-QG is an implementation of Quesada and Grossmann's branch-and-cut
algorithm,
* B-Hyb is a hybrid outer-approximation based branch-and-cut algorithm.
The algorithms in Bonmin are exact when the functions f and g are convex;
in the case where f or g or both are non-convex they are heuristics.