wiki:WikiStart

Version 16 (modified by robinlh, 13 years ago) (diff)

for Yan Xu

COIN-OR Cut Generation Library

The COIN-OR Cut Generation Library (CGL) is a collection of cutting planes, or "cut generators" that can be used with other COIN-OR native tools that make use of cuts.

Language: C++.
License: CPL.
Mailing list: coin-discuss@…
Project Manager: Robin Lougee-Heimer.

Each cut generator is it's own project, with it's own project manager.

CGL FAQs: <under construction - your input welcome!>

Q: What is CGL?
A: CGL is a Cut Generator Library which will include the standard cuts from the literature and provide a starting point for more advanced and problem specific cuts.

Q: What cut generators are currently in Cgl?
A: At the moment the following cut generators: [[BR]

The knapsack cover cut generator has a variety of methods for finding and lifting covers. You can re-use the various cover-finding methods and cover-lifting methods to build your own variations of this classic cut.

Q: What platforms does CGL run on?
A: CGL has been tested on:

  • AIX V4.3 using g++ V2.95.2
  • Windows using Microsoft Visual C++ V6
  • Windows using the Cygwin toolchain
  • Linux using g++ V2.95.2.
  • Solaris (SunOS 5.6 and 5.8) using g++ V2.95.2


Q: What LP and MIP solvers does CGL use?
A: CGL uses OSI to access a solver. It does not directly call a solver.

Download and Installation Instructions

Cgl is written in C++ and is released as open source code under the Common Public License (CPL). It is available from the COIN-OR initiative.

You can obtain the Osi source code either via subversion or in form of nightly generated tarballs. The recommended method is to use subversion because it makes it easier to obtain updates. The following commands may be used to obtain and build Cbc from the source code using subversion:

  1. svn co https://www.coin-or.org/svn/Cgl/trunk coin-Cgl
  2. cd coin-Cgl
  3. ./configure -C
  4. make
  5. make test
  6. make install

Step 1 issues the subversion command to obtain the source code. Alternatively one can obtain the source code from the tarball directory, and down loading a file of the form Cgl_YYYYMMMDD.tgz.

Step 3 runs a configure script that generates the make file.

Step 4 builds the Cgl library and executable program.

Step 5 builds and runs the Cgl unit test program.

Step 6 Installs libraries, executables and header files in directories coin-Cgl/lib, coin-Cgl/bin and coin-Cgl/include.

Hints and Tricks

Got one? Add it here.