Closed gingerjhan closed 2 years ago
Hmm, this is quite old code and strange that it hasn't come up before.
A quick workaround is to add
diff --git a/src/scip/presol_implics.c b/src/scip/presol_implics.c
index c04d04f3aa..ed2031b27f 100644
--- a/src/scip/presol_implics.c
+++ b/src/scip/presol_implics.c
@@ -269,6 +269,9 @@ SCIP_DECL_PRESOLEXEC(presolExecImplics)
assert(bdchgvars != NULL);
assert(bdchgvals != NULL);
+ if( SCIPvarGetStatus(bdchgvars[v]) == SCIP_VARSTATUS_MULTAGGR )
+ continue;
+
if( bdchgtypes[v] == SCIP_BOUNDTYPE_LOWER )
{
SCIP_CALL( SCIPtightenVarLb(scip, bdchgvars[v], bdchgvals[v], FALSE, &infeasible, &tightened) );
I have a MILP problem that is having trouble running through SCIP with pyscipopt. Two specific variables would occasionally cause an error. The error message is listed below:
The attachment contains my test file. I saved the model in .lp and .cip formats before the error occurred. test_lp_transform.cip is a file that tranfrom from test.lp. I figured out that the difference between test.cip and test_lp_transform.cip is the order of the variable, which would cause a different presolving result.
test.zip