Since version 1.7, SoPlex implements an iterative refinement procedure on the level of linear programs, which allows for computing extended-precision solutions beyond the limits of standard floating-point arithmetic. It may be particularly helpful for numerically troublesome LPs and applications that require solutions within tight feasibility tolerances. Since version 2.1 this has been extended to compute exact rational solutions.
By default, SoPlex functions as a standard floating-point LP solver. In order to use SoPlex as an exact LP solver, you need to compile SoPlex with GMP support (default, see the INSTALL file) and change the following parameters from their default value:
real:feastol = 0
real:opttol = 0
int:solvemode = 2
int:syncmode = 1
int:readmode = 1(optional, activates exact parsing of input files)
int:checkmode = 2(optional, activates exact final check of feasibility and optimality at the command line)
See this page how to change parameters and the list of all SoPlex parameters for their detailed description. A settings file
exact.set for exact solving is provided in the directory
settings of the distribution. On the command line, this can be read with option
The mathematical background of the underlying methods is described in the papers
When using SoPlex as an exact LP solver, please cite the above papers.