Speed up MILP solving
OngoingDear Gurobi Community,
I am trying to speed up the solving procedure of a MILP. I already played with parameters and the tuning found following parameter set that greatly reduced the solving time:
Method = 2
Heuristics = 0
MIPFocus = 2
Cuts = 0
PreSparsify = 1
But the solving still needs to much time especially when I increase the amout of input data.
It is noticeable that an optimal solution is found quickly, but the verification takes a long time and only proceeds in small steps (see log file below). Can that be improved somehow?
How can I speed up the solving prcedure further?
Thanks in advance!
...
...
...
-
Official comment
This post is more than three years old. Some information may not be up to date. For current information, please check the Gurobi Documentation or Knowledge Base. If you need more help, please create a new post in the community forum. Or why not try our AI Gurobot?. -
Thank you very much for your suggestions! Unfortunately both parameter changes didn't help.
In the following you can see the log for cuts default value:
...
...
...
In the following you can see the log for MIPFocus=3:
...0 -
It may not make much difference, but I would try MIPFocus=3 in isolation (e.g., without setting Heuristics, Cuts, etc.).
In the log from your initial post, Gurobi finds the optimal solution fairly early (463s) via branching, then proves optimality by processing the entire branch-and-bound tree. It doesn't look like cuts are helpful in proving optimality faster. So, you might be on the right track by disabling heuristics and cuts. You could try modifying the branching parameters BranchDir and VarBranch, though these normally don't have a large impact. Alternatively, you could try reformulating the problem in hopes of obtaining a tighter formulation, or simply to see if Gurobi performs better on a different problem structure.
1 -
Thank you very much for your comments! Actually the biggest runtime reductions I could achieve with problem reformulations and limitations of the solution space.The runtime for the initial problem is now only 63 seconds. Unfortunately the runtime increases extremely for more input data. Therefore I will probably have to try even more in this area...
0 -
Hi Nathalie,
I am having the same trouble as you. May I know if you have solved this problem?
"It is noticeable that an optimal solution is found quickly, but the verification takes a long time and only proceeds in small steps (see log file below). Can that be improved somehow?"
Kind regards,
Pengfei
0
Post is closed for comments.
Comments
6 comments