Decision Optimization

Decision Optimization

Delivers prescriptive analytics capabilities and decision intelligence to improve decision-making.


#Analytics
#DecisionOptimization
#DecisionOptimization
 View Only
  • 1.  Using Big M Method to linearize IF/THEN Constraints

    Posted 09/08/14 09:38 PM

    Originally posted by: Nodame


    I am trying to Linearize an IF/THEN constraint to improve Performance of cplex Solver (I am calling cplex from C#).

     

    I would like to define an Indicator Variable B:

    If x >0 then B = 1

    If x <=0 then B = 0.

    (where  B is Binary and x is real)

     

    My attempt for the second IF/THEN constraint was : 

    x <= B * M (where M is a very large Negative number). This works if x <=0, however, this Linear constraint does not hold anymore if x >0.

     

    I would like to have LINEAR constraint(s) that will do the job for both IF/THEN constraints.

     

     

     

     


    #CPLEXOptimizers
    #DecisionOptimization


  • 2.  Re: Using Big M Method to linearize IF/THEN Constraints

    Posted 09/09/14 06:06 PM

    You cannot do exactly what you want; the strict inequality x > 0 is a problem (mathematically, not just with CPLEX). What you can do is select a small positive epsilon (but large enough that it does not look like 0 when a bit of rounding error piles up) and use the constraints x <= M * B, x >= epsilon - M * (1 - B).


    #CPLEXOptimizers
    #DecisionOptimization


  • 3.  Re: Using Big M Method to linearize IF/THEN Constraints

    Posted 09/09/14 08:38 PM

    Originally posted by: Nodame


    Makes sense. Thanks!


    #CPLEXOptimizers
    #DecisionOptimization