Hi!

My first suggestion would be to let it run for longer to understand whether it has already reached an optimal solution and has problem proving its optimality or whether it cannot find a better solution. It seems to me like it may be a case of not being able to prove optimality and you may have the optimal solution in 1 second.

It is important to understand this first to see what makes more sense for you and the parameters you could set to get to where you want.

Thanks for your  suggestion. i tried the longer execution time, for example time_limit = 10000s,  below is th the part of the log.  The gap does not reduce.

2024-03-06 12:18:56,577 - INFO -  4378987 47336 5099.00000  113   13 5828.00000 5099.00000  12.5%  75.8 6835s
4382455 47328 infeasible  128      5828.00000 5099.00000  12.5%  75.8 6840s
2024-03-06 12:19:00,796 - INFO -  4382455 47328 infeasible  128      5828.00000 5099.00000  12.5%  75.8 6840s
4387425 47360 5099.00000  109   13 5828.00000 5099.00000  12.5%  75.8 6845s
2024-03-06 12:19:06,119 - INFO -  4387425 47360 5099.00000  109   13 5828.00000 5099.00000  12.5%  75.8 6845s
4391664 47179 infeasible  108      5828.00000 5099.00000  12.5%  75.8 6850s
2024-03-06 12:19:10,931 - INFO -  4391664 47179 infeasible  108      5828.00000 5099.00000  12.5%  75.8 6850s
4396799 47244 5185.25346  119   15 5828.00000 5099.00000  12.5%  75.8 6855s
2024-03-06 12:19:16,547 - INFO -  4396799 47244 5185.25346  119   15 5828.00000 5099.00000  12.5%  75.8 6855s

why it is difficult to prove the optimality? Do you have any idea about it?

Thanks,

David

Hi David,

It seems like your problem is indeed proving optimality. There are many reasons why this may happen, depending on your model. If you are not familiar with the topic of Weak MIP Formulation, there are some great videos on Gurobi's youtube on the subject. There are some tips that may improve your modelling and fix this proving optimality problem.

Moreover, there are a few parameters that you may want to experiment to fix this issue. The first would be MIPFocus=3. Let this strategy run with longer time and see if it works. If not, you may want to look into other parameters such as Cuts=3 or Presolve=3.