[SCIP] My Branch-and-Cut algorithm says that problem is infeasible even though it has a solution
Gerald Gamrath
gamrath at zib.de
Fri Mar 22 12:39:31 CET 2019
Dear Matheus,
can you check the bounds of your variables after SCIP claimed
infeasibility? Or check whether it did some presolve reductions?
I would guess that duality fixing fixed some (or all) or your variables
to 0.
Just looking at your problem in the beginning, there is no constraint
that hinders SCIP to set a variable to 0, which would also be the best
value w.r.t. the objective function.
If your constraint handler will add such constraints later, it should
add down locks to all potentially involved variables in the CONSLOCK
callback.
Perhaps you forgot to implement this callback? If you don't set the
locks, SCIP assumes that it can safely set these variables to their
lower bound.
Best,
Gerald
On 19.03.19 19:56, Matheus Ota wrote:
> Hello all,
>
> I'm currently implementing a Branch-and-Cut algorithm using SCIP. I've
> already implemented the Constraint Handler that add the constraints
> during the Branch-and-Bound procedure. The problem is that, after
> adding some constraints, SCIP says that the problem has become
> infeasible, even though it clearly has a solution. For example, in
> this problem:
> OBJECTIVE
> Sense : minimize
> VARIABLES
> [binary] <x_3,2>: obj=5, original bounds=[0,1]
> [binary] <x_3,0>: obj=8.9443, original bounds=[0,1]
> [binary] <x_3,1>: obj=8, original bounds=[0,1]
> [binary] <x_2,3>: obj=5, original bounds=[0,1]
> [binary] <x_2,1>: obj=5, original bounds=[0,1]
> [binary] <x_2,0>: obj=5, original bounds=[0,1]
> [binary] <x_1,3>: obj=8, original bounds=[0,1]
> [binary] <x_1,2>: obj=5, original bounds=[0,1]
> [binary] <x_1,0>: obj=8.9443, original bounds=[0,1]
> [binary] <x_0,3>: obj=8.9443, original bounds=[0,1]
> [binary] <x_0,1>: obj=8.9443, original bounds=[0,1]
> [binary] <x_0,2>: obj=5, original bounds=[0,1]
>
> After the Constraint Handler (in the CONSEPALP method) adds:
> 1 <= +1<t_x_3,1> +1<t_x_2,1> +1<t_x_0,1> <= 1e+20
> 1 <= +1<t_x_2,3> +1<t_x_1,3> +1<t_x_0,3> <= 1e+20
>
> SCIP says that problem is infeasible, even though it clearly has a
> solution (setting all variables to 1, for example). Any thoughs here?
>
> Thanks,
> Matheus
>
>
>
> _______________________________________________
> Scip mailing list
> Scip at zib.de
> https://listserv.zib.de/mailman/listinfo/scip
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listserv.zib.de/pipermail/scip/attachments/20190322/fd048cf6/attachment.html>
More information about the Scip
mailing list