-
Notifications
You must be signed in to change notification settings - Fork 80
Open
Description
I've been attempting to use SCIP's exact mode to solve some ILP instances with very large coefficients. However, even with exact/enabled = TRUE
, there seems to be some rounding in the objective function that causes issues when the coefficients are more than ~20 digits. As a minimal example, this instance returns SCIP Status: problem is solved [infeasible]
, even though x = 1
is quite clearly a feasible solution:
$ cat scip.set
exact/enable = TRUE
$ cat problem.lp
Minimize
obj: 99999999999999983617 x
Subject To
cond: x >= 1
General
x
End
$ scip -f problem.lp
SCIP version 10.0.0 [precision: 8 byte] [memory: block] [mode: optimized] [LP solver: SoPlex 7.1.4] [GitHash: ec1ecceb59]
Copyright (c) 2002-2025 Zuse Institute Berlin (ZIB)
External libraries:
Readline 8.2 GNU library for command line editing (gnu.org/s/readline)
SoPlex 7.1.4 Linear programming solver developed at Zuse Institute Berlin (soplex.zib.de) [GitHash: 7c53d552]
CppAD 20180000.0 Algorithmic Differentiation of C++ algorithms developed by B. Bell (github.com/coin-or/CppAD)
ZLIB 1.3 General purpose compression library by J. Gailly and M. Adler (zlib.net)
MPFR 4.2.1 GNU Multiple Precision Floating-Point Reliable Library (mpfr.org)
Boost 1.83.0 Boost C++ Libraries (boost.org)
TinyCThread 1.2 small portable implementation of the C11 threads API (tinycthread.github.io)
GMP 6.3.0 GNU Multiple Precision Arithmetic Library developed by T. Granlund (gmplib.org)
ZIMPL 3.6.2 Zuse Institute Mathematical Programming Language developed by T. Koch (zimpl.zib.de)
AMPL/MP 4.0.0 AMPL .nl file reader library (github.com/ampl/mp)
PaPILO 2.4.2 parallel presolve for integer and linear optimization (github.com/scipopt/papilo) (built with TBB) [GitHash: 4b399c4c]
Nauty 2.8.8 Computing Graph Automorphism Groups by Brendan D. McKay (users.cecs.anu.edu.au/~bdm/nauty)
sassy 2.0 Symmetry preprocessor by Markus Anders (github.com/markusa4/sassy)
[...]
(See stdout.txt.) I'm not entirely sure if there's some other parameter I have to set to "actually make it exact", or if SCIP is simply the wrong tool for the job here.
Metadata
Metadata
Assignees
Labels
No labels