[Cbc] Very strange behaviour?

Bjørn Sigurd Johansen (Spider Solutions AS) bjorn.sigurd.johansen at spidersolutions.no
Sun Oct 27 23:09:08 EDT 2019


I think I found the solution:

My objective function was like this:
    MINIMIZE
    Obj:
    ...
    ...
    +0.037 SRI
    ...
    +0 SRI

Looks like the second occurrence of "+0 SRI" overwrites the first "+0.037 SRI".  (Which arguably is a bit strange?)

BTW, I downloaded "Cbc-2.10.3-win32-msvc15" from https://bintray.com/coin-or/download/Cbc/2.10.3
Is the best & newest CBC version?
(This version had better error reporting and pointed me in the right direction).


Best,
Bjorn


From: Cbc <cbc-bounces at coin-or.org> On Behalf Of Bjørn Sigurd Johansen (Spider Solutions AS)
Sent: Monday, October 28, 2019 3:32 AM
To: 'cbc at list.coin-or.org' <cbc at list.coin-or.org>; john.forrest at fastercoin.com <john.forrest at HDRedirect-LB5-1afb6e2973825a56.elb.us-east-1.amazonaws.com>
Subject: [Cbc] Very strange behaviour?

Hi,

I have a MIP which seems to work well, i.e. solved properly by CBC.

I then add the following objective function part:
    "0 SRI", where SRI is a plain continuous variable.
My objective function then becomes:
    MINIMIZE
    Obj:
    ...
    ...
    ...
    0 SRI
Now, the really strange thing is that adding the "0 SRI" part changes the solution. (Objective value is slightly reduced/improved from  255.02725000 to 254.95325000).
How is this possible?  A variable in the objective function multiplied with zero multiplier should have no effect??
I have set "-seconds 9999 -maxIterations 999999999 -ratioGap 0.0" so this is not a question of a forced optimization stop, and CBC always reports "Optimal solution found".

FYI: In the solution file, the following line exists:
    386 SRI               2                 -0.0629
I don't know what the last number in previous line means, but it is quite close to the difference between 255.02725000 and 254.95325000. (Don't know if this is relevant).

NB. This is actually a really big problem, because I have about 30  "SRI" variables, and when I add all of them, my objective function gets really distorted, e.g. getting values around 45.
Please help!


I think I use CBC 2.9.8 or 2.9.9.  cbc.exe file seems to have been created August 1, 2016 or February 7, 2017.


Best regards,
Bjørn Sigurd

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


More information about the Cbc mailing list