coin-or / Cbc.old

This is a mirror of the subversion repository on COIN-OR
https://projects.coin-or.org/Cbc
Other
89 stars 30 forks source link

[Trac #123] CBC.exe produces an "optimal" IP solution that violates a BigM constraint - a scaling problem? #81

Open s-c-e opened 5 years ago

s-c-e commented 5 years ago

image

Attachment: https://github.com/s-c-e/cbc-trac-migration-attachments/blob/master/trac-ticket-123.zip

An OpenSolver user has sent me a spreadsheet that has some large BigM values. Solving with these large values leads CBC.exe to return a solution reported as optimal that violates at least 1 constraint. Reducing the BigM by a factor of 100 produces a new, now feasible solution.

I have attached (1) Sue's Model - CBC gives wrong answer.txt My summary of the issue (2) model2.lp and modelsolution2.txt Original Input and solution showing the violated constraint (3) model.lp and modelsolution.txt Modified input (smaller BigM) and a new solution that does not violate the modified constraint

Please contact me if you need any more information.

Thanks, Andrew

s-c-e commented 5 years ago

I've executed both model.lp and model2.lp and I get the same solutions - with objective = 10.0. Log files are respectively linked here: https://gist.github.com/s-c-e/cbc31a29eaff767ca8ad570c5abb9cdf https://gist.github.com/s-c-e/b0f9baea014ca0ceb8026df42734a882

s-c-e commented 5 years ago

Because I got the same solution in both cases, both pre- and post- modification of the big M, I think @tkralphs this can be marked as closed/resolved. The version of standalone CBC I've used is shown below.

Welcome to the CBC MILP Solver 
Version: 2.8.12 
Build Date: Feb 22 2016