Using DualReductions completely halts optimization. What can cause this?
AnsweredI'm working with a timetabling problem, and have encountered a problem I haven't seen before. I have tried my luck with google and chatGPT, but haven't find a satisfactory (or any for that matter) explanation yet.
What happens is, if I enable "DualReductions", then even after 9 hours, Gurobi makes no progress in finding a better incumbent for my problem. However, if when I turn it off, it makes regular progress. What could cause this to happen, and is there a way to prevent it, and still use DualReductions (Given that it is enabled by default)?
I have included logs below. I have cut them a bit short, as one was terminated, but both ran for more than 9 hours, and in all that time, the incumbent didn't improve with DualReduction.
LOGS BELOW
Without dual reduction;
Set parameter LogFile to value "log.txt"
Set parameter DualReductions to value 0
Set parameter NodefileStart to value 0.5
Set parameter TimeLimit to value 32000
Set parameter Presolve to value 1
Set parameter PreSparsify to value 2
Gurobi Optimizer version 10.0.1 build v10.0.1rc0 (win64)
CPU model: 12th Gen Intel(R) Core(TM) i5-12600K, instruction set [SSE2|AVX|AVX2]
Thread count: 10 physical cores, 16 logical processors, using up to 16 threads
Optimize a model with 547351 rows, 5360628 columns and 31409562 nonzeros
Model fingerprint: 0xaeff8d7d
Variable types: 6168 continuous, 5354460 integer (5343170 binary)
Coefficient statistics:
Matrix range [1e+00, 7e+00]
Objective range [1e+00, 1e+02]
Bounds range [0e+00, 0e+00]
RHS range [1e+00, 8e+00]
User MIP start produced solution with objective 78143 (4.04s)
Loaded user MIP start with objective 78143
Processed MIP start in 4.11 seconds (4.75 work units)
Presolve removed 354262 rows and 3682964 columns (presolve time = 5s) ...
Presolve removed 375579 rows and 3849867 columns (presolve time = 10s) ...
Presolve removed 401693 rows and 3866039 columns (presolve time = 15s) ...
Presolve removed 402733 rows and 3866039 columns (presolve time = 20s) ...
Presolve removed 403559 rows and 3866039 columns (presolve time = 55s) ...
Presolve removed 450598 rows and 4743795 columns (presolve time = 60s) ...
Sparsify removed 905655 nonzeros (31%)
Presolve removed 449384 rows and 4731724 columns
Presolve time: 61.79s
Presolved: 97967 rows, 628904 columns, 2038756 nonzeros
Variable types: 582 continuous, 628322 integer (612522 binary)
Found heuristic solution: objective 78101.000000
Root relaxation presolve: All rows and columns removed
Deterministic concurrent LP optimizer: primal simplex, dual simplex, and barrier
Showing barrier log only...
Root barrier log...
Ordering time: 1.09s
Barrier statistics:
Dense cols : 16
AA' NZ : 1.078e+06
Factor NZ : 2.190e+07 (roughly 260 MB of memory)
Factor Ops : 5.282e+10 (less than 1 second per iteration)
Threads : 8
Objective Residual
Iter Primal Dual Primal Dual Compl Time
0 8.86606750e+07 -3.59976181e+07 5.55e+03 2.79e+02 1.51e+04 69s
1 4.01679895e+07 -3.73618176e+07 2.37e+03 3.19e+02 6.58e+03 69s
2 1.16603035e+07 -3.57103242e+07 5.63e+02 5.50e+01 1.63e+03 70s
3 4.83673275e+06 -2.40421104e+07 1.68e+02 5.59e+00 4.87e+02 70s
4 1.28742865e+06 -1.30707856e+07 2.37e+01 1.07e-01 9.27e+01 70s
5 4.68895201e+05 -4.47664432e+06 7.71e+00 2.11e-12 2.87e+01 71s
6 1.90882943e+05 -1.80940887e+06 2.63e+00 2.70e-12 1.03e+01 71s
7 9.36486804e+04 -9.61332115e+05 9.44e-01 2.49e-12 4.64e+00 71s
8 5.19454292e+04 -4.20185399e+05 3.34e-01 2.77e-12 1.87e+00 72s
9 4.08648054e+04 -2.04496174e+05 2.07e-01 2.55e-12 9.56e-01 72s
10 2.98696768e+04 -1.14725579e+05 1.05e-01 2.12e-12 5.16e-01 73s
11 2.47330285e+04 -5.27220499e+04 6.15e-02 1.71e-12 2.64e-01 73s
12 2.00286420e+04 -1.88235249e+04 2.39e-02 1.27e-12 1.22e-01 73s
13 1.84080402e+04 3.78709602e+03 1.63e-02 8.48e-13 4.48e-02 74s
14 1.69461218e+04 8.30608752e+03 1.10e-02 4.08e-13 2.60e-02 74s
15 1.62684867e+04 1.01891684e+04 8.54e-03 3.32e-13 1.81e-02 75s
16 1.51707977e+04 1.15647557e+04 4.80e-03 3.06e-13 1.06e-02 75s
17 1.45250438e+04 1.26157455e+04 2.91e-03 2.50e-13 5.59e-03 75s
18 1.42992531e+04 1.29841783e+04 2.27e-03 2.16e-13 3.84e-03 76s
19 1.39790232e+04 1.31991179e+04 1.40e-03 3.11e-13 2.27e-03 76s
20 1.38852675e+04 1.32695181e+04 1.15e-03 2.50e-13 1.79e-03 77s
21 1.37198773e+04 1.33416890e+04 6.99e-04 3.54e-13 1.10e-03 77s
22 1.36343382e+04 1.33782115e+04 4.72e-04 3.26e-13 7.45e-04 77s
23 1.35946767e+04 1.34012815e+04 3.55e-04 2.27e-13 5.62e-04 78s
24 1.35606549e+04 1.34229199e+04 2.60e-04 2.19e-13 4.00e-04 78s
25 1.35260573e+04 1.34379709e+04 1.63e-04 3.06e-13 2.56e-04 79s
26 1.35057746e+04 1.34532098e+04 1.07e-04 2.04e-13 1.53e-04 79s
27 1.34917072e+04 1.34598156e+04 6.67e-05 2.01e-13 9.26e-05 79s
28 1.34872111e+04 1.34622763e+04 5.42e-05 2.15e-13 7.24e-05 80s
29 1.34814026e+04 1.34640511e+04 3.73e-05 1.98e-13 5.04e-05 80s
30 1.34784002e+04 1.34656805e+04 2.88e-05 1.99e-13 3.69e-05 81s
31 1.34753859e+04 1.34663791e+04 2.06e-05 2.20e-13 2.61e-05 81s
32 1.34722106e+04 1.34672953e+04 1.20e-05 3.33e-13 1.42e-05 81s
33 1.34703874e+04 1.34675896e+04 6.55e-06 2.01e-13 8.11e-06 82s
34 1.34697074e+04 1.34678764e+04 4.50e-06 2.97e-13 5.31e-06 82s
35 1.34689529e+04 1.34680413e+04 2.26e-06 2.01e-13 2.64e-06 83s
36 1.34688085e+04 1.34681064e+04 1.82e-06 2.34e-13 2.03e-06 83s
37 1.34685235e+04 1.34681225e+04 9.73e-07 2.76e-13 1.16e-06 83s
38 1.34684186e+04 1.34681484e+04 6.59e-07 2.30e-13 7.83e-07 84s
39 1.34682846e+04 1.34681809e+04 2.56e-07 3.51e-13 3.01e-07 84s
40 1.34682241e+04 1.34681908e+04 8.61e-08 2.49e-13 9.65e-08 85s
41 1.34681946e+04 1.34681917e+04 2.48e-08 2.30e-13 8.45e-09 85s
42 1.34681929e+04 1.34681923e+04 6.65e-09 3.60e-13 1.76e-09 86s
43 1.34681927e+04 1.34681924e+04 1.61e-07 2.27e-13 7.64e-10 86s
44 1.34681926e+04 1.34681924e+04 1.62e-07 4.55e-13 7.42e-10 87s
45 1.34681926e+04 1.34681924e+04 8.97e-07 2.65e-13 4.83e-10 87s
Barrier solved model in 45 iterations and 87.21 seconds (114.33 work units)
Optimal objective 1.34681926e+04
Root crossover log...
11091 DPushes remaining with DInf 6.7784537e-05 87s
0 DPushes remaining with DInf 0.0000000e+00 88s
27284 PPushes remaining with PInf 3.3264196e-03 88s
0 PPushes remaining with PInf 1.8698587e-01 89s
Push phase complete: Pinf 1.8698587e-01, Dinf 6.0214957e-02 89s
Root simplex log...
Iteration Objective Primal Inf. Dual Inf. Time
35611 1.3468192e+04 0.000000e+00 6.021496e-02 89s
35687 1.3468192e+04 0.000000e+00 0.000000e+00 89s
Concurrent spin time: 4.04s (can be avoided by choosing Method=3)
Solved with barrier
35687 1.3468192e+04 0.000000e+00 0.000000e+00 93s
Use crossover to convert LP symmetric solution to basic solution...
Root crossover log...
12291 DPushes remaining with DInf 0.0000000e+00 95s
0 DPushes remaining with DInf 0.0000000e+00 96s
35014 PPushes remaining with PInf 0.0000000e+00 96s
0 PPushes remaining with PInf 0.0000000e+00 97s
Push phase complete: Pinf 0.0000000e+00, Dinf 3.4938067e-11 97s
Root simplex log...
Iteration Objective Primal Inf. Dual Inf. Time
81517 1.3468192e+04 0.000000e+00 0.000000e+00 97s
Root relaxation: objective 1.346819e+04, 81517 iterations, 30.05 seconds (36.32 work units)
Total elapsed time = 140.58s
Total elapsed time = 157.76s
Total elapsed time = 179.87s
Total elapsed time = 192.40s
Nodes | Current Node | Objective Bounds | Work
Expl Unexpl | Obj Depth IntInf | Incumbent BestBd Gap | It/Node Time
0 0 13468.1924 0 13188 78101.0000 13468.1924 82.8% - 206s
H 0 0 77851.000000 13468.1924 82.7% - 207s
H 0 0 77571.000000 13468.1924 82.6% - 207s
H 0 0 75143.000000 13468.1924 82.1% - 208s
0 0 - 0 75143.0000 13468.1924 82.1% - 600s
H 0 0 74989.000000 13468.1924 82.0% - 600s
0 0 13931.7556 0 13989 74989.0000 13931.7556 81.4% - 836s
H 0 0 74988.000000 13931.7556 81.4% - 837s
H 0 0 74968.000000 13931.7556 81.4% - 838s
H 0 0 72855.000000 13931.7556 80.9% - 838s
0 0 13947.9403 0 14608 72855.0000 13947.9403 80.9% - 1039s
0 0 13948.1326 0 14587 72855.0000 13948.1326 80.9% - 1092s
0 0 13948.1355 0 14581 72855.0000 13948.1355 80.9% - 1098s
0 0 13948.1355 0 13800 72855.0000 13948.1355 80.9% - 1283s
H 0 0 53006.000000 13948.1355 73.7% - 1511s
H 0 0 52124.000000 13948.1355 73.2% - 1512s
H 0 2 52112.000000 13948.1355 73.2% - 1558s
H 0 2 50678.000000 13948.1355 72.5% - 1558s
0 2 13948.1355 0 13800 50678.0000 13948.1355 72.5% - 1558s
1 4 13948.1355 1 13800 50678.0000 13948.1355 72.5% 95273 1673s
3 8 13948.1355 2 13968 50678.0000 13948.1355 72.5% 48694 1808s
7 16 14392.0276 3 15368 50678.0000 13948.1355 72.5% 68583 4061s
15 26 14394.9367 4 15408 50678.0000 14392.0276 71.6% 169423 5742s
25 36 14405.0123 5 15310 50678.0000 14394.5684 71.6% 162795 6861s
35 44 14408.4040 6 15256 50678.0000 14394.5684 71.6% 145527 7201s
With dual reduction;
Set parameter LogFile to value "log.txt"
Set parameter NodefileStart to value 0.5
Set parameter TimeLimit to value 32000
Set parameter Presolve to value 1
Set parameter PreSparsify to value 2
Gurobi Optimizer version 10.0.1 build v10.0.1rc0 (win64)
CPU model: 12th Gen Intel(R) Core(TM) i5-12600K, instruction set [SSE2|AVX|AVX2]
Thread count: 10 physical cores, 16 logical processors, using up to 16 threads
Optimize a model with 547351 rows, 5360628 columns and 31409562 nonzeros
Model fingerprint: 0xaeff8d7d
Variable types: 6168 continuous, 5354460 integer (5343170 binary)
Coefficient statistics:
Matrix range [1e+00, 7e+00]
Objective range [1e+00, 1e+02]
Bounds range [0e+00, 0e+00]
RHS range [1e+00, 8e+00]
User MIP start produced solution with objective 78143 (3.73s)
Loaded user MIP start with objective 78143
Processed MIP start in 3.78 seconds (4.75 work units)
Presolve removed 355699 rows and 3710727 columns (presolve time = 5s) ...
Presolve removed 373085 rows and 3719564 columns (presolve time = 10s) ...
Presolve removed 404315 rows and 3899546 columns (presolve time = 15s) ...
Presolve removed 409273 rows and 3903611 columns (presolve time = 20s) ...
Presolve removed 410864 rows and 3904698 columns (presolve time = 25s) ...
Presolve removed 412864 rows and 3905920 columns (presolve time = 30s) ...
Presolve removed 414126 rows and 3906684 columns (presolve time = 35s) ...
Presolve removed 414761 rows and 3906684 columns (presolve time = 135s) ...
Presolve removed 462641 rows and 4794253 columns (presolve time = 140s) ...
Sparsify removed 846328 nonzeros (30%)
Presolve removed 461503 rows and 4783138 columns
Presolve time: 143.34s
Presolved: 85848 rows, 577490 columns, 1949958 nonzeros
Variable types: 9 continuous, 577481 integer (565835 binary)
Deterministic concurrent LP optimizer: primal simplex, dual simplex, and barrier
Showing barrier log only...
Root barrier log...
Ordering time: 0.95s
Barrier statistics:
Dense cols : 21
AA' NZ : 1.028e+06
Factor NZ : 2.063e+07 (roughly 240 MB of memory)
Factor Ops : 4.708e+10 (less than 1 second per iteration)
Threads : 8
Objective Residual
Iter Primal Dual Primal Dual Compl Time
0 4.83678408e+10 -2.09131500e+10 2.29e+06 6.59e+02 9.51e+06 150s
1 2.47276789e+10 -1.64743822e+10 1.14e+06 3.82e+02 4.77e+06 150s
2 5.12522041e+09 -7.43632310e+09 2.26e+05 2.42e+01 9.80e+05 151s
3 5.37685390e+08 -9.75068363e+08 1.77e+04 6.69e-01 7.87e+04 151s
4 1.17470068e+08 -1.14531687e+08 1.19e+03 4.28e-11 5.79e+03 151s
5 1.34100580e+07 -4.40265796e+07 1.23e+02 2.28e-11 6.61e+02 151s
6 4.28002434e+06 -1.65629268e+07 3.62e+01 3.18e-11 1.89e+02 152s
7 2.03105614e+06 -6.71487314e+06 1.59e+01 1.35e-11 7.72e+01 152s
8 7.70315668e+05 -3.58397014e+06 5.50e+00 9.40e-12 3.01e+01 152s
9 3.97478999e+05 -1.70531122e+06 2.66e+00 4.46e-12 1.41e+01 153s
10 2.57916514e+05 -1.06035745e+06 1.67e+00 3.67e-12 8.78e+00 153s
11 1.22988233e+05 -3.31378205e+05 7.24e-01 3.55e-12 3.28e+00 153s
12 5.33833638e+04 -1.87279585e+05 2.67e-01 2.88e-12 1.37e+00 154s
13 3.57837502e+04 -9.64675278e+04 1.61e-01 3.08e-12 7.11e-01 154s
14 2.87891754e+04 -5.61573045e+04 1.09e-01 3.01e-12 4.25e-01 154s
15 2.14686080e+04 -2.81880073e+04 4.75e-02 1.76e-12 2.05e-01 155s
16 1.70321687e+04 -9.82603789e+03 1.39e-02 1.45e-12 9.43e-02 155s
17 1.55836045e+04 -1.08694820e+03 5.33e-03 9.62e-13 5.55e-02 155s
18 1.52014993e+04 4.22087556e+03 3.48e-03 8.24e-13 3.61e-02 156s
19 1.47599896e+04 7.86708111e+03 2.02e-03 6.06e-13 2.24e-02 156s
20 1.45676412e+04 1.05354381e+04 1.56e-03 6.51e-13 1.31e-02 156s
21 1.43220374e+04 1.20430928e+04 1.05e-03 5.37e-13 7.35e-03 157s
22 1.40985510e+04 1.27300795e+04 6.87e-04 4.88e-13 4.40e-03 157s
23 1.39826967e+04 1.31231740e+04 5.33e-04 9.78e-13 2.76e-03 158s
24 1.38714622e+04 1.32805144e+04 3.99e-04 7.10e-13 1.89e-03 158s
25 1.38177739e+04 1.33507182e+04 3.35e-04 7.35e-13 1.50e-03 158s
26 1.37577725e+04 1.33964739e+04 2.73e-04 5.47e-13 1.16e-03 159s
27 1.36785086e+04 1.34407935e+04 1.88e-04 9.58e-13 7.61e-04 159s
28 1.36154525e+04 1.34643506e+04 1.17e-04 7.67e-13 4.84e-04 159s
29 1.35828780e+04 1.34829147e+04 8.22e-05 7.76e-13 3.20e-04 160s
30 1.35644144e+04 1.34965049e+04 6.32e-05 8.78e-13 2.17e-04 160s
31 1.35522871e+04 1.35012963e+04 5.07e-05 7.15e-13 1.63e-04 160s
32 1.35435954e+04 1.35028424e+04 4.02e-05 9.63e-13 1.30e-04 161s
33 1.35350665e+04 1.35050876e+04 2.99e-05 6.23e-13 9.58e-05 161s
34 1.35281988e+04 1.35061512e+04 2.27e-05 8.66e-13 7.04e-05 161s
35 1.35202645e+04 1.35075103e+04 1.29e-05 4.26e-13 4.07e-05 162s
36 1.35167371e+04 1.35086547e+04 8.89e-06 6.71e-13 2.58e-05 162s
37 1.35144120e+04 1.35091133e+04 5.92e-06 7.72e-13 1.69e-05 163s
38 1.35128132e+04 1.35092624e+04 3.90e-06 8.74e-13 1.13e-05 163s
39 1.35120811e+04 1.35092783e+04 2.99e-06 9.62e-13 8.95e-06 163s
40 1.35113530e+04 1.35094327e+04 2.07e-06 8.53e-13 6.13e-06 164s
41 1.35106301e+04 1.35095577e+04 1.17e-06 7.29e-13 3.42e-06 164s
42 1.35101121e+04 1.35096023e+04 5.57e-07 6.82e-13 1.63e-06 164s
43 1.35098438e+04 1.35096217e+04 2.61e-07 6.71e-13 7.09e-07 165s
44 1.35097578e+04 1.35096284e+04 1.51e-07 7.05e-13 4.13e-07 165s
45 1.35096717e+04 1.35096317e+04 4.25e-08 7.66e-13 1.28e-07 165s
46 1.35096477e+04 1.35096350e+04 1.30e-08 7.63e-13 4.05e-08 166s
47 1.35096435e+04 1.35096358e+04 8.04e-09 5.27e-13 2.43e-08 166s
48 1.35096367e+04 1.35096363e+04 1.52e-09 7.50e-13 1.31e-09 167s
49 1.35096366e+04 1.35096365e+04 2.26e-09 1.01e-12 3.55e-10 167s
Barrier solved model in 49 iterations and 166.85 seconds (182.08 work units)
Optimal objective 1.35096366e+04
Root crossover log...
8827 DPushes remaining with DInf 4.6876918e-05 167s
0 DPushes remaining with DInf 0.0000000e+00 168s
23636 PPushes remaining with PInf 1.0162633e-03 168s
0 PPushes remaining with PInf 8.2449382e-02 168s
Push phase complete: Pinf 8.2449382e-02, Dinf 2.9602933e+00 168s
Root simplex log...
Iteration Objective Primal Inf. Dual Inf. Time
30843 1.3509636e+04 0.000000e+00 2.960293e+00 168s
30898 1.3509637e+04 0.000000e+00 0.000000e+00 168s
Concurrent spin time: 2.90s (can be avoided by choosing Method=3)
Solved with barrier
30904 1.3509637e+04 0.000000e+00 0.000000e+00 171s
Extra simplex iterations after uncrush: 6
Use crossover to convert LP symmetric solution to basic solution...
Root crossover log...
11059 DPushes remaining with DInf 0.0000000e+00 173s
0 DPushes remaining with DInf 0.0000000e+00 174s
23920 PPushes remaining with PInf 0.0000000e+00 174s
0 PPushes remaining with PInf 0.0000000e+00 174s
Push phase complete: Pinf 0.0000000e+00, Dinf 4.5495176e-11 174s
Root simplex log...
Iteration Objective Primal Inf. Dual Inf. Time
65118 1.3509637e+04 0.000000e+00 0.000000e+00 174s
Root relaxation: objective 1.350964e+04, 65118 iterations, 25.93 seconds (33.63 work units)
Total elapsed time = 211.52s
Total elapsed time = 228.78s
Total elapsed time = 246.82s
Total elapsed time = 263.56s
Nodes | Current Node | Objective Bounds | Work
Expl Unexpl | Obj Depth IntInf | Incumbent BestBd Gap | It/Node Time
0 0 13509.6365 0 11616 78143.0000 13509.6365 82.7% - 288s
0 0 14062.7103 0 13498 78143.0000 14062.7103 82.0% - 723s
0 0 14075.9107 0 13682 78143.0000 14075.9107 82.0% - 943s
0 0 14076.0816 0 13674 78143.0000 14076.0816 82.0% - 961s
0 0 14076.0869 0 13651 78143.0000 14076.0869 82.0% - 968s
0 0 14406.7725 0 14160 78143.0000 14406.7725 81.6% - 1305s
0 0 14422.4108 0 13965 78143.0000 14422.4108 81.5% - 1519s
0 0 14422.5431 0 14036 78143.0000 14422.5431 81.5% - 1550s
0 0 14422.5454 0 13978 78143.0000 14422.5454 81.5% - 1554s
0 0 14697.7198 0 14154 78143.0000 14697.7198 81.2% - 2129s
0 0 14723.7523 0 14404 78143.0000 14723.7523 81.2% - 2506s
0 0 14725.7185 0 14254 78143.0000 14725.7185 81.2% - 2650s
0 0 14725.7793 0 14175 78143.0000 14725.7793 81.2% - 2670s
0 0 14834.3293 0 14426 78143.0000 14834.3293 81.0% - 3270s
0 0 14866.2632 0 14449 78143.0000 14866.2632 81.0% - 3647s
0 0 14885.9137 0 14418 78143.0000 14885.9137 81.0% - 3880s
0 0 14891.0064 0 14361 78143.0000 14891.0064 80.9% - 4039s
0 0 14892.1969 0 14271 78143.0000 14892.1969 80.9% - 4193s
0 0 14892.3545 0 14319 78143.0000 14892.3545 80.9% - 4229s
0 0 14928.3345 0 14592 78143.0000 14928.3345 80.9% - 4945s
0 0 14933.2758 0 14689 78143.0000 14933.2758 80.9% - 5351s
0 0 14933.4687 0 14677 78143.0000 14933.4687 80.9% - 5424s
0 0 14945.7011 0 15056 78143.0000 14945.7011 80.9% - 6048s
0 0 14947.9284 0 15040 78143.0000 14947.9284 80.9% - 6258s
0 0 14947.9953 0 14984 78143.0000 14947.9953 80.9% - 6296s
0 0 14957.1906 0 15338 78143.0000 14957.1906 80.9% - 6952s
-
Hi Nicolai,
DualReductions affects presolve.
You are also setting different presolve parameters (Presolve + PreSparsify).
I would suggest removing these parameters as well as DualReductions, the model is smaller when this is 1 (default).
Cheers,
David1 -
Hi David!
Thanks for the reply! I have been doing a lot of testing, getting an instance agnostic warm start code done, and a few of those settings I simply forgot I had set. My code is still very rough. Simply removing the 3 settings you mentioned, allows the solver to narrow the gap considerably and fast.
I am curious however, as to why these settings would cause this (if you have the time). I have some instances with 140 million variables (most of which are binary), and while I have access to a HPC cluster, reducing the footprint of the program is desirable.
Kind regards,
Nicolai
0 -
Enabling DualReductions (which is the default), is able to use dual information to make further presolve reductions. Setting this to 1 therefore results in longer time and smaller presolved model (more constraints + variables removed, sorry got mixed up before).
Setting PreSparsify to 2 will aim to reduce the number of non-zeros, this can be damaging for some models, the default setting will choose automatically, and this typically works quite well.
Additionally, you are setting Presolve to 1, which again limits the effort spent in presolve. Again, this may not be beneficial in all cases.
More presolve, will typically mean longer time during that stage, however, the resulting model will be smaller, and so the resource usage will be reduced.Cheers,
David0
Please sign in to leave a comment.
Comments
3 comments