-
-
Save rschwarz/1e55cef8e02072f48895eb8544dbbe83 to your computer and use it in GitHub Desktop.
Welcome to the CBC MILP Solver | |
Version: devel | |
Build Date: Nov 10 2020 | |
command line - /home/rs/src/coinbrew/dist/bin/cbc invalid_index.lp mips invalid_index.mst solve (default strategy 1) | |
### CoinLpIO::readLp(): Variable u_0 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_1 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_2 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_3 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_4 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_5 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_6 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_7 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_8 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_9 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_10 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_11 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_12 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_13 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_14 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_15 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_16 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_17 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_18 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_19 does not appear in objective function or constraints | |
opening mipstart file ./invalid_index.mst. | |
MIPStart values read for 8 variables. | |
Continuous objective value is -34 - 0.00 seconds | |
0 variables in SOS1 sets made integer, 0 non integer in SOS1, 10 in SOS2 | |
Cgl0004I processed model has 11 rows, 19 columns (9 integer (9 of which binary)) and 37 elements | |
Coin3009W Conflict graph built in 0.000 seconds, density: 2.564% | |
Cgl0015I Clique Strengthening extended 0 cliques, 0 were dominated | |
Cutoff increment increased from 0.0001 to 0.9999 | |
Cbc0045I Trying just fixing integer variables (and fixingish SOS). | |
Cbc0045I MIPStart provided solution with cost 0 | |
Cbc0012I Integer solution of 0 found by Reduced search after 0 iterations and 0 nodes (0.00 seconds) | |
Cbc0036I Heuristics switched off as 1 branching objects are of wrong type | |
Cbc0013I At root node, 0 cuts changed objective from -34 to -34 in 1 passes | |
Cbc0014I Cut generator 0 (Probing) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 1 (Gomory) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 2 (Knapsack) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 3 (Clique) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 4 (OddWheel) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 5 (MixedIntegerRounding2) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 6 (FlowCover) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0016I Integer solution of -30 found by strong branching after 1 iterations and 1 nodes (0.01 seconds) | |
Cbc0001I Search completed - best objective -30, took 7 iterations and 2 nodes (0.01 seconds) | |
Cbc0032I Strong branching done 4 times (16 iterations), fathomed 1 nodes and fixed 0 variables | |
Cbc0035I Maximum depth 0, 0 variables fixed on reduced cost | |
Cuts at root node changed objective from -34 to -34 | |
Probing was tried 1 times and created 0 cuts of which 0 were active after adding rounds of cuts (0.000 seconds) | |
Gomory was tried 1 times and created 0 cuts of which 0 were active after adding rounds of cuts (0.000 seconds) | |
Knapsack was tried 1 times and created 0 cuts of which 0 were active after adding rounds of cuts (0.000 seconds) | |
Clique was tried 1 times and created 0 cuts of which 0 were active after adding rounds of cuts (0.000 seconds) | |
OddWheel was tried 1 times and created 0 cuts of which 0 were active after adding rounds of cuts (0.000 seconds) | |
MixedIntegerRounding2 was tried 1 times and created 0 cuts of which 0 were active after adding rounds of cuts (0.000 seconds) | |
FlowCover was tried 1 times and created 0 cuts of which 0 were active after adding rounds of cuts (0.000 seconds) | |
TwoMirCuts was tried 1 times and created 0 cuts of which 0 were active after adding rounds of cuts (0.000 seconds) | |
ZeroHalf was tried 1 times and created 0 cuts of which 0 were active after adding rounds of cuts (0.000 seconds) | |
2 bounds tightened after postprocessing | |
Result - Optimal solution found | |
Objective value: -30.00000000 | |
Enumerated nodes: 2 | |
Total iterations: 7 | |
Time (CPU seconds): 0.01 | |
Time (Wallclock seconds): 0.01 | |
Total time (CPU seconds): 0.01 (Wallclock seconds): 0.01 | |
Welcome to the CBC MILP Solver | |
Version: 2.9.9 | |
Build Date: Aug 21 2017 | |
command line - cbc invalid_index.lp mips invalid_index.mst solve (default strategy 1) | |
### CoinLpIO::readLp(): Variable u_0 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_1 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_2 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_3 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_4 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_5 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_6 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_7 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_8 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_9 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_10 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_11 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_12 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_13 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_14 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_15 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_16 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_17 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_18 does not appear in objective function or constraints | |
### CoinLpIO::readLp(): Variable u_19 does not appear in objective function or constraints | |
opening mipstart file ./invalid_index.mst. | |
MIPStart values read for 8 variables. | |
Continuous objective value is -34 - 0.00 seconds | |
Cgl0004I processed model has 11 rows, 19 columns (9 integer (9 of which binary)) and 37 elements | |
Cutoff increment increased from 1e-05 to 0.9999 | |
Cbc0045I Trying just fixing integer variables. | |
Cbc0045I MIPStart provided solution with cost 0 | |
Cbc0036I Heuristics switched off as 1 branching objects are of wrong type | |
Cbc0013I At root node, 0 cuts changed objective from -34 to -34 in 1 passes | |
Cbc0014I Cut generator 0 (Probing) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 1 (Gomory) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 2 (Knapsack) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 3 (Clique) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 4 (MixedIntegerRounding2) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 5 (FlowCover) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0010I After 0 nodes, 1 on tree, 0 best solution, best possible -34 (0.00 seconds) | |
Cbc0016I Integer solution of -30 found by strong branching after 0 iterations and 1 nodes (0.00 seconds) | |
Cbc0001I Search completed - best objective -30, took 1 iterations and 2 nodes (0.00 seconds) | |
Cbc0032I Strong branching done 6 times (10 iterations), fathomed 2 nodes and fixed 0 variables | |
Cbc0035I Maximum depth 0, 6 variables fixed on reduced cost | |
Cuts at root node changed objective from -34 to -34 | |
Probing was tried 1 times and created 0 cuts of which 0 were active after adding rounds of cuts (0.000 seconds) | |
Gomory was tried 1 times and created 0 cuts of which 0 were active after adding rounds of cuts (0.000 seconds) | |
Knapsack was tried 1 times and created 0 cuts of which 0 were active after adding rounds of cuts (0.000 seconds) | |
Clique was tried 1 times and created 0 cuts of which 0 were active after adding rounds of cuts (0.000 seconds) | |
MixedIntegerRounding2 was tried 1 times and created 0 cuts of which 0 were active after adding rounds of cuts (0.000 seconds) | |
FlowCover was tried 1 times and created 0 cuts of which 0 were active after adding rounds of cuts (0.000 seconds) | |
TwoMirCuts was tried 1 times and created 0 cuts of which 0 were active after adding rounds of cuts (0.000 seconds) | |
2 bounds tightened after postprocessing | |
Result - Optimal solution found | |
Objective value: -30.00000000 | |
Enumerated nodes: 2 | |
Total iterations: 1 | |
Time (CPU seconds): 0.00 | |
Time (Wallclock seconds): 0.00 | |
Total time (CPU seconds): 0.00 (Wallclock seconds): 0.00 | |
## Solve with SOS2, without warm start: | |
Welcome to the CBC MILP Solver | |
Version: devel | |
Build Date: Nov 10 2020 | |
Starting solution of the Linear programming relaxation problem using Dual Simplex | |
Coin0506I Presolve 2 (-10) rows, 9 (-31) columns and 18 (-22) elements | |
Clp0000I Optimal - objective value 34 | |
Coin0511I After Postsolve, objective 34, infeasibilities - dual 0 (0), primal 0 (0) | |
Clp0032I Optimal objective 34 - 2 iterations time 0.002, Presolve 0.00 | |
Starting MIP optimization | |
Cgl0004I processed model has 11 rows, 18 columns (9 integer (9 of which binary)) and 36 elements | |
Coin3009W Conflict graph built in 0.000 seconds, density: 2.853% | |
Cgl0015I Clique Strengthening extended 0 cliques, 0 were dominated | |
Cbc0036I Heuristics switched off as 1 branching objects are of wrong type | |
Cbc0013I At root node, 0 cuts changed objective from -34 to -34 in 1 passes | |
Cbc0014I Cut generator 0 (Probing) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 1 (Gomory) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 2 (Knapsack) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 3 (Clique) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 4 (OddWheel) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 5 (MixedIntegerRounding2) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 6 (FlowCover) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0016I Integer solution of -32 found by strong branching after 0 iterations and 0 nodes (0.00 seconds) | |
Cbc0001I Search completed - best objective -32, took 0 iterations and 0 nodes (0.00 seconds) | |
Cbc0032I Strong branching done 2 times (7 iterations), fathomed 1 nodes and fixed 0 variables | |
Cbc0035I Maximum depth 0, 0 variables fixed on reduced cost | |
5 bounds tightened after postprocessing | |
Total time (CPU seconds): 0.00 (Wallclock seconds): 0.00 | |
OptimizationStatus.OPTIMAL | |
## Solve without SOS2, with warm start: | |
Starting solution of the Linear programming relaxation problem using Dual Simplex | |
Coin0506I Presolve 2 (-10) rows, 9 (-31) columns and 18 (-22) elements | |
Clp0000I Optimal - objective value 34 | |
Coin0511I After Postsolve, objective 34, infeasibilities - dual 0 (0), primal 0 (0) | |
Clp0032I Optimal objective 34 - 2 iterations time 0.002, Presolve 0.00 | |
Starting MIP optimization | |
Cgl0004I processed model has 10 rows, 17 columns (9 integer (9 of which binary)) and 34 elements | |
Coin3009W Conflict graph built in 0.000 seconds, density: 3.193% | |
Cgl0015I Clique Strengthening extended 0 cliques, 0 were dominated | |
Cbc0045I MIPStart provided solution with cost 14 | |
Cbc0012I Integer solution of 14 found by Reduced search after 0 iterations and 0 nodes (0.00 seconds) | |
Cbc0012I Integer solution of -34 found by DiveCoefficient after 0 iterations and 0 nodes (0.00 seconds) | |
Cbc0001I Search completed - best objective -34, took 0 iterations and 0 nodes (0.00 seconds) | |
Cbc0035I Maximum depth 0, 0 variables fixed on reduced cost | |
Total time (CPU seconds): 0.00 (Wallclock seconds): 0.01 | |
OptimizationStatus.OPTIMAL | |
## Solve with SOS2, with warm start: | |
Starting solution of the Linear programming relaxation problem using Dual Simplex | |
Coin0506I Presolve 2 (-10) rows, 9 (-31) columns and 18 (-22) elements | |
Clp0000I Optimal - objective value 34 | |
Coin0511I After Postsolve, objective 34, infeasibilities - dual 0 (0), primal 0 (0) | |
Clp0032I Optimal objective 34 - 2 iterations time 0.002, Presolve 0.00 | |
Starting MIP optimization | |
Cgl0004I processed model has 11 rows, 18 columns (9 integer (9 of which binary)) and 36 elements | |
Coin3009W Conflict graph built in 0.000 seconds, density: 2.853% | |
Cgl0015I Clique Strengthening extended 0 cliques, 0 were dominated | |
Cbc0045I MIPStart provided solution with cost 14 | |
Illegal index 30 in OsiClpSolverInterface::setColUpper | |
Cbc_solve ERROR: OsiClpSolverInterface::setColUpper, Illegal index | |
ERROR while running Cbc. Signal SIGABRT caught. Getting stack trace. | |
/home/rs/src/coinbrew/dist/lib/libCbcSolver.so(_Z15CbcCrashHandleri+0x157) [0x7f28ec98e21d] | |
/lib/x86_64-linux-gnu/libc.so.6(+0x37840) [0x7f2904874840] | |
/lib/x86_64-linux-gnu/libc.so.6(gsignal+0x10b) [0x7f29048747bb] | |
/lib/x86_64-linux-gnu/libc.so.6(abort+0x121) [0x7f290485f535] | |
/home/rs/src/coinbrew/dist/lib/libCbcSolver.so(Cbc_solve+0x1309) [0x7f28ec8ccb2d] | |
/home/rs/src/litic/loadflowopt/env/lib/python3.7/site-packages/cffi.libs/libffi-806b1a9d.so.6.0.4(ffi_call_unix64+0x4c) [0x7f2903ed9dec] | |
[...] |
\Problem name: | |
Minimize | |
OBJROW: -10 x_0 -16 x_1 -12 x_2 -18 x_3 -10 x_4 -2 x_5 -11 x_6 -6 x_7 -14 x_8 | |
Subject To | |
constr(0): 5 x_0 + 15 x_1 + 4 x_2 + x_3 + x_4 + 4 x_5 + 4 x_6 + 2 x_7 + 17 x_8 + 2 x_9 | |
<= 18 | |
constr(1): - x_0 + 2 y_0 >= -0 | |
constr(2): - x_1 + 2 y_1 >= -0 | |
constr(3): - x_2 + 2 y_2 >= -0 | |
constr(4): - x_3 + 2 y_3 >= -0 | |
constr(5): - x_4 + 2 y_4 >= -0 | |
constr(6): - x_5 + 2 y_5 >= -0 | |
constr(7): - x_6 + 2 y_6 >= -0 | |
constr(8): - x_7 + 2 y_7 >= -0 | |
constr(9): - x_8 + 2 y_8 >= -0 | |
constr(10): - x_9 + 2 y_9 >= -0 | |
constr(11): y_0 + y_1 + y_2 + y_3 + y_4 + y_5 + y_6 + y_7 + y_8 + y_9 | |
= 1 | |
Bounds | |
0 <= u_0 <= 1 | |
0 <= u_1 <= 1 | |
0 <= u_2 <= 1 | |
0 <= u_3 <= 1 | |
0 <= u_4 <= 1 | |
0 <= u_5 <= 1 | |
0 <= u_6 <= 1 | |
0 <= u_7 <= 1 | |
0 <= u_8 <= 1 | |
0 <= u_9 <= 1 | |
0 <= u_10 <= 1 | |
0 <= u_11 <= 1 | |
0 <= u_12 <= 1 | |
0 <= u_13 <= 1 | |
0 <= u_14 <= 1 | |
0 <= u_15 <= 1 | |
0 <= u_16 <= 1 | |
0 <= u_17 <= 1 | |
0 <= u_18 <= 1 | |
0 <= u_19 <= 1 | |
0 <= x_0 <= 1 | |
0 <= x_1 <= 1 | |
0 <= x_2 <= 1 | |
0 <= x_3 <= 1 | |
0 <= x_4 <= 1 | |
0 <= x_5 <= 1 | |
0 <= x_6 <= 1 | |
0 <= x_7 <= 1 | |
0 <= x_8 <= 1 | |
0 <= x_9 <= 1 | |
Integers | |
u_0 u_1 u_2 u_3 u_4 u_5 u_6 u_7 u_8 u_9 | |
u_10 u_11 u_12 u_13 u_14 u_15 u_16 u_17 u_18 u_19 | |
x_0 x_1 x_2 x_3 x_4 x_5 x_6 x_7 x_8 x_9 | |
sos | |
set(1): S2:: y_0:0 y_1:1 y_2:2 y_3:3 y_4:4 y_5:5 y_6:6 y_7:7 y_8:8 y_9:9 | |
End |
Feasible solution - objective 0.0 | |
0 x_0 0.0 0.0 | |
1 x_1 0.0 0.0 | |
2 x_2 0.0 0.0 | |
3 x_3 0.0 0.0 | |
4 x_4 0.0 0.0 | |
5 x_5 0.0 0.0 | |
6 x_6 0.0 0.0 | |
7 x_7 0.0 0.0 | |
$ python run.py | |
## Versions | |
Python: 3.9.2 (default, Feb 28 2021, 17:03:44) | |
[GCC 10.2.1 20210110] | |
mip: 1.13.0 | |
## Solve with SOS2, without warm start: | |
Welcome to the CBC MILP Solver | |
Version: devel | |
Build Date: Nov 15 2020 | |
Starting solution of the Linear programming relaxation problem using Dual Simplex | |
Coin0506I Presolve 2 (-10) rows, 9 (-31) columns and 18 (-22) elements | |
Clp0000I Optimal - objective value 34 | |
Coin0511I After Postsolve, objective 34, infeasibilities - dual 0 (0), primal 0 (0) | |
Clp0032I Optimal objective 34 - 2 iterations time 0.002, Presolve 0.00 | |
Starting MIP optimization | |
Cgl0004I processed model has 11 rows, 18 columns (9 integer (9 of which binary)) and 36 elements | |
Coin3009W Conflict graph built in 0.000 seconds, density: 2.853% | |
Cgl0015I Clique Strengthening extended 0 cliques, 0 were dominated | |
Cbc0036I Heuristics switched off as 1 branching objects are of wrong type | |
Cbc0013I At root node, 0 cuts changed objective from -34 to -34 in 1 passes | |
Cbc0014I Cut generator 0 (Probing) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 1 (Gomory) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 2 (Knapsack) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 3 (Clique) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 4 (OddWheel) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 5 (MixedIntegerRounding2) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 6 (FlowCover) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0016I Integer solution of -32 found by strong branching after 0 iterations and 0 nodes (0.00 seconds) | |
Cbc0001I Search completed - best objective -32, took 0 iterations and 0 nodes (0.00 seconds) | |
Cbc0032I Strong branching done 2 times (7 iterations), fathomed 1 nodes and fixed 0 variables | |
Cbc0035I Maximum depth 0, 0 variables fixed on reduced cost | |
5 bounds tightened after postprocessing | |
Total time (CPU seconds): 0.00 (Wallclock seconds): 0.00 | |
OptimizationStatus.OPTIMAL | |
## Solve without SOS2, with warm start: | |
Starting solution of the Linear programming relaxation problem using Dual Simplex | |
Coin0506I Presolve 2 (-10) rows, 9 (-31) columns and 18 (-22) elements | |
Clp0000I Optimal - objective value 34 | |
Coin0511I After Postsolve, objective 34, infeasibilities - dual 0 (0), primal 0 (0) | |
Clp0032I Optimal objective 34 - 2 iterations time 0.002, Presolve 0.00 | |
Starting MIP optimization | |
Cgl0004I processed model has 10 rows, 17 columns (9 integer (9 of which binary)) and 34 elements | |
Coin3009W Conflict graph built in 0.000 seconds, density: 3.193% | |
Cgl0015I Clique Strengthening extended 0 cliques, 0 were dominated | |
Cbc0045I MIPStart provided solution with cost 14 | |
Cbc0012I Integer solution of 14 found by Reduced search after 0 iterations and 0 nodes (0.00 seconds) | |
Cbc0012I Integer solution of -34 found by DiveCoefficient after 0 iterations and 0 nodes (0.00 seconds) | |
Cbc0001I Search completed - best objective -34, took 0 iterations and 0 nodes (0.00 seconds) | |
Cbc0035I Maximum depth 0, 0 variables fixed on reduced cost | |
Total time (CPU seconds): 0.00 (Wallclock seconds): 0.00 | |
OptimizationStatus.OPTIMAL | |
## Solve with SOS2, with warm start: | |
Starting solution of the Linear programming relaxation problem using Dual Simplex | |
Coin0506I Presolve 2 (-10) rows, 9 (-31) columns and 18 (-22) elements | |
Clp0000I Optimal - objective value 34 | |
Coin0511I After Postsolve, objective 34, infeasibilities - dual 0 (0), primal 0 (0) | |
Clp0032I Optimal objective 34 - 2 iterations time 0.002, Presolve 0.00 | |
Starting MIP optimization | |
Cgl0004I processed model has 11 rows, 18 columns (9 integer (9 of which binary)) and 36 elements | |
Coin3009W Conflict graph built in 0.000 seconds, density: 2.853% | |
Cgl0015I Clique Strengthening extended 0 cliques, 0 were dominated | |
Cbc0045I MIPStart provided solution with cost 14 | |
Cbc0012I Integer solution of 14 found by Reduced search after 0 iterations and 0 nodes (0.00 seconds) | |
Cbc0036I Heuristics switched off as 1 branching objects are of wrong type | |
Cbc0013I At root node, 0 cuts changed objective from -34 to -34 in 1 passes | |
Cbc0014I Cut generator 0 (Probing) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 1 (Gomory) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 2 (Knapsack) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 3 (Clique) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 4 (OddWheel) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 5 (MixedIntegerRounding2) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 6 (FlowCover) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0016I Integer solution of -32 found by strong branching after 0 iterations and 0 nodes (0.00 seconds) | |
Cbc0001I Search completed - best objective -32, took 0 iterations and 0 nodes (0.00 seconds) | |
Cbc0032I Strong branching done 2 times (7 iterations), fathomed 1 nodes and fixed 0 variables | |
Cbc0035I Maximum depth 0, 0 variables fixed on reduced cost | |
5 bounds tightened after postprocessing | |
Total time (CPU seconds): 0.00 (Wallclock seconds): 0.00 | |
OptimizationStatus.OPTIMAL |
$ python run.py | |
## Versions | |
Python: 3.9.2 (default, Feb 28 2021, 17:03:44) | |
[GCC 10.2.1 20210110] | |
mip: 1.13.0 | |
## Solve with SOS2, without warm start: | |
Welcome to the CBC MILP Solver | |
Version: devel | |
Build Date: Nov 15 2020 | |
Starting solution of the Linear programming relaxation problem using Dual Simplex | |
Coin0506I Presolve 2 (-10) rows, 9 (-31) columns and 18 (-22) elements | |
Clp0000I Optimal - objective value 34 | |
Coin0511I After Postsolve, objective 34, infeasibilities - dual 0 (0), primal 0 (0) | |
Clp0032I Optimal objective 34 - 2 iterations time 0.002, Presolve 0.00 | |
Starting MIP optimization | |
Cgl0004I processed model has 11 rows, 18 columns (9 integer (9 of which binary)) and 36 elements | |
Coin3009W Conflict graph built in 0.000 seconds, density: 2.853% | |
Cgl0015I Clique Strengthening extended 0 cliques, 0 were dominated | |
Cbc0036I Heuristics switched off as 1 branching objects are of wrong type | |
Cbc0013I At root node, 0 cuts changed objective from -34 to -34 in 1 passes | |
Cbc0014I Cut generator 0 (Probing) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 1 (Gomory) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 2 (Knapsack) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 3 (Clique) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 4 (OddWheel) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 5 (MixedIntegerRounding2) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 6 (FlowCover) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0016I Integer solution of -32 found by strong branching after 0 iterations and 0 nodes (0.00 seconds) | |
Cbc0001I Search completed - best objective -32, took 0 iterations and 0 nodes (0.00 seconds) | |
Cbc0032I Strong branching done 2 times (7 iterations), fathomed 1 nodes and fixed 0 variables | |
Cbc0035I Maximum depth 0, 0 variables fixed on reduced cost | |
5 bounds tightened after postprocessing | |
Total time (CPU seconds): 0.00 (Wallclock seconds): 0.00 | |
OptimizationStatus.OPTIMAL | |
## Solve without SOS2, with warm start: | |
Starting solution of the Linear programming relaxation problem using Dual Simplex | |
Coin0506I Presolve 2 (-10) rows, 9 (-31) columns and 18 (-22) elements | |
Clp0000I Optimal - objective value 34 | |
Coin0511I After Postsolve, objective 34, infeasibilities - dual 0 (0), primal 0 (0) | |
Clp0032I Optimal objective 34 - 2 iterations time 0.002, Presolve 0.00 | |
Starting MIP optimization | |
Cgl0004I processed model has 10 rows, 17 columns (9 integer (9 of which binary)) and 34 elements | |
Coin3009W Conflict graph built in 0.000 seconds, density: 3.193% | |
Cgl0015I Clique Strengthening extended 0 cliques, 0 were dominated | |
Cbc0045I MIPStart provided solution with cost 14 | |
Cbc0012I Integer solution of 14 found by Reduced search after 0 iterations and 0 nodes (0.00 seconds) | |
Cbc0012I Integer solution of -34 found by DiveCoefficient after 0 iterations and 0 nodes (0.00 seconds) | |
Cbc0001I Search completed - best objective -34, took 0 iterations and 0 nodes (0.00 seconds) | |
Cbc0035I Maximum depth 0, 0 variables fixed on reduced cost | |
Total time (CPU seconds): 0.00 (Wallclock seconds): 0.00 | |
OptimizationStatus.OPTIMAL | |
## Solve with SOS2, with warm start: | |
Starting solution of the Linear programming relaxation problem using Dual Simplex | |
Coin0506I Presolve 2 (-10) rows, 9 (-31) columns and 18 (-22) elements | |
Clp0000I Optimal - objective value 34 | |
Coin0511I After Postsolve, objective 34, infeasibilities - dual 0 (0), primal 0 (0) | |
Clp0032I Optimal objective 34 - 2 iterations time 0.002, Presolve 0.00 | |
Starting MIP optimization | |
Cgl0004I processed model has 11 rows, 18 columns (9 integer (9 of which binary)) and 36 elements | |
Coin3009W Conflict graph built in 0.000 seconds, density: 2.853% | |
Cgl0015I Clique Strengthening extended 0 cliques, 0 were dominated | |
Cbc0045I MIPStart provided solution with cost 14 | |
python: malloc.c:4036: _int_malloc: Assertion `(unsigned long) (size) >= (unsigned long) (nb)' failed. | |
ERROR while running Cbc. Signal SIGABRT caught. Getting stack trace. | |
/home/rs/in/env/lib/python3.9/site-packages/mip/libraries/lin64/libCbcSolver.so(_Z15CbcCrashHandleri+0x14c) [0x7f6194e0283c] | |
/lib/x86_64-linux-gnu/libc.so.6(+0x3bd60) [0x7f6195f82d60] | |
/lib/x86_64-linux-gnu/libc.so.6(gsignal+0x141) [0x7f6195f82ce1] | |
/lib/x86_64-linux-gnu/libc.so.6(abort+0x123) [0x7f6195f6c537] | |
/lib/x86_64-linux-gnu/libc.so.6(+0x85a38) [0x7f6195fcca38] | |
/lib/x86_64-linux-gnu/libc.so.6(+0x89386) [0x7f6195fd0386] | |
/lib/x86_64-linux-gnu/libc.so.6(__libc_malloc+0x74) [0x7f6195fd1164] | |
./libstdc++.so.6(_Znwm+0x15) [0x7f61935c11f5] | |
./libCoinUtils.so.0(_ZN17CoinIndexedVector7reserveEi+0xcb) [0x7f6193bfa0cb] | |
./libClp.so.0(_ZN10ClpSimplex9createRimEibi+0x520) [0x7f61942173c0] | |
./libClp.so.0(_ZN10ClpSimplex7startupEii+0xe0) [0x7f619422f190] | |
./libClp.so.0(_ZN14ClpSimplexDual12startupSolveEiPdi+0x2d) [0x7f61942456dd] | |
./libClp.so.0(_ZN14ClpSimplexDual4dualEii+0x1d8) [0x7f6194249378] | |
./libClp.so.0(_ZN10ClpSimplex4dualEii+0x65) [0x7f6194220c05] | |
./libOsiClp.so.0(_ZN21OsiClpSolverInterface12initialSolveEv+0xebd) [0x7f619451446d] | |
./libCbc.so.0(_ZN8CbcModel13checkSolutionEdPdid+0x425) [0x7f6194af6015] | |
./libCbc.so.0(_ZN8CbcModel15setBestSolutionE11CBC_MessageRdPKdi+0x129) [0x7f6194aecc69] | |
/home/rs/in/env/lib/python3.9/site-packages/mip/libraries/lin64/libCbcSolver.so(_Z8CbcMain1iPPKcR8CbcModelPFiPS2_iER19CbcSolverUsefulData+0x123b9) [0x7f6194e1eba9] | |
/home/rs/in/env/lib/python3.9/site-packages/mip/libraries/lin64/libCbcSolver.so(Cbc_solve+0x11e3) [0x7f6194dae333] | |
/home/rs/in/env/lib/python3.9/site-packages/cffi.libs/libffi-9c61262e.so.8.1.0(+0x8052) [0x7f619561f052] | |
/home/rs/in/env/lib/python3.9/site-packages/cffi.libs/libffi-9c61262e.so.8.1.0(+0x6c07) [0x7f619561dc07] | |
/home/rs/in/env/lib/python3.9/site-packages/_cffi_backend.cpython-39-x86_64-linux-gnu.so(+0x1cd87) [0x7f6195841d87] | |
python(_PyObject_MakeTpCall+0x39b) [0x51d89b] | |
python(_PyEval_EvalFrameDefault+0x5b2a) [0x5175ba] | |
python() [0x510fe7] | |
python(_PyFunction_Vectorcall+0x361) [0x528d21] | |
python(_PyEval_EvalFrameDefault+0x702) [0x512192] | |
python() [0x5106ed] | |
python(_PyFunction_Vectorcall+0x361) [0x528d21] | |
python(_PyEval_EvalFrameDefault+0x702) [0x512192] | |
python() [0x510fe7] | |
python(_PyFunction_Vectorcall+0x361) [0x528d21] | |
python(_PyEval_EvalFrameDefault+0x525) [0x511fb5] | |
python() [0x5106ed] | |
python(_PyEval_EvalCodeWithName+0x47) [0x510497] | |
python(PyEval_EvalCode+0x23) [0x5f5be3] | |
python() [0x619de7] | |
python() [0x615610] | |
python() [0x619d79] | |
python(PyRun_SimpleFileExFlags+0x196) [0x619816] | |
python(Py_RunMain+0x2b3) [0x60d4e3] | |
python(Py_BytesMain+0x29) [0x5ea6e9] | |
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xea) [0x7f6195f6dd0a] | |
python(_start+0x2a) [0x5ea5ea] | |
ERROR while running Cbc. Signal SIGABRT caught. Getting stack trace. | |
/home/rs/in/env/lib/python3.9/site-packages/mip/libraries/lin64/libCbcSolver.so(_Z15CbcCrashHandleri+0x14c) [0x7f6194e0283c] | |
/lib/x86_64-linux-gnu/libc.so.6(+0x3bd60) [0x7f6195f82d60] | |
/lib/x86_64-linux-gnu/libc.so.6(gsignal+0x141) [0x7f6195f82ce1] | |
/lib/x86_64-linux-gnu/libc.so.6(abort+0x123) [0x7f6195f6c537] | |
/home/rs/in/env/lib/python3.9/site-packages/mip/libraries/lin64/libCbcSolver.so(+0x3f96e) [0x7f6194d9e96e] | |
/lib/x86_64-linux-gnu/libc.so.6(+0x3bd60) [0x7f6195f82d60] | |
/lib/x86_64-linux-gnu/libc.so.6(gsignal+0x141) [0x7f6195f82ce1] | |
/lib/x86_64-linux-gnu/libc.so.6(abort+0x123) [0x7f6195f6c537] | |
/lib/x86_64-linux-gnu/libc.so.6(+0x85a38) [0x7f6195fcca38] | |
/lib/x86_64-linux-gnu/libc.so.6(+0x89386) [0x7f6195fd0386] | |
/lib/x86_64-linux-gnu/libc.so.6(__libc_malloc+0x74) [0x7f6195fd1164] | |
./libstdc++.so.6(_Znwm+0x15) [0x7f61935c11f5] | |
./libCoinUtils.so.0(_ZN17CoinIndexedVector7reserveEi+0xcb) [0x7f6193bfa0cb] | |
./libClp.so.0(_ZN10ClpSimplex9createRimEibi+0x520) [0x7f61942173c0] | |
./libClp.so.0(_ZN10ClpSimplex7startupEii+0xe0) [0x7f619422f190] | |
./libClp.so.0(_ZN14ClpSimplexDual12startupSolveEiPdi+0x2d) [0x7f61942456dd] | |
./libClp.so.0(_ZN14ClpSimplexDual4dualEii+0x1d8) [0x7f6194249378] | |
./libClp.so.0(_ZN10ClpSimplex4dualEii+0x65) [0x7f6194220c05] | |
./libOsiClp.so.0(_ZN21OsiClpSolverInterface12initialSolveEv+0xebd) [0x7f619451446d] | |
./libCbc.so.0(_ZN8CbcModel13checkSolutionEdPdid+0x425) [0x7f6194af6015] | |
./libCbc.so.0(_ZN8CbcModel15setBestSolutionE11CBC_MessageRdPKdi+0x129) [0x7f6194aecc69] | |
/home/rs/in/env/lib/python3.9/site-packages/mip/libraries/lin64/libCbcSolver.so(_Z8CbcMain1iPPKcR8CbcModelPFiPS2_iER19CbcSolverUsefulData+0x123b9) [0x7f6194e1eba9] | |
/home/rs/in/env/lib/python3.9/site-packages/mip/libraries/lin64/libCbcSolver.so(Cbc_solve+0x11e3) [0x7f6194dae333] | |
/home/rs/in/env/lib/python3.9/site-packages/cffi.libs/libffi-9c61262e.so.8.1.0(+0x8052) [0x7f619561f052] | |
/home/rs/in/env/lib/python3.9/site-packages/cffi.libs/libffi-9c61262e.so.8.1.0(+0x6c07) [0x7f619561dc07] | |
/home/rs/in/env/lib/python3.9/site-packages/_cffi_backend.cpython-39-x86_64-linux-gnu.so(+0x1cd87) [0x7f6195841d87] | |
python(_PyObject_MakeTpCall+0x39b) [0x51d89b] | |
python(_PyEval_EvalFrameDefault+0x5b2a) [0x5175ba] | |
python() [0x510fe7] | |
python(_PyFunction_Vectorcall+0x361) [0x528d21] | |
python(_PyEval_EvalFrameDefault+0x702) [0x512192] | |
python() [0x5106ed] | |
python(_PyFunction_Vectorcall+0x361) [0x528d21] | |
python(_PyEval_EvalFrameDefault+0x702) [0x512192] | |
python() [0x510fe7] | |
python(_PyFunction_Vectorcall+0x361) [0x528d21] | |
python(_PyEval_EvalFrameDefault+0x525) [0x511fb5] | |
python() [0x5106ed] | |
python(_PyEval_EvalCodeWithName+0x47) [0x510497] | |
python(PyEval_EvalCode+0x23) [0x5f5be3] | |
python() [0x619de7] | |
python() [0x615610] | |
python() [0x619d79] | |
python(PyRun_SimpleFileExFlags+0x196) [0x619816] | |
python(Py_RunMain+0x2b3) [0x60d4e3] | |
python(Py_BytesMain+0x29) [0x5ea6e9] | |
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xea) [0x7f6195f6dd0a] | |
python(_start+0x2a) [0x5ea5ea] |
## Solve with SOS2, without warm start: | |
Welcome to the CBC MILP Solver | |
Version: devel | |
Build Date: Sep 8 2020 | |
Starting solution of the Linear programming relaxation problem using Dual Simplex | |
Coin0506I Presolve 2 (-10) rows, 9 (-31) columns and 18 (-22) elements | |
Clp0000I Optimal - objective value 34 | |
Coin0511I After Postsolve, objective 34, infeasibilities - dual 0 (0), primal 0 (0) | |
Clp0032I Optimal objective 34 - 2 iterations time 0.002, Presolve 0.00 | |
Starting MIP optimization | |
Cgl0004I processed model has 11 rows, 18 columns (9 integer (9 of which binary)) and 36 elements | |
Coin3009W Conflict graph built in 0.000 seconds, density: 2.853% | |
Cgl0015I Clique Strengthening extended 0 cliques, 0 were dominated | |
Cbc0036I Heuristics switched off as 1 branching objects are of wrong type | |
Cbc0013I At root node, 0 cuts changed objective from -34 to -34 in 1 passes | |
Cbc0014I Cut generator 0 (Probing) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 1 (Gomory) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 2 (Knapsack) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 3 (Clique) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 4 (OddWheel) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 5 (MixedIntegerRounding2) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0014I Cut generator 6 (FlowCover) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100 | |
Cbc0016I Integer solution of -32 found by strong branching after 0 iterations and 0 nodes (0.00 seconds) | |
Cbc0001I Search completed - best objective -32, took 0 iterations and 0 nodes (0.00 seconds) | |
Cbc0032I Strong branching done 2 times (7 iterations), fathomed 1 nodes and fixed 0 variables | |
Cbc0035I Maximum depth 0, 0 variables fixed on reduced cost | |
5 bounds tightened after postprocessing | |
Total time (CPU seconds): 0.00 (Wallclock seconds): 0.00 | |
OptimizationStatus.OPTIMAL | |
## Solve without SOS2, with warm start: | |
Starting solution of the Linear programming relaxation problem using Dual Simplex | |
Coin0506I Presolve 2 (-10) rows, 9 (-31) columns and 18 (-22) elements | |
Clp0000I Optimal - objective value 34 | |
Coin0511I After Postsolve, objective 34, infeasibilities - dual 0 (0), primal 0 (0) | |
Clp0032I Optimal objective 34 - 2 iterations time 0.002, Presolve 0.00 | |
Starting MIP optimization | |
Cgl0004I processed model has 10 rows, 17 columns (9 integer (9 of which binary)) and 34 elements | |
Coin3009W Conflict graph built in 0.000 seconds, density: 3.193% | |
Cgl0015I Clique Strengthening extended 0 cliques, 0 were dominated | |
Cbc0045I MIPStart provided solution with cost 14 | |
Cbc0012I Integer solution of 14 found by Reduced search after 0 iterations and 0 nodes (0.00 seconds) | |
Cbc0012I Integer solution of -34 found by DiveCoefficient after 0 iterations and 0 nodes (0.00 seconds) | |
Cbc0001I Search completed - best objective -34, took 0 iterations and 0 nodes (0.00 seconds) | |
Cbc0035I Maximum depth 0, 0 variables fixed on reduced cost | |
Total time (CPU seconds): 0.00 (Wallclock seconds): 0.00 | |
OptimizationStatus.OPTIMAL | |
## Solve with SOS2, with warm start: | |
Starting solution of the Linear programming relaxation problem using Dual Simplex | |
Coin0506I Presolve 2 (-10) rows, 9 (-31) columns and 18 (-22) elements | |
Clp0000I Optimal - objective value 34 | |
Coin0511I After Postsolve, objective 34, infeasibilities - dual 0 (0), primal 0 (0) | |
Clp0032I Optimal objective 34 - 2 iterations time 0.002, Presolve 0.00 | |
Starting MIP optimization | |
Cgl0004I processed model has 11 rows, 18 columns (9 integer (9 of which binary)) and 36 elements | |
Coin3009W Conflict graph built in 0.000 seconds, density: 2.853% | |
Cgl0015I Clique Strengthening extended 0 cliques, 0 were dominated | |
Cbc0045I MIPStart provided solution with cost 14 | |
Cbc0012I Integer solution of 14 found by Reduced search after 0 iterations and 0 nodes (0.00 seconds) | |
corrupted size vs. prev_size | |
ERROR while running Cbc. Signal SIGABRT caught. Getting stack trace. |
import mip | |
import sys | |
def run(with_sos=True, with_warmstart=True): | |
model = mip.Model() | |
# Some variables to be eliminated by presolve, moving the column index in LP | |
u = [model.add_var(name=f"u_{i}", var_type=mip.BINARY) for i in range(20)] | |
# Some binary variables to make MIP start non-trivial | |
x = [model.add_var(name=f"x_{i}", var_type=mip.BINARY) for i in range(10)] | |
# Some continuous variables for SOS2 | |
y = [model.add_var(name=f"y_{i}") for i in range(10)] | |
# Add knapsack component to make it non-trivial | |
weights = [ 5., 15., 4., 1., 1., 4., 4., 2., 17., 2.] | |
values = [10., 16., 12., 18., 10., 2., 11., 6., 14., 0.] | |
model += sum(weights[i]*x[i] for i in range(10)) <= 18 | |
model.objective = mip.maximize(sum(values[i]*x[i] for i in range(10))) | |
# Add some dummy constraints for coupling | |
for i in range(10): | |
model += x[i] <= 2*y[i] | |
model += sum(y) == 1.0 | |
if with_sos: | |
model.add_sos(list(zip(y, range(5))), 2) | |
if with_warmstart: | |
# Partial solution | |
model.start = [(x[i], 0.0) for i in range(8)] | |
status = model.optimize() | |
print(status) | |
print("## Versions") | |
print("Python:\t", sys.version) | |
print("mip:\t", mip.version) | |
print() | |
print("\n## Solve with SOS2, without warm start:\n") | |
run(True, False) | |
print("\n## Solve without SOS2, with warm start:\n") | |
run(False, True) | |
print("\n## Solve with SOS2, with warm start:\n") | |
run() |
normal.log
shows the output when I use the Cbc library that is shipped with python-mip
. Even though the error message promises "Getting strack trace", no further output is shown.
debug.log
is the output after I build Cbc (and dependencies) from source in debug mode.
The run
function is executed three times. The error only occurs when both SOS2 and the MIP start are added.
I tried recreating the problem with Cbc directly, by writing the data to .lp and .mst files.
But neither the stable, nor the development version of Cbc find any problem.
Maybe this is because the mipstart
is loaded before the presolve, or the CoinLpIO::readLp()
directly discards the u
variables.
But even after adding another constraint on the u
variables, the behavior of Cbc doesn't change.
Updated log files, using mip-1.13. It looks like the behaviour is not deterministic, sometines running OK, sometimes crashing.
Small example to recreate a problem I had with
Cbc
viapython-mip
: In a MIP model, I use both SOS2 and MIP start, but then encounter a crash.I suspect the reason is that several variables are removed during presolve in Cbc, so that Clp only sees a much smaller number of columns.
But the SOS2 objects store references to the original column indices, which have now been moved.