Skip to main content

Is optimality guaranteed when using the Partition heuristic

Ongoing

Comments

5 comments

  • David Torres Sanchez
    Gurobi Staff Gurobi Staff

    Hi Martin,

    Is the heuristic only there to improve speeds, or does it change optimization overall, then?

    Indeed, the partition heuristic is just there to improve incumbent solutions and performance. It will not affect proving optimality (which also involves closing the dual bound which has nothing to do with the incumbent but more with cuts etc).

    Initially, I would suggest trying the variations you suggest to see if the partition heuristic helps, if not, you can try e.g. NoRel. And if that is not enough please open a ticket, we can of course also help!

    Cheers, 
    David

    1
  • Martin Koreček
    First Question
    First Comment

    Thanks for the quick answer!

    0
  • Martin Koreček
    First Question
    First Comment

    Hi David,

    follow-up question: how often is this heuristic run? Every time we get a new incumbent? Or only at the root?

    Is there a way to control this?

    Cheers,

    Martin

    0
  • David Torres Sanchez
    Gurobi Staff Gurobi Staff

    Hi Martin,

    Indeed, you can control this with the PartitionPlace parameter.

    Cheers, 
    David

    1
  • Martin Koreček
    First Question
    First Comment

    Hello again, David,

    I finally got to trying the two ways of splitting the variables into partitions, as mentioned in my original Q (as a sanity check, this splits the variables roughly uniformly).

    Surprisingly though, this lead to no change. All three options (no Partition set, Partition for each day, Partition for each employee) seem to reach almost the same gaps in the same amount of time. So much so that I'm thinking whether the partition heuristic is even run. Is it correct that it should be computed once at least one variable has the Partition attribute set? Is there a way to make Gurobi print some info whenever it computes the heuristic, so that I can see that it does?

    Cheers,

    Martin

    0

Please sign in to leave a comment.