Skip to main content

SOS Type I

Answered

Comments

3 comments

  • Official comment
    Simranjit Kaur
    Gurobi Staff Gurobi Staff
    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?.
  • Tobias Achterberg
    Gurobi Staff Gurobi Staff

    SOS1 constraints are handled via branching. If you have a solution that would be feasible without the SOS1 constraint but that violates this SOS1 constraint (i.e., both z and s are non-zero), then Gurobi creates two child nodes, setting z = 0 in one child and s = 0 in the other child.

    If z is binary and s has a finite upper bound u, i.e., z \in {0,1} and 0 <= s <= u, then Gurobi may also translate this SOS1 constraint into a linear constraint using a big-M formulation, namely

       s <= (1-z)u

    which means

       s + zu <= u.

    0
  • Ebru Angun
    Gurobi-versary
    Conversationalist
    Curious

    Thank you

    0

Post is closed for comments.