The BONMIN package consists of the source code for the BONMIN project but also
source code from other COIN-OR projects:
When downloading the BONMIN package you will download the source code for all
these and libraries of problems to test the codes.
Before downloading BONMIN you need to know which branch of Bonmin you want
to download. In particular you need to know if you want to download the latest
version from:
- the Stable branch, or from
- the Released branch.
These different version are made according to the guidelines of COIN-OR. The
interpretation of these guidelines for the Bonmin project is explained on the wiki
pages of Bonmin.
The main distinction between the Stable and Release branch is that a stable
version that we propose to download may evolve over time to include bug fixes while
a released version will never change. The released versions present an advantage in
particular if you want to make experiments which you want to be able to reproduce
the stable version presents the advantage that it is less work for you to update in the
event where we fix a bug.
The easiest way to obtain the released version is by downloading a compressed
archive from Bonmin archive directory.
The only way to obtain one of the stable versions is through subversion.
In Unix -like
environments, to download the latest stable version of Bonmin (1.8) in a
sub-directory, say Bonmin-1.8 issue the following command
svn co https://projects.coin-or.org/svn/Bonmin/stable/1.8 Bonmin-1.8
This copies all the necessary COIN-OR files to compile BONMIN to Bonmin-1.8. To
download BONMIN using svn on Windows, follow the instructions provided at
COIN-OR.
BONMIN needs a few external
packages which are not included in the
BONMIN package.
- Lapack (Linear Algebra PACKage)
- Blas (Basic Linear Algebra Subroutines)
- A sparse linear solver.
- Optionally ASL (the AMPL Solver Library), to be able to use
BONMIN from AMPL.
Since these third-party software modules are released under licenses that are
incompatible with the EPL, they cannot be included for distribution with
BONMIN from COIN-OR, but you will find scripts to help you download them in
the subdirectory ThirdParty of the BONMIN distribution. In most Linux
distributions and CYGWIN, Lapack and Blas are available as prebuild binary
packages in the distribution (and are probably already installed on your
machine).
Linear solvers are used by Ipopt. The most up-to-date information regarding the
supported linear solvers and how to install them is found in Section 2.2 of the Ipopt
manual.
Several options are available for linear solvers: MA27 from the Harwell Subroutine
Library (and optionally, but strongly recommended, MC19 to enable automatic
scaling in Ipopt), MA57 or Mumps. In our experiment MA27 and MA57
usually perform significantly better but they are freely available only for
non-commercial, academic use. Note that linear solvers can also take advantage of
Metis.