Similar Software#
Alternate MIP Solvers (with Python interfaces)#
In the following we will give a list of other mixed-integer optimizers with available python interfaces. As each solver has its own set of problem classes that it can solve we will use a table with reference keys to summarize these problem classes.
Note
This table is by no means complete.
Note
SCIP can solve of all the below problem classes (and many more).
Key |
Feature |
|---|---|
LP |
Linear Programs |
MILP |
Mixed-Integer Linear Programs |
QP |
Quadratic Programs |
MIQP |
Mixed-Integer Quadratic Programs |
QCP |
Quadratically Constrained Programs |
MIQCP |
Mixed-Integer Quadratically Constrained Programs |
MINLP |
Mixed-Integer Nonlinear Programs |
PB |
Pseudo-Boolean Problems |
SOCP |
Second Order Cone Programming |
SDP |
Semidefinite Programming |
MISDP |
Mixed-Integer Semidefinite Programming |
Open Source#
Closed Source#
General Modelling Frameworks (Solver Agnostic)#
This list will contain general modelling frameworks that allow you to use swap out SCIP for other mixed-integer optimizers. While we recommend using PySCIPOpt for the many features it provides, which are for the most part not available via general modelling frameworks, if you want to simply use a mixed-integer optimizer then a general modelling framework allows you to swap out the solver in a single line. This is a big advantage if you are uncertain of the solver that you want to use, you believe the solver might change at some point, or you want to compare the performance of different solvers.
Software using PySCIPOpt#
This is software that is built on PySCIPOpt
PyGCGOpt: An extension of SCIP, using generic decompositions for solving MIPs
GeCO: Generators for Combinatorial Optimization
scip-routing: An exact VRPTW solver in Python
PySCIPOpt-ML: Python interface to automatically formulate Machine Learning models into Mixed-Integer Programs
SCIP Book: Mathematical Optimization: Solving Problems using SCIP and Python