[Coin-lpsolver] Getting tableau using getBInvARow or Col - notification

John J Forrest jjforre at us.ibm.com
Thu Feb 10 15:57:55 EST 2005


Francois Margot found an inconsistency in the tableau routines of 
Osi(Clp)SolverInterface.  Given a constraint

x + y <= 8

the convention is to add a slack s so

 x + y + s == 8    ( 0 <= s <= infinity)

and if the constraint is tight then the slack is at its lower bound.  Clp 
thinks in terms of row activities so the constraint looks like

x + y - s == 8 (-infinity <= s <= 0)

so if the constraint is tight the slack is at its upper bound.

I think I managed to fix the +1/-1 issue some months ago but I did not fix 
the slack status inconsistency.  I have now done that so that if other 
solvers provide the tableau functionality then the status values should 
match up.  I do not expect this to affect many people but if you are 
checking whether a slack is at its lower or upper bound by using something 
like getBasisStatus then double-check your code still works.

John Forrest
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.coin-or.org/pipermail/clp/attachments/20050210/ae1b2b29/attachment.html>


More information about the Clp mailing list