• Activate a constraint only if value of a variable is above a threshold

    From varun7rs@gmail.com@21:1/5 to All on Fri Jul 29 02:24:16 2016
    Hi all,

    I've been working on a MILP which considers the following knapsack constraint. I modified the RHS to include a continuous variable \mu_{fl} \in [0,1], which indicates the utilisation level of the knapsack.

    \sum_{d\in D}x^{d}_{fl}*r^{d} \le \mu_{fl} c_{fl} \forall fl\in FL --(1)

    x^{d}_{fl} \in {0,1}
    r^d - resource demands


    Now, what I intend to do is activate a processing delay constraint incase the knapsack utliisation exceeds a threshold set by us

    So if \mu_{fl} > \mu_{thres} (we set it to 0.9)
    then \sum_{fl\in FL}x^{d}_{fl}*del_{fl} \leq del_{d} \forall d\in D --(2)

    I tackled this in a not so elegant way

    Firstly, I defined a binary variable that is activated in-case the utilisation of the knapsack reaches the threshold level. Then I replaced the binary variable in constraint 2 with the newer binary variable.

    z_{fl} \in {0,1}

    z_{fl} \ge \mu_{fl} - 0.9 --(3) ( we set \mu_{thres} to 0.9 )

    \sum_{fl\in FL}z_fl*del_{fl} \leq del_{d} \forall d\in D --(4)

    But as I said the approach isn't so elegant. So, could any of you suggest an alternate formulation to my problem?

    Thanks a lot

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Paul@21:1/5 to All on Fri Jul 29 12:29:48 2016
    First, I think your equation (4) contains at least one error. The x factor from (2) went missing.

    Second, your statement of the condition in (2) does not make sense. You are trying to turn on (or off) a constraint involving the summation over fl indices based on the value of \mu_{fl} for a single fl index (which one?).

    So the first step is to repair/clarify the question. You might want to post the revised question on OR Exchange (https://www.or-exchange.org/), which gets a lot more traffic these days than sci.op-research does.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)