[Cbc-tickets] [COIN-OR Branch-and-Cut MIP Solver] #58: Cbc 2.2 reports model integer-infeasible, actually feasible

COIN-OR Branch-and-Cut MIP Solver coin-trac at coin-or.org
Sun Oct 5 08:23:57 EDT 2008


#58: Cbc 2.2 reports model integer-infeasible, actually feasible
-------------------------+--------------------------------------------------
  Reporter:  nowozin     |       Owner:  somebody
      Type:  defect      |      Status:  new     
  Priority:  major       |   Milestone:          
 Component:  component1  |     Version:          
Resolution:              |    Keywords:          
-------------------------+--------------------------------------------------
Comment (by nowozin):

 Andrew Makhorin pointed out on coin-discuss:
 {{{
 In your mps file some integer columns are not listed in the BOUNDS
 section. Glpk sets default lower and upper bounds of such columns to 0
 and +inf, resp. However, the IBM OSL documentation says:

         "For non-integer variables, the default bounds on columns are
         0 and +inf. For integer variables, the default bounds on columns
         are 0 and 1."

 AFAIK, Cbc uses the latter convention that explains why the results
 are different.
 }}}

 So solvers do interpret the MPS standard wrongly.  Cbc and Cplex follow
 the standard strictly by interpreting non-bounded integer columns as being
 bounded [0;1] by default.  Xpress MP, GLPK, and lp_solve assume default
 bounds of [0;inf] for integer columns.

 I believe a proper workaround would be to add explicit bounds upon
 conversion of other formats to MPS, in GLPK and lp_solve.  The necessary
 overhead would be quite small.

-- 
Ticket URL: <https://projects.coin-or.org/Cbc/ticket/58#comment:5>
COIN-OR Branch-and-Cut MIP Solver <http://projects.coin-or.org/Cbc>
An LP-based branch-and-cut MIP solver.



More information about the Cbc-tickets mailing list