[Cbc] Options to prevent CBC from "stalling" in presolve / root node processing

Daniels, Troy (US SSA) troy.daniels at baesystems.com
Fri Jan 25 10:23:58 EST 2013



> -----Original Message-----
> From: cbc-bounces at list.coin-or.org [mailto:cbc-bounces at list.coin-or.org]
> On Behalf Of John Forrest
> Sent: Friday, January 25, 2013 9:40 AM
> To: cbc at list.coin-or.org
> Subject: Re: [Cbc] Options to prevent CBC from "stalling" in presolve / root
> node processing
> 
> Jean-Paul,
> 
> The problem is due to a rather naive implementation of
> insertCutIfNotDuplicate used in preprocessing.  I will modify Cgl trunk code -
> maybe to use a version of my code in CglProbing.  That will take a day or so.
> 
> Meanwhile change line 350 of OsiCuts.cpp from
> 
>   for ( int i =0; i<numberRowCuts;i++) {
> 
> to
> 
>   for ( int i =0; i<numberRowCuts-numberRowCuts;i++) {
> 

Is that what you meant to write?  Unless I'm misreading something, that is equivalent to

for ( int i =0; i<0;i++) {

which is also equivalent to

if (0) {

Troy

> this will insert lots of duplicates but that will be sorted out at end of
> preprocessing.
> 
> You will find a slight difference in speed!
> 
> John
> _______________________________________________
> Cbc mailing list
> Cbc at list.coin-or.org
> http://list.coin-or.org/mailman/listinfo/cbc



More information about the Cbc mailing list