Skip to main content

How to model the constraint for a minimum consecutive running time of a machine?

Answered

Comments

3 comments

  • Ronald van der Velden
    • Gurobi Staff Gurobi Staff

    Hi San,

    Here's a general idea - let me know if you get stuck figuring out the details.

    You could add another binary for each hour, indicating whether the plant is switched on at the start of that hour. Each of those binaries can then be linked to the five existing binaries for the corresponding hours (e.g. link the "switch on at t=4" to "plant on at t=4,5,6,7,8"). Most likely while you try and come up with the right constraints, you'll notice that you need binaries for switching off at a specific hour too... but it's more fun if you find out for yourself, why that variable might be necessary.

    You can find inspiration here in our modeling example for power generation.

    Kind regards,
    Ronad

    0
  • Farhad Anvari Azar
    • Gurobi-versary
    • First Comment
    • First Question

    Hi Ronald,

    Can we do this without binaries? The binaries can be quite costly when we run large models (nearly 1000 power plants, with a horizon of 24hourx90days).

    Thanks,

     

    0
  • Riley Clement
    • Gurobi Staff Gurobi Staff

    Hi Farhad,

    Jumping in for Ronald here as this question is closely related to work I did during postgrad.

    The problem of consecutive run time can be formulated in a way which has a nice property that the solutions to the linear relaxation are naturally integer feasible.  This means the binary decision variables can be relaxed to continuous variables.  However typically in real-world problems there are additional constraints which destroy this nice property, and so binary variables need to remain binary.  This particular formulation is still worthwhile though as it gives you a strong base to build the additional modelling structures off.

    Since you are a commercial customer I am happy to give you more details of this in a call, so let me know if this interests you and I'll open up a ticket through our Help Center to continue the discussion.

    - Riley

    0

Please sign in to leave a comment.