[Coin-discuss] Bug in getRowActivity()
Tobias Achterberg
achterberg at zib.de
Thu Sep 25 10:10:26 EDT 2003
Hello Tomas,
> I think I've found a bug in COIN-OR for the CPX-interface. (latest
> release)
>
> When running a MIP model I have set the limits for a constraint to [36
> 43]. After running the LP solve (on the relaxed problem) I check the
> value with getRowActivity() and get 35.0037. This is obviously wrong.
>
> Then I calculated the value manually and got 36.9963.
>
> My conclusion is that row 1174 in
> OsiCpxSolverInterface::getRowActivity() should use + instead of -. If
> this is generally true I don't know.
Yes, you are exactly right. As the manual says:
"Except for ranged rows, the slack values returned consist of the right-hand
side minus the row activity level. For ranged rows, the value returned is the
row activity level minus the right-hand side, or, equivalently, the value of the
internal structural variable that CPLEX creates to represent ranged rows."
The - is now replaced by a +.
Thank you, Tobi
--
Tobias Achterberg Konrad-Zuse-Zentrum fuer
Informationstechnik Berlin
Tel: +49 (0)30 84185-301 Takustr. 7
Email: achterberg at zib.de D-14195 Berlin, Germany
More information about the Coin-discuss
mailing list