SoPlex is an optimization package for solving linear programming problems (LPs) based on an advanced implementation of the primal and dual revised simplex algorithm. It provides special support for the exact solution of LPs with rational input data. It can be used as a standalone solver reading MPS or LP format files via a command line interface as well as embedded into other programs via a C++ class library. The main features of SoPlex are:
SoPlex has been used in numerous research and industry projects and is the standard LP solver linked to the mixed-integer nonlinear programming and constraint integer programming solver SCIP.
|Aug/2023||Version 6.0.4 released as part of the SCIP Optimization Suite 8.0.4 CHANGELOG|
|Dec/2022||Version 6.0.3 released as part of the SCIP Optimization Suite 8.0.3 CHANGELOG|
|04/Nov/2022||SoPlex license update
Starting with the next release SoPlex will be licensed under the Apache 2.0 License.
|06/Oct/2022||Version 6.0.2 released as part of the SCIP Optimization Suite 8.0.2 CHANGELOG|
|Jun/2022||Version 6.0.1 released as part of the SCIP Optimization Suite 8.0.1 CHANGELOG|
|28/Jan/2022||Version 6.0.0 released as part of the SCIP Optimization Suite 8.0.0 CHANGELOG|
|15/Dec/2021||Beta version 6.0.0 released|
|26/May/2021||Public Mirrors on GitHub
The two main development branches of SCIP, SoPlex and PaPILO are now publicly mirrored on GitHub.
|13/Jan/2021||Version 5.0.2 released. CHANGELOG|
|19/Dec/2020||Version 5.0.2 beta released.|
|23/Jun/2020||Version 5.0.1 released. CHANGELOG|
|30/Mar/2020||Version 5.0.0 released. CHANGELOG|
|10/Jul/2019||Version 4.0.2 released. CHANGELOG|
|28/Jun/2019||Beta of Version 4.0.2 released.|
|10/Jan/2019||Version 4.0.1 released. CHANGELOG|
|02/Jul/2018||Version 4.0.0 released. CHANGELOG|
|05/Feb/2018||Version 3.1.1 released. CHANGELOG|
|21/Dec/2017||Version 3.1.0 released. Release Notes|
|01/Sep/2017||Version 3.0.1 released. Release Notes|
|09/Mar/2017||Version 3.0.0 released. Release Notes|
|29/Feb/2016||Version 2.2.1 released. Release Notes|
|01/Jul/2015||Version 2.2.0 released. Release Notes|
|23/Mar/2015||Binaries for Windows available for download.|
|18/Dec/2014||Version 2.0.1 released. Release Notes|
|07/Mar/2014||Binaries for Linux and Windows available for download.|
|27/Feb/2014||Version 2.0.0 released. Release Notes|
|16/Oct/2013||Version 1.7.2 released. Release Notes|
|04/Jan/2013||Version 1.7.1 released. Release Notes|
|31/Jul/2012||Version 1.7.0 released. Release Notes|
|28/Oct/2011||Version 1.6.0 released. Release Notes|
|30/Sep/2010||Version 1.5.0 released. Release Notes|
|06/Aug/2010||Patch 1.4.2c available for download providing an additional interface method to set a starting basis in the SoPlex class.|
|19/Jan/2010||Patch 1.4.2b available for download. Please update if you encounter problems in combination with older compiler versions.|
|12/Jun/2009||Patch 1.4.2a available for download. Please update.|
|11/Sep/2009||Version 1.4.2 released. Release Notes|
|20/Feb/2009||Version 1.4.1 released. Release Notes|
|30/Sep/2008||Version 1.4.0 released. Release Notes|
|27/Aug/2007||Version 1.3.2 released. Release Notes|
|17/Nov/2006||Version 1.3.1 released. Release Notes|
|03/Feb/2006||Version 1.3.0 released. Release Notes|
|10/Apr/2002||Version 1.2.1 released. Release Notes|
|14/Jan/2002||Version 1.2.0 released. Release Notes|
Since November 4, SoPlex is licensed under the Apache 2.0 License.
Releases up to and including Version 6.0.2 remain under the ZIB Academic License as indicated by the files contained in the releases. The new license applies from Version 6.0.3 onwards.
Any publication for which SoPlex is used must include an acknowledgement and a reference to one of the following articles, depending on the version used:
The SCIP Optimization Suite 7.0
Gerald Gamrath, Daniel Anderson, Ksenia Bestuzheva, Wei-Kun Chen, Leon Eifler, Maxim Gasse, Patrick Gemander, Ambros Gleixner, Leona Gottwald, Katrin Halbig, Gregor Hendel, Christopher Hojny, Thorsten Koch, Pierre Le Bodic, Stephen J. Maher, Frederic Matter, Matthias Miltenberger, Erik Mühmer, Benjamin Müller, Marc E. Pfetsch, Franziska Schlösser, Felipe Serrano, Shinano Yuji, Christine Tawfik, Stefan Vigerske, Fabian Wegscheider, Dieter Weninger, Jakob Witzig
Available at Optimization Online and as ZIB-Report 20-10, March 2020
The SCIP Optimization Suite 6.0
Ambros Gleixner, Michael Bastubbe, Leon Eifler, Tristan Gally, Gerald Gamrath, Robert Lion Gottwald, Gregor Hendel, Christopher Hojny, Thorsten Koch, Marco E. Lübbecke, Stephen J. Maher, Matthias Miltenberger, Benjamin Müller, Marc E. Pfetsch, Christian Puchert, Daniel Rehfeldt, Franziska Schlösser, Christoph Schubert, Felipe Serrano, Yuji Shinano, Jan Merlin Viernickel, Matthias Walter, Fabian Wegscheider, Jonas T. Witt, Jakob Witzig
Available at Optimization Online and as ZIB-Report 18-26, July 2018
The SCIP Optimization Suite 5.0
Ambros Gleixner, Leon Eifler, Tristan Gally, Gerald Gamrath, Patrick Gemander, Robert Lion Gottwald, Gregor Hendel, Christopher Hojny, Thorsten Koch, Matthias Miltenberger, Benjamin Müller, Marc E. Pfetsch, Christian Puchert, Daniel Rehfeldt, Franziska Schlösser, Felipe Serrano, Yuji Shinano, Jan Merlin Viernickel, Stefan Vigerske, Dieter Weninger, Jonas T. Witt, Jakob Witzig
ZIB-Report 17-61, Zuse Institute Berlin, December 2017
The SCIP Optimization Suite 4.0
Stephen J. Maher, Tobias Fischer, Tristan Gally, Gerald Gamrath, Ambros Gleixner, Robert Lion Gottwald, Gregor Hendel, Thorsten Koch, Marco E. Lübbecke, Matthias Miltenberger, Benjamin Müller, Marc E. Pfetsch, Christian Puchert, Daniel Rehfeldt, Sebastian Schenker, Robert Schwarz, Felipe Serrano, Yuji Shinano, Dieter Weninger, Jonas T. Witt, Jakob Witzig
ZIB-Report 17-12, Zuse Institute Berlin, March 2017
The SCIP Optimization Suite 3.2
Gerald Gamrath, Tobias Fischer, Tristan Gally, Ambros M. Gleixner, Gregor Hendel, Thorsten Koch, Stephen J. Maher, Matthias Miltenberger, Benjamin Müller, Marc E. Pfetsch, Christian Puchert, Daniel Rehfeldt, Sebastian Schenker, Robert Schwarz, Felipe Serrano, Yuji Shinano, Stefan Vigerske, Dieter Weninger, Michael Winkler, Jonas T. Witt, Jakob Witzig
ZIB-Report 15-60, Zuse Institute Berlin, February 2016
If you use SoPlex as an exact rational LP solver, please cite the references
Linear programming using limited-precision oracles
Ambros M. Gleixner, Daniel E. Steffy
Math. Program. 183, 525–554, 2020,
preprint available as ZIB-Report 19-57
Combining Precision Boosting with LP Iterative Refinement for Exact Linear Optimization
Leon Eifler, Jules Nicolas-Thouvenin, Ambros M. Gleixner
under review, preprint available as ZIB-Report 23-26
If you use conda, you can install soplex using the conda packages.
SoPlex is implemented in C++. The code should be compliant with the current ANSI standard. With a modern C++ compiler you should be able to compile the code on any platform.
More details can be found in the Doxygen documentation.
SoPlex is also available on the NEOS Server, where you can post your model in LP or MPS format to solve it.
|Sebastian Orlowski||now at atesio|
|Roland Wunderling||former main developer - now at IBM|
© 2023 by Zuse Institute Berlin (ZIB).
For the imprint and privacy statement we refer to the Imprint of ZIB with the following additions and modifications:
The sharing and storage of this information is necessary due to the contract between ZIB and I2DAMO GmbH that allows I2DAMO GmbH to issue commercial SoPlex licenses. Furthermore the number of SoPlex downloads is tracked and used to generate statistics about the downloads and to generate the world map of download locations. The personal information is used to distinguish the number of downloads from the number of users per year, that might download more than one version or archive. In addition to the privacy statements of ZIB and I2DAMO GmbH we hereby declare that your name and affiliation recorded for the SoPlex download