[Trac #115] CBC 2.6.0 crashing
Opened this issue · 3 comments
Attachment: https://github.com/s-c-e/cbc-trac-migration-attachments/blob/master/trac-ticket-115.zip
Hello,
I have a model with wich CBC 2.6.0 crashes, the system doesn't let me attach it to the ticket. I'm using the precompiled CBC version available from CoinAll?. I'm not able to compile a newer version so I don't know if this has been already fixed in the latest version.
The command line used is:
cbc -import crash.lp -solve -solu r.txt -quit
The CBC log up to the crash is:
Cbc version 2.6.0, build Nov 7 2010 command line - cbc -import crash.lp -solve -solu r.txt -quit (default strategy 1) Continuous objective value is -0.0845723 - 0.08 seconds Cgl0003I 0 fixed, 0 tightened bounds, 14 strengthened rows, 0 substitutions Cgl0004I processed model has 812 rows, 1088 columns (784 integer) and 80015 elements Cbc0038I Pass 1: suminf. 0.10713 (2) obj. -0.0813099 iterations 218 Cbc0038I Solution found of -0.0810757 Cbc0038I Branch and bound needed to clear up 2 general integers
Just contact me back if you need the model or some further help.
Bye,
======
From dindy
Some further information. I have been able to compile CBC 2.7.0 using MinGW, compilation was smooth, no problems, no warnings. The problem persists. It works if I set presolve to off, but then I found another model where it crash even with presolve off. It works instead with preprocess set to off. The bug happens whenever the line:
Cbc0038I Branch and bound needed to clear up 2 general integers
appears in the log.
Hope it helps.
Bye
========
From dindy
Retested recently with 2.7.5, same result. I have been able to narrow the problem down to a feasibility pump problem. By setting "-feasibilitypump off" it always works, though slower.
Sample lp model causing CBC to crash
I will run this under the latest version of CBC distributed under Ubuntu and see if I can reproduce the issue:
Welcome to the CBC MILP Solver
Version: 2.8.12
Build Date: Feb 22 2016
After running the model with the same command mentioned in the ticket:
cbc -import crash.lp -solve -solu r.txt -quit
I'm getting this log file, which implies the newer version of CBC has resolved this issue!
Welcome to the CBC MILP Solver
Version: 2.8.12
Build Date: Feb 22 2016
command line - cbc -import cbccrash.lp -solve -solu r.txt -quit (default strategy 1)
Continuous objective value is -0.0845723 - 0.03 seconds
Cgl0003I 0 fixed, 0 tightened bounds, 14 strengthened rows, 0 substitutions
Cgl0004I processed model has 812 rows, 1088 columns (784 integer) and 80015 elements
Cbc0038I Pass 1: suminf. 0.10713 (2) obj. -0.0813099 iterations 220
Cbc0038I Solution found of -0.0810757
...
Cbc0001I Search completed - best objective -0.08269109416997172, took 10 iterations and 0 nodes (0.94 seconds)
Cbc0035I Maximum depth 0, 103 variables fixed on reduced cost
Cuts at root node changed objective from -0.0829982 to -0.0826911
Probing was tried 2 times and created 20 cuts of which 2 were active after adding rounds of cuts (0.004 seconds)
Gomory was tried 2 times and created 8 cuts of which 4 were active after adding rounds of cuts (0.001 seconds)
Knapsack was tried 2 times and created 1 cuts of which 0 were active after adding rounds of cuts (0.001 seconds)
Clique was tried 2 times and created 0 cuts of which 0 were active after adding rounds of cuts (0.000 seconds)
MixedIntegerRounding2 was tried 2 times and created 0 cuts of which 0 were active after adding rounds of cuts (0.007 seconds)
FlowCover was tried 2 times and created 1 cuts of which 0 were active after adding rounds of cuts (0.004 seconds)
TwoMirCuts was tried 2 times and created 1 cuts of which 0 were active after adding rounds of cuts (0.003 seconds)
Result - Optimal solution found
Objective value: -0.08269109
Enumerated nodes: 0
Total iterations: 10
Time (CPU seconds): 0.98
Time (Wallclock seconds): 1.01
Total time (CPU seconds): 1.05 (Wallclock seconds): 1.10