Benders Optimality and Feasibility Cuts

Construct optimality cuts from optimal dual extreme points and feasibility cuts from dual extreme rays of the Benders subproblem, and decide which type of cut to add at each iteration.

Step 1 of 157%

Tutorial

The Subproblem Dual and Optimality Cuts

Benders decomposition attacks the mixed-integer problem

minx,y cTx+fTys.t.Ax+Byb, x0, yY\min_{x,y}\ c^T x + f^T y \quad \text{s.t.}\quad Ax + By \ge b,\ x \ge 0,\ y \in Y

by fixing the complicating variables yy and solving a linear subproblem in xx:

SP(y): minx cTxs.t. AxbBy, x0.\text{SP}(y):\ \min_x\ c^T x \quad \text{s.t.}\ Ax \ge b - By,\ x \ge 0.

Its LP dual is

DSP(y): maxu uT(bBy)s.t. ATuc, u0.\text{DSP}(y):\ \max_u\ u^T(b - By) \quad \text{s.t.}\ A^T u \le c,\ u \ge 0.

The dual feasible region U={u:ATuc, u0}U=\{u : A^T u \le c,\ u \ge 0\} does not depend on yy; only the dual objective does. Let its extreme points be u1,,uKu^1,\dots,u^K and its extreme rays be r1,,rJr^1,\dots,r^J.

When SP(y)\text{SP}(y) is feasible and bounded, the optimum of DSP(y)(y) is attained at some extreme point uu^*, and by strong duality the subproblem optimum equals (u)T(bBy)(u^*)^T(b - By).

Introducing a master variable η\eta to stand for the subproblem cost yields an optimality cut:

η(u)T(bBy).\eta \ge (u^*)^T(b - By).

This is a linear inequality in (y,η)(y, \eta) that the master problem must satisfy.

Tiny example. With b=[42]b = \begin{bmatrix}4\\2\end{bmatrix}, B=IB = I, and u=[31]u^* = \begin{bmatrix}3\\1\end{bmatrix},

(u)T(bBy)=3(4y1)+1(2y2)=143y1y2,(u^*)^T(b - By) = 3(4 - y_1) + 1(2 - y_2) = 14 - 3y_1 - y_2,

so the optimality cut is η143y1y2\eta \ge 14 - 3y_1 - y_2.

navigate · Enter open · Esc close · ⌘K/Ctrl K toggle