[SoPlex](https://soplex.zib.de/) is an optimization package for solving
[linear programming](https://en.wikipedia.org/wiki/Linear_programming)
problems (LPs) based on an advanced implementation of the primal and dual
revised [simplex algorithm](https://en.wikipedia.org/wiki/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:
- presolving, scaling, exploitation of sparsity, hot-starting from any regular
basis,
- column- and row-oriented form of the simplex algorithm,
- an object-oriented software design written in C++,
- a compile-time option to use 80bit extended ("quad") precision for
numerically difficult LPs,
- an LP iterative refinement procedure to compute high-precision solution, and
- routines for an exact rational
[LU factorization](https://en.wikipedia.org/wiki/LU_decomposition) and
continued fraction approximations in order to compute exact solutions.
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](https://scipopt.org/).

Jerry James committed 3 months ago

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:

- presolving, scaling, exploitation of sparsity, hot-starting from any regular basis,
- column- and row-oriented form of the simplex algorithm,
- an object-oriented software design written in C++,
- a compile-time option to use 80bit extended ("quad") precision for numerically difficult LPs,
- an LP iterative refinement procedure to compute high-precision solution, and
- routines for an exact rational LU factorization and continued fraction approximations in order to compute exact solutions.

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.