[Cbc] Correct solving of problem with SOS only

Kish Shen kisshen at cisco.com
Thu Oct 25 18:21:53 EDT 2012


Hi Stefan,

Thanks again for your reply!

On 25/10/2012 19:01, Stefan Vigerske wrote:

>> Thinking more about this -- isn't this warning incorrect? As the object
>> being added is an SOS1, which I understand is a type of branching in the
>> MIP search like integer variables are, so adding them should imply a MIP
>> search, even if there are no integer variables (and normal constraints
>> in this case), i.e. there is something to do (rather than Nothing to do,
>> as the message states).
>
> I also get this message, but it still works.

Yes, I mean the message is incorrect in that calling addObjects() should 
mean the MIP search should be done, while the warning suggest the 
opposite (i.e. the MIP search will not be done because there are not 
integers),  although actually the decision to do the MIP search is not 
made here, but (seem to) depend on if there are linear constraints or not.

> Maybe there is some place in Cbc where it checks whether there are rows
> in the problem and otherwise just stops, without having checked the
> CbcObject's.
>

This is what I think is happening as well. In my first post I was 
checking to see if the alternative, that I am adding the SOS in an 
incorrect way, is the cause of the problem. The other thing I wanted to 
check is if this is a known issue that have been fixed, as the CBC I am 
using is a year old.

Would fixing the problem be difficult? I don't know enough about the 
internals of CBC to do it myself.

This problem also lead me to check what happens if you solve a problem 
with no linear constraints but with integer variables (with 
non-integeral lower bounds). In this case the correct solution is given, 
suggesting that the MIP was done. So it seems Cbc checks to see if there 
are rows or integers, but not CbcObjects.

Cheers,

Kish

> Stefan
>
>>
>> Thanks and cheers,
>>
>> Kish
>>
>> _______________________________________________
>> Cbc mailing list
>> Cbc at list.coin-or.org
>> http://list.coin-or.org/mailman/listinfo/cbc
>>
>



More information about the Cbc mailing list