Decision Optimization

Decision Optimization

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

 View Only
  • 1.  Benders in Matlab, lambda signs?

    Posted Fri August 17, 2012 01:52 PM

    Originally posted by: Jonadee


    All,
    I am writing to ask for some advice on coding up Benders Decomposition. I am working in Matlab 2011a and using the Cplexlp function from Cplex 12.4 to solve problems. When I calculate the benders optimality cuts using the formulation in Birge&Louveaux, it seems like the signs of the cut coefficients are wrong.

    My second stage problem is in the form min qy| Wy<=h-Tx, with x being the first stage solutions. The cuts are then Q(x)>lambda^t*h-lambda^t*T, where ^t is transpose. The book formulation uses equality constraints, could this be the source of my woes? Any help is appreciated.

    I know they changed the sign of the lambda output from Cplex recently, are they now the negative of the shadow price, or the simply the shadow price?

    Thanks,
    Jon Donadee
    PhD Student, Carnegie Mellon University
    #CPLEXOptimizers
    #DecisionOptimization


  • 2.  Re: Benders in Matlab, lambda signs?

    Posted Fri August 17, 2012 01:57 PM

    Originally posted by: Jonadee


    Correction: Q(x)>lambda^t*h-lambda^t*T*x
    #CPLEXOptimizers
    #DecisionOptimization


  • 3.  Re: Benders in Matlab, lambda signs?

    Posted Wed August 22, 2012 12:41 PM

    Originally posted by: Eumpfenbach


    Not answering your question, but my experience with Bender's -- Use python with lazyconstraint callbacks. The functionality is not a part of Matlab yet. There is a python Bender's example distributed with cplex. If you are comfortable in Matlab, moving to python (with numpy) is essentially just learning the syntax differences (ie, () vs [] for arrays and such).
    #CPLEXOptimizers
    #DecisionOptimization