Motivating Duality: Bounding the Primal Objective

An informal introduction to LP duality: we derive upper bounds on a primal max-LP by taking non-negative linear combinations of the constraints. Requiring the combined coefficient vector to dominate the primal objective gives a guaranteed upper bound, and minimizing that bound is precisely the dual LP.

Step 1 of 157%

Tutorial

Bounding the Primal by Scaling a Constraint

The primal linear program in standard form is

max cTxsubject toAxb, x0.\max\ \mathbf{c}^T \mathbf{x} \quad \text{subject to} \quad A\mathbf{x} \leq \mathbf{b},\ \mathbf{x} \geq \mathbf{0}.

Solving such an LP exactly can be expensive. A useful weaker question: can we cheaply produce an upper bound on the optimal objective value?

The simplest tactic is to scale a constraint. Take the ii-th constraint, aiTxbi.\mathbf{a}_i^T \mathbf{x} \leq b_i. For any yi0,y_i \geq 0, multiplying preserves the direction of the inequality:

yiaiTxyibi.y_i\, \mathbf{a}_i^T \mathbf{x} \leq y_i b_i.

We require yi0y_i \geq 0 because a negative multiplier would flip \leq to .\geq.

If the scaled coefficient vector dominates c\mathbf{c} componentwise, i.e., yiaic,y_i\, \mathbf{a}_i \geq \mathbf{c}, then since x0,\mathbf{x} \geq \mathbf{0},

cTxyiaiTxyibi.\mathbf{c}^T \mathbf{x} \leq y_i\, \mathbf{a}_i^T \mathbf{x} \leq y_i b_i.

Therefore yibiy_i b_i is a guaranteed upper bound on the primal objective at every feasible x\mathbf{x} — and hence on the optimal value.

For example, for max 2x1+5x2\max\ 2x_1 + 5x_2 subject to 3x1+10x230, x0,3x_1 + 10x_2 \leq 30,\ \mathbf{x} \geq \mathbf{0}, choose y1=1.y_1 = 1. Since 32,3 \geq 2, 105,10 \geq 5, and x0,\mathbf{x} \geq \mathbf{0},

2x1+5x23x1+10x230.2x_1 + 5x_2 \leq 3x_1 + 10x_2 \leq 30.

The optimal value is at most 30.30.

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