[SCIP] Deleting constraints in branch-and-price
Rolf van der Hulst
r.p.vanderhulst at utwente.nl
Tue Sep 20 16:34:53 CEST 2022
Dear SCIP community,
I am working on a branch-and-price application where some of the
problem's (set covering) constraints can be removed during node
preprocessing. In order to delete the row, I tried using SCIPdelCons,
SCIPdelConsLocal and SCIPdisable /SCIPenable but they all run into the
same issue.
The issue I am running in to is that deleting/disabling a constraint
does not necessarily remove the associated row from the LP. This is
problematic in my case, as the row which is still in the LP can then
also have a nonzero dual solution, which makes it impossible to solve
the pricing problem. I would like to know how to prevent these
Disabled/deleted rows from having a nonzero dual solution after I have
called SCIPdelCons() (or any of the above equivalents). Constraint
ageing (e.g. setting Removable to True) also does not work as SCIP still
does not evict this row from the LP as it is still a tight constraint.
My questions boil down to the following:
1. How can I force a constraint/row to be removed from the (current) LP?
2. Is this a bug?
Best,
Rolf
More information about the Scip
mailing list