Version 17 (modified by jonlee, 13 years ago) (diff) |
---|

## Welcome to the Bonmin homepage

Bonmin (Basic Open-source Nonlinear Mixed INteger programming) is an 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^n for all i in I and, x_i in R^n for all i not in I and,

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 is distributed under the Common Public License (Cpl). The CPL is a license approved by the OSI (Open Source Initiative), thus Bonmin is OSI Certified Open Source Software.

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.

More information on Bonmin installation and usage can be found in the Bonmin User's Manual.

More information on the underlying algorithms in Bonmin can be found in: P. Bonami, L.T. Biegler, A.R. Conn, G. Cornuejols, I.E. Grossmann, C.D. Laird, J. Lee, A. Lodi, F. Margot, N.Sawaya and A. Waechter, An Algorithmic Framework for Convex Mixed Integer Nonlinear Programs by IBM Research Report RC23771, Oct. 2005.

### Download and Install

Bonmin is preferably downloaded by using subversion.

In Un*x environments, make a directory, say `Bonmin-dist` where you want to
download the code. Change to `Bonmin-dist`, and issue the following
command:

svn co svn://projects.coin-or.org/svn/Bonmin/trunk .

This copies all the necessary COIN-OR files to compile Bonmin to
`Bonmin-dist`.

### Obtain documentation

*As all Wiki pages, this page is editable, this means that you can
modify the contents of this page simply by using your
web-browser. Simply click on the "Edit this page" link at the bottom
of the page. WikiFormatting will give you a detailed description of
available Wiki formatting commands.*