/CSIP

Reduced and simplified C interface to SCIP

Primary LanguageCMIT LicenseMIT

CSIP

Join the chat at https://gitter.im/leethargo/CSIP

An opinionated interface to the SCIP solver in the C language. A restricted subset of the features is chosen, with the goal of making SCIP more accessible to novice users and other programming languages.

The following constraint types are supported: linear, quadratic, SOS1 and SOS2.

Furthermore, users can implement a lazy constraint by implementing a single callback function.

Installation

SCIP and SoPlex

CSIP depends on the SCIP Optimization Suite.

Download and extract the source files, then build the shared library (containing SCIP and SoPlex) with

make SHARED=true GMP=false READLINE=false ZLIB=false scipoptlib

which will produce a file libscipopt.so.

To build CSIP, set the environment variable SCIPOPTDIR to point to the directory that contains the scipoptsuite sources. CSIP needs the library in ${SCIPOPTDIR}/lib/scipoptlib.so and the C header files in ${SCIPOPTDIR}/scip-*/src/.

CSIP

Run make to build CSIP, which will produce a shared library libcsip.so.

Tests

To compile and execute the tests, run make test.