[Osi] Bug in Osi?

John Forrest john.forrest at fastercoin.com
Tue Apr 2 10:47:40 EDT 2013


As I thought - not an exciting bug. CglPreProcess does some bound 
tightening which OsiPresolve does not know about.  I have fixed it in 
CglPreProcess and so made code 0.0001% slower for no very good reason.

I can put it into trunk.  I could also put into stable, but I need to 
know which stable (also it would still be a lot easier to take out 
asserts in stable).

John Forrest


On 02/04/13 13:58, Horand Gassmann wrote:
> Stefan Vigerske <stefan at math.hu-berlin.de> wrote:
>
>> Hi,
>>
>> I remember having put in this assert some years ago.
>> The assert makes sense to me. If the basis status is at-upper-bound, 
>> then the upper bound should not be infinity.
>> Instead of taking it out, it would be better to nail down the actual 
>> bug.
>
> First off, thanks to both John and Stefan to take the time to respond. 
> I agree with Stefan, if there is a bug that somehow sets the starting 
> basis to odd values (and I would consider atUpperBound paired with 
> upperBound == infty to be odd), then it makes sense to try to track 
> that down first.
>
> I have prepared an mps file and ran that through Cbc. The postsolve() 
> method is entered three times, and after the first call the number of 
> columns changes from 35 to 55. After the second call a bunch of cuts 
> are created according to the log, and the basis is changed in a number 
> of placed. I attach the log as a separate file. Maybe you can make 
> more of the output than I can.
>
> Cheers
>
> gus
>
>> On 04/01/2013 06:22 PM, John Forrest wrote:
>>> I noticed this recently when using trunk.  I took out assert in
>>> Osi/trunk and could see no harm in it.
>>>
>>> It should not be a fatal error.  I don't really have time to track it
>>> down.  It must be a minor bug in one of the CoinPresolve.... 
>>> postsolvers.
>>>
>>> John Forrest
>>> On 01/04/13 16:28, Horand Gassmann wrote:
>>>> Hi,
>>>>
>>>> I am trying to solve a small aggregate planning model. (AMPL model and
>>>> data files attached.) The LP relaxation works fine, but when I add an
>>>> integrality constraint on the first set of variables (number_workers),
>>>> I get an assert error:
>>>>
>>>> ../../../../Osi/src/Osi/OsiPresolve.cpp:507: virtual void
>>>> OsiPresolve::postsolve(bool): Assertion `status !=
>>>> CoinWarmStartBasis::atUpperBound || originalModel_->getColUpper()[i] <
>>>> infty' failed.
>>>>
>>>> What causes the error is unclear to me. I do not provide a starting
>>>> basis, so I wouldn't expect the presolver to even go there. Is this a
>>>> bug? Does the presolver require finite upper bounds? Any ideas?
>>>>
>>>> Thanks
>>>>
>>>> gus
>>>> -------------------------------------------------------
>>>>
>>>> Horand I. Gassmann, Professor
>>>>
>>>> Kenneth C. Rowe School of Business, Dalhousie University
>>>> 6100 University Avenue, PO Box 15000
>>>> Halifax, Nova Scotia, Canada, B3H 4R2
>>>> ph. (902) 494-1844
>>>> fax (902) 494-1107
>>>>
>>>> http://myweb.dal.ca/gassmann/
>>>>
>>>>
>>>> ----- End forwarded message -----
>>>>
>>>>
>>>> -------------------------------------------------------
>>>>
>>>> Horand I. Gassmann, Professor
>>>>
>>>> Kenneth C. Rowe School of Business, Dalhousie University
>>>> 6100 University Avenue, PO Box 15000
>>>> Halifax, Nova Scotia, Canada, B3H 4R2
>>>> ph. (902) 494-1844
>>>> fax (902) 494-1107
>>>>
>>>> http://myweb.dal.ca/gassmann/
>>>>
>>>>
>>>> _______________________________________________
>>>> Osi mailing list
>>>> Osi at list.coin-or.org
>>>> http://list.coin-or.org/mailman/listinfo/osi
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> Osi mailing list
>>> Osi at list.coin-or.org
>>> http://list.coin-or.org/mailman/listinfo/osi
>>>
>>
>> _______________________________________________
>> Osi mailing list
>> Osi at list.coin-or.org
>> http://list.coin-or.org/mailman/listinfo/osi
>>
>>
>
>
>
> -------------------------------------------------------
>
> Horand I. Gassmann, Professor
>
> Kenneth C. Rowe School of Business, Dalhousie University
> 6100 University Avenue, PO Box 15000
> Halifax, Nova Scotia, Canada, B3H 4R2
> ph. (902) 494-1844
> fax (902) 494-1107
>
> http://myweb.dal.ca/gassmann/



More information about the Osi mailing list