Skip to main content

heuristic parameter and speed up the solving process

Answered

Comments

2 comments

  • Jaromił Najman
    Gurobi Staff Gurobi Staff

    Hi Hoda,

    m.setParam("TimeLimit", 300)       # Limit the solver runtime to 300 seconds

    Allowing a time limit of only 5 minutes seems very restrictive, given the large number of binary variables. But I think you set it only to experiment with other settings right?

    How can I configure Gurobi to find the first (not necessarily optimal) feasible solution more quickly?

    You should try the NoRelHeurTime parameter. This executes a special feasibility heuristic before the first root node solve. You should let it run as long as possible, but you would have to try-and-error a bit with this setting.

    Would upgrading to a machine with higher computational power (e.g., more cores, higher clock speed) significantly improve performance?

    Yes, more cores and a stronger CPU both help in finding feasible solutions. In particular the heuristic controlled by the NoRelHeurTime parameter profits from more cores and a stronger CPU.

    You could upgrade to Gurobi v12.0.0.

    You could try the ImproveStartTime parameter.

    If you have a good guess of what a feasible solution might look like you could provide a partial MIP Start, see How do I use MIP start?

    Best regards, 
    Jaromił

     

    0
  • David Torres Sanchez
    Gurobi Staff Gurobi Staff

    This is a pretty large problem. Upgrading your machine might help.

    How long does presolve take? You might want to limit this with PrePasses=1 then go straight into NoRel by setting NoRelHeurTime to the time limit. As you can see a heuristic solution has already been found.

    I would recommend removing the rest of the parameters and maybe even upgrading to v12.0.0.

    Cheers, 
    David

    0

Please sign in to leave a comment.