Version 6 (modified by pbelotti, 12 years ago) (diff)


Couenne, an exact solver for nonconvex MINLPs

Couenne (Convex Over and Under ENvelopes for Nonlinear Estimation) is a branch&bound algorithm to solve Mixed-Integer Nonlinear Programming (MINLP) problems:

The purpose of Couenne is to find global optima of nonconvex MINLPs. Couenne implements linearization, bound reduction, and sophisticated branching methods within a Branch&Bound framework. Its main components are:

  • an expression library;
  • separation of linearization cuts;
  • branching rules;
  • bound tightening methods.

It is distributed on Coin-OR ( under the CPL (Common Public License). The CPL is a license approved by the OSI (Open Source Initiative), thus Couenne is OSI Certified Open Source Software.

Download, installation and usage

Couenne is found on the COIN-OR project page. It can be downloaded as follows:

svn co Couenne

Configuring and building Couenne is easy: just run the two commands


Once Couenne is correctly configured and built, the executable is in Couenne/src/main/couenne. After issuing the

make install

command, it can be run as follows:

couenne <>

specifying a stub (.nl) as an input. Stub files can be generated from AMPL, for instance.

You may specify a set of options to tweak the performance of Couenne.

Couenne is maintained by Pietro Belotti (belotti@…).

Web page:

Dependencies: CoinUtils?, Cbc, Cgl, Clp, Ipopt, Osi (from Coin-OR), ASL (Ampl Solver Library, see

External resources: Coin-OR, Common Public License.

Improve this page, report a bug, contribute to Couenne

As an open-source code, contributions to Couenne are welcome. To submit a contribution to Couenne, please follow the COIN-OR guidelines.

The preferred way to report a bug is to use the ticket system. To report a bug using this system:

  1. Register and login,
  2. Report a bug.

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. First register and login then 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.



This project was initiated in 2006 within a collaboration between IBM and Carnegie Mellon University, aimed at developing algorithms for MINLP.

Credit should be given to our colleagues in this collaboration: Andreas, Pierre, and Stefan, who developed part of Couenne, and Larry T. Biegler, Gérard Cornuéjols, Ignacio E. Grossmann, Jon Lee, and François Margot.

Each has contributed an essential part of the development of Couenne.