[Cbc] Bug in CBC - CbcModel::doOneNode

Haroldo Gambini Santos haroldo.santos at gmail.com
Thu Jul 10 10:55:53 EDT 2014


Used another machine, downloaded cbctrunk now:

./configure --prefix=/usr
compiled with -O2 -g
g++ (SUSE Linux) 4.8.3 20140627 [gcc-4_8-branch revision 212064]

the error:
cbc: CbcModel.cpp:15939: int CbcModel::doOneNode(CbcModel*, CbcNode*&, 
CbcNode*&): Assertion `feasible' failed.

Without this assertion it appears that it works:


Optimal with cbc
-13855499.99980001

Optimal with cplex
-13855500.000

which is more or less the same


Haroldo

On 10-07-2014 04:53, John Forrest wrote:
> Haroldo,
>
> In the latest trunk there is an assert(feasible) at 15938 - but I 
> don't think that is the one you mean.  I think you mean the one below 
> at line 15905.
>
>             if (feasible) {
>                 //int numberPasses = doCutsNow(1) ? maximumCutPasses_ : 0;
>                 int numberPasses = /*doCutsNow(1) ?*/ 
> maximumCutPasses_ /*: 0*/;
>                 feasible = solveWithCuts(cuts, numberPasses, node);
>                 if (fathomDone)
>                     assert (feasible);
>             }
>
> I am unable to reproduce the problem using gcc 4.6.3 or gcc 4.9.0 and 
> -O1 g.  What exactly were your configure options?  Do you still get 
> the correct answer if you take out assert?
>
> John Forrest
> On 09/07/14 21:57, Haroldo Gambini Santos wrote:
>> Hi Forrest,
>>
>> CBC trunk (compiled with "-O1 -g" ) is exiting at one assertion when 
>> solving a small MIP:
>> *http://www.decom.ufop.br/haroldo/files/layer2.mps.gz*
>> (188 rows, 114 columns, 108 of which are binary)
>>
>> The message is:
>> *cbc: CbcModel.cpp:15939: int CbcModel::doOneNode(CbcModel*, 
>> CbcNode*&, CbcNode*&): Assertion `feasible' failed.
>> *
>> and the stack trace is:
>>
>> *#3  0x00007ffff5493ee2 in __GI___assert_fail 
>> (assertion=0x7ffff78c3acd "feasible", file=0x7ffff78c066e 
>> "CbcModel.cpp",
>>     line=15939,
>>     function=0x7ffff78c3140 <CbcModel::doOneNode(CbcModel*, 
>> CbcNode*&, CbcNode*&)::__PRETTY_FUNCTION__> "int 
>> CbcModel::doOneNode(CbcModel*, CbcNode*&, CbcNode*&)") at assert.c:101
>> #4  0x00007ffff788f473 in CbcModel::doOneNode 
>> (this=this at entry=0x64ee50, baseModel=baseModel at entry=0x64ee50, node=
>>     @0x7fffffff6bf0: 0xb7d530, newNode=@0x7fffffff6960: 0x0) at 
>> CbcModel.cpp:15939
>> #5  0x00007ffff7898473 in CbcModel::branchAndBound 
>> (this=this at entry=0x64ee50, doStatistics=doStatistics at entry=0)
>>     at CbcModel.cpp:4553
>> #6  0x00007ffff7b85e8d in CbcMain1 (argc=argc at entry=2, 
>> argv=argv at entry=0x7fffffffe008, model=...,
>>     callBack=callBack at entry=0x7ffff7b64f17 <dummyCallBack(CbcModel*, 
>> int)>, parameterData=...) at CbcSolver.cpp:6371
>> #7  0x00007ffff7b97bf8 in CbcMain1 (argc=argc at entry=2, 
>> argv=argv at entry=0x7fffffffe008, model=...,
>>     callBack=callBack at entry=0x7ffff7b64f17 <dummyCallBack(CbcModel*, 
>> int)>) at CbcSolver.cpp:1295
>> #8  0x00007ffff7b97c0d in CbcMain1 (argc=argc at entry=2, 
>> argv=argv at entry=0x7fffffffe008, model=...) at CbcSolver.cpp:1163
>> #9  0x0000000000400e4f in main (argc=2, argv=0x7fffffffe008) at 
>> CoinSolve.cpp:336
>> *
>> Cheers,
>>
>> Haroldo
>> -- 
>> ==================================================
>> Haroldo Gambini Santos
>> D.Sc, Computer Science
>> Universidade Federal de Ouro Preto
>> http://www.decom.ufop.br/haroldo/
>

-- 
==================================================
Haroldo Gambini Santos
D.Sc, Computer Science
Universidade Federal de Ouro Preto
http://www.decom.ufop.br/haroldo/

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.coin-or.org/pipermail/cbc/attachments/20140710/653b4306/attachment-0001.html>


More information about the Cbc mailing list