The ZIB was founded by law as a statutory establishment and as a non-university research institute of the State of Berlin in 1984. In close interdisciplinary cooperation with the Berlin universities and scientific institutions Zuse Institute implements research and development in the field of information technology with a particular focus on application-oriented algorithmic mathematics and practical computer science. ZIB also provides high-performance computer capacity as an accompanying service as part of the Network of high performance computers in Northern Germany (Norddeutscher Verbund von Hoch- und Höchstleistungsrechnern (HLRN)).
Konrad Zuse, born in Berlin in 1910, is the namesake of the ZIB.
SCIP (Solving Constraint Integer Programs) is a mixed integer programming solver and a framework for branch and cut and branch and price, developed primarily at Zuse Institute Berlin. Unlike most commercial solvers, SCIP gives the user low-level control of and information about the solving process. Run as a standalone solver, it is one of the fastest non-commercial solvers for mixed integer programs.[1]
SCIP is implemented as Ccallable library.
For user plugins, C++ wrapper classes are provided.
The solver for the LP relaxations is not a native component of SCIP, an open LP interface is provided instead.
Currently supported LP solvers are CLP, CPLEX, MOSEK, SoPlex, and Xpress.
SCIP can be run on Linux, Mac, Sun, and Windows operating systems.
Prior versions of SCIP were distributed under a source-available license that allowed free academic use. Starting from version 8.0.3 the full suite was released under the Apache 2.0 license.[2]
Features
The design of SCIP is based on the notion of constraints. It supports about 20 constraint types for mixed-integer linear programming, mixed-integer nonlinear programming, mixed-integer all-quadratic programming and Pseudo-Boolean[3] optimization. It can also solve Steiner Trees and multi-objective optimization problems.[4][5]
Interfaces
There are several native interface libraries available for SCIP. SCIP can be accessed through the modeling system of GAMS. Interfaces to MATLAB and AMPL are available within the standard distribution. There are also currently externalized interfaces for Python, Java, Julia, and Rust.[6]