Gurobi GAP doesn't decrease
AnsweredHello everyone,
I'm using gurobi to optimize a large energy system.
I'm having some issues with the MIPGap which doesn't decrease aftera certain point. I've put the log below, i've cut the log at 280s, but it goes on and on not decreasing the GAP. I tried to set up some parameters, how you can see from the log. I've tried with some other parameters such as NoRelHeurTime, Presolve and PreParsify but the result is always the same.
Glad if you can help me,
Thank you!!
Set parameter Cuts to value 3
Set parameter NumericFocus to value 3
Set parameter NonConvex to value 2
Set parameter MIPFocus to value 2
Gurobi Optimizer version 9.5.2 build v9.5.2rc0 (win64)
Thread count: 10 physical cores, 12 logical processors, using up to 12 threads
Warning: excessive time spent in model updates.
Consider calling update less frequently.
Optimize a model with 12828 rows, 9812 columns and 25670 nonzeros
Model fingerprint: 0x681cc363
Model has 1406 quadratic constraints
Variable types: 8406 continuous, 1406 integer (1406 binary)
Coefficient statistics:
Matrix range [2e-03, 1e+05]
QMatrix range [7e-05, 1e+03]
QLMatrix range [1e+05, 1e+05]
Objective range [1e+00, 1e+00]
Bounds range [3e+00, 2e+03]
RHS range [2e+00, 1e+05]
---------------------------------------------------------------------------
Multi-objectives: starting optimization with 695 objectives (1 combined) ...
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Multi-objectives: optimize objective 1 (weighted) ...
---------------------------------------------------------------------------
Optimize a model with 12828 rows, 9812 columns and 25670 nonzeros
Model fingerprint: 0x4ef7800f
Model has 1406 quadratic constraints
Variable types: 8406 continuous, 1406 integer (1406 binary)
Coefficient statistics:
Matrix range [2e-03, 1e+05]
QMatrix range [7e-05, 1e+03]
QLMatrix range [1e+05, 1e+05]
Objective range [1e+00, 1e+00]
Bounds range [1e+00, 2e+03]
RHS range [2e+00, 1e+05]
Presolve removed 5994 rows and 3193 columns
Presolve time: 0.03s
Presolved: 12448 rows, 6619 columns, 37556 nonzeros
Presolved model has 1404 bilinear constraint(s)
Variable types: 5217 continuous, 1402 integer (1402 binary)
Root relaxation presolve removed 1 rows and 1 columns
Root relaxation presolved: 12447 rows, 6618 columns, 37556 nonzeros
Root relaxation: objective 2.278008e+03, 3779 iterations, 0.19 seconds (0.14 work units)
Nodes | Current Node | Objective Bounds | Work
Expl Unexpl | Obj Depth IntInf | Incumbent BestBd Gap | It/Node Time
0 0 2278.00779 0 857 - 2278.00779 - - 0s
0 2 2278.00779 0 856 - 2278.00779 - - 1s
1058 1114 2310.26299 95 696 - 2294.52731 - 2.7 5s
3698 2162 infeasible 274 - 2294.52731 - 1.7 10s
6732 2632 2324.51467 381 632 - 2294.52731 - 4.6 15s
8153 3813 2376.20831 412 42 - 2317.58966 - 7.6 20s
H 8153 3622 2386.6306194 2317.58966 2.89% 7.6 25s
8189 3657 2325.26233 18 807 2386.63062 2320.47356 2.77% 11.0 30s
H 8198 3473 2386.6301964 2320.47356 2.77% 11.1 30s
8955 4025 2326.21258 56 752 2386.63020 2320.47356 2.77% 10.6 35s
9906 4646 2326.67116 99 697 2386.63020 2320.47356 2.77% 10.2 40s
10871 5166 2326.83475 146 655 2386.63020 2320.47356 2.77% 9.7 45s
11667 5752 2328.84579 185 596 2386.63020 2320.47356 2.77% 10.0 50s
12786 6470 2332.04751 238 594 2386.63020 2320.47356 2.77% 9.5 56s
13218 6610 2326.85058 261 587 2386.63020 2320.47356 2.77% 9.3 66s
13806 7010 2326.87600 291 591 2386.63020 2320.47356 2.77% 9.1 70s
14811 7756 2329.55742 344 583 2386.63020 2320.47356 2.77% 9.2 76s
15404 8178 2328.81481 377 584 2386.63020 2320.47356 2.77% 9.0 80s
16481 8935 2329.28174 423 576 2386.63020 2320.47356 2.77% 8.7 85s
17622 9707 2329.40125 484 575 2386.63020 2320.47356 2.77% 8.4 91s
18385 10244 2329.40125 521 574 2386.63020 2320.47356 2.77% 8.3 96s
19262 11064 2329.43169 564 571 2386.63020 2320.47356 2.77% 8.2 101s
20221 12099 2329.53587 613 567 2386.63020 2320.47356 2.77% 8.2 106s
21328 13004 2329.54831 667 561 2386.63020 2320.47356 2.77% 8.0 112s
21726 13549 2329.54831 689 558 2386.63020 2320.47356 2.77% 8.0 115s
22884 14620 2329.55324 754 556 2386.63020 2320.47356 2.77% 7.8 123s
23363 15225 2329.55774 779 555 2386.63020 2320.47356 2.77% 7.7 127s
24004 15890 2330.02092 816 556 2386.63020 2320.47356 2.77% 7.6 131s
24688 16590 2329.59562 851 560 2386.63020 2320.47356 2.77% 7.6 135s
26215 18089 2329.56871 930 548 2386.63020 2320.47356 2.77% 7.4 144s
27004 18843 2329.58041 974 547 2386.63020 2320.47356 2.77% 7.3 149s
27810 19666 2329.56846 1015 545 2386.63020 2320.47356 2.77% 7.2 154s
28643 20433 2329.57265 1059 542 2386.63020 2320.47356 2.77% 7.1 159s
29454 21236 2329.61958 1098 542 2386.63020 2320.47356 2.77% 7.1 165s
30311 22098 2329.61098 1144 538 2386.63020 2320.47356 2.77% 7.0 171s
31221 23035 2329.63596 1193 532 2386.63020 2320.47356 2.77% 7.0 178s
32182 24138 2329.63596 1239 526 2386.63020 2320.47356 2.77% 6.9 185s
33349 25149 2329.63596 1293 517 2386.63020 2320.47356 2.77% 6.8 192s
34416 26129 2329.63884 1345 512 2386.63020 2320.47356 2.77% 6.7 198s
35460 27152 2329.63929 1396 508 2386.63020 2320.47356 2.77% 6.6 205s
36544 28196 2329.63774 1452 502 2386.63020 2320.47356 2.77% 6.5 211s
37607 29208 2329.69102 1505 498 2386.63020 2320.47356 2.77% 6.4 219s
38683 29217 2329.64526 1547 493 2386.63020 2320.47356 2.77% 6.4 230s
38694 30181 2329.64754 1547 493 2386.63020 2320.47356 2.77% 6.4 237s
39718 31156 2329.64526 1600 492 2386.63020 2320.47356 2.77% 6.3 245s
40761 32137 2329.64526 1651 491 2386.63020 2320.47356 2.77% 6.2 252s
41818 32753 2329.64537 1704 489 2386.63020 2320.47356 2.77% 6.2 258s
42472 33793 2329.64538 1746 488 2386.63020 2320.47356 2.77% 6.2 265s
43512 34887 2329.64542 1799 489 2386.63020 2320.47356 2.77% 6.1 273s
44606 35981 2329.64584 1856 486 2386.63020 2320.47356 2.77% 6.1 280s
-
Update: if i change the parameters, the minimum GAP reached by gurobi changes a bit, but the problem remains.
0 -
The parameters you set mainly focus on the dual. It might make sense to try focusing on the primal bound instead. You could try experimenting with the parameters NoRelHeurTime, MIPFocus=1, Heuristics.
Note that NumericFocus may hurt performance badly and should only be used if really necessary. Instead of setting the parameter it is always best to scale the model on your own. Please refer to our Guidelines for Numerical Issues for more details on scaling.
You should definitely upgrade to the latest version of Gurobi. At least version 10.0.1. Version 11 is coming out at the end of the year so you should upgrade to v11 then.
0
Please sign in to leave a comment.
Comments
2 comments