[Scip] DETECTING INFEASIBILITY ON A NODE
Gerald Gamrath
gamrath at zib.de
Fri Oct 24 12:58:44 CEST 2014
Dear Diego,
> I have implemented a branch-and-price-procedure with a pricer which
> seems working in the PRICERREDCOST. But in the instances that it need
> to use PRICERFARKAS I am obtaining some farkas multipliers with
> strange values, like -e99. Indeed this dual variable should be
> nonnegative.
this sounds strange. Can you please check with SCIPgetLPSolstat() that
the LP is really infeasible and with SCIProwIsInLP() that the row
corresponding to the constraint for which you get the dual farkas
multiplier is contained in the LP (you can get the row of a linear
constraint with SCIPgetRowLinear()). Did you mark the constraint to be
modifiable?
> Because of this problem, I would like to know if SCIP by itself is
> able to close an infeasible node since the variables fixed avoid any
> feasible solution *and how*.
>
Yes, SCIP can detect the infeasibility of a node in the domain
propagation step. For example, if you have a constraint x + y = 1 and x
and y were both fixed to 0, SCIP will detect the infeasibility and cut
off the node. However, this is only done if the constraint was not
marked to be modifiable, since otherwise pricing might add more
variables to the constraint and there might still be feasible solutions
with x = y = 0.
> My Farkas pricing is similar to the Reduced cost pricing whith 0 in
> the coefficients of the objective function
> and SCIPgetDualfarkasLinear() instead of SCIPgetDualsolLinear().
>
This is how it should be.
Best,
Gerald
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listserv.zib.de/pipermail/scip/attachments/20141024/5e556160/attachment.html>
More information about the Scip
mailing list