Skip to main content

Query which binary variables have known values during optimization in order to add additional constraints

Answered

Comments

3 comments

  • Jaromił Najman
    Gurobi Staff Gurobi Staff

     If it doesn't exist yet, it would be a cool feature to have. Having binary variables x_1, x_2, ... Gurobi does rule out values for variables during optimization, right?

    Correct, Gurobi can fix some variables through branching, probing, or other heuristics. This feature will most likely not be implemented, because it would require Gurobi to provide all available branching information at a given node.

    For example, if it has decided that there's no feasible solution with x_1 = 0 or that there is at least one optimal solution with x_1 = 1, then how can I help Gurobi with additional constraints based on that new information?

    You can use indicator constraints for such cases. You can then model \(x_1=0 \rightarrow a^T x \leq b\).

    Best regards, 
    Jaromił

    0
  • Brannon King

    Surely Gurobi's nodes know both their parent and their variable that they branched on, no?

    0
  • Jaromił Najman
    Gurobi Staff Gurobi Staff

    Surely Gurobi's nodes know both their parent and their variable that they branched on, no?

    Correct. However, the issue is not about having the information at hand but about disclosing parts of Gurobi's IP. I cannot tell whether we decide to disclose branching information in the future but currently there are no plans for this.

    0

Please sign in to leave a comment.