Skip to content

Commit 106fe1a

Browse files
Merge branch '3927-fix-presolver-milp-applies-tolerances-in-exact-mode' into 'master'
Remove exact tolerances for "Presolver milp applies tolerances in exact mode" See merge request integer/scip!3869
2 parents 843b56f + 210df6d commit 106fe1a

File tree

1 file changed

+11
-3
lines changed

1 file changed

+11
-3
lines changed

src/scip/presol_milp.cpp

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -458,12 +458,20 @@ SCIP_RETCODE setupPresolve(
458458
if( data->enablesparsify )
459459
presolve.addPresolveMethod( uptr( new Sparsify<T>() ) );
460460

461-
/* set tolerances */
462-
presolve.getPresolveOptions().feastol = SCIPfeastol(scip);
463-
presolve.getPresolveOptions().epsilon = SCIPepsilon(scip);
461+
/* set numerical tolerances */
464462
#if PAPILO_APIVERSION >= 3
465463
presolve.getPresolveOptions().useabsfeas = false;
466464
#endif
465+
if( SCIPisExact(scip) )
466+
{
467+
presolve.getPresolveOptions().epsilon = 0.0;
468+
presolve.getPresolveOptions().feastol = 0.0;
469+
}
470+
else
471+
{
472+
presolve.getPresolveOptions().epsilon = SCIPepsilon(scip);
473+
presolve.getPresolveOptions().feastol = SCIPfeastol(scip);
474+
}
467475

468476
#ifndef SCIP_PRESOLLIB_ENABLE_OUTPUT
469477
/* adjust output settings of presolve library */

0 commit comments

Comments
 (0)