[Cbc] Assertion `feasible' failed in small MIP

John Forrest john.forrest at fastercoin.com
Sat Sep 13 04:04:00 EDT 2014


Haroldo,

I am unable to reproduce - what exactly were your configure options?

However I think I can see the problem.  There seem to be lots of 
solutions at  -13855499.9997 and they are checked several times before 
being rejected as no better than best so far.  Some of these solutions 
come while trying a more primitive (but faster) branch and bound.  There 
is code that sets fathomDone to true if it thinks a solution is better 
than best so far when obtained in that way - it used 0.1 better as a 
test.  The assert is

                 if (fathomDone)
                     assert (feasible);

Anyway it looks as if due to accuracy problems fathomDone got set true 
and then a double check resolve decided it was actually worse than cutoff.

fathomDone was only used for that assert - so not used in optimized 
mode.  My lazy inclination is just to take out fathomDone (and assert) - 
it was only in when that bit of code was new (a few years ago).

John



On 13/09/14 04:17, Haroldo Gambini Santos wrote:
> Hi,
>
> I've got this small MIP:
> http://www.decom.ufop.br/haroldo/files/layer2.mps
>
> Where CBC (current trunk, revision 2070) fails:
> Cbc0038I Full problem 185 rows 111 columns, reduced to 77 rows 38 columns
> *cbc: CbcModel.cpp:16111: int CbcModel::doOneNode(CbcModel*, 
> CbcNode*&, CbcNode*&): Assertion `feasible' failed.*

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.coin-or.org/pipermail/cbc/attachments/20140913/42664bde/attachment.html>


More information about the Cbc mailing list