Adding a New Variable to an Optimal LP

When a new decision variable is added to an LP that has already been solved to optimality, the reduced cost — computed from the new variable's profit coefficient and constraint column together with the current shadow prices — determines whether the existing optimal basis remains optimal or whether the new variable should enter the basis. The same calculation gives the break-even profit at which the new variable becomes worth introducing.

Step 1 of 157%

Tutorial

Introduction

After an LP has been solved to optimality, suppose a new decision variable xjx_j is added — for instance, a new product or activity becomes available. We ask whether the current optimal basis is still optimal, or whether the new variable should enter the basis.

The test uses the shadow prices (dual values) of the original optimal solution. Let the LP be a maximization with mm constraints having shadow prices y1,y2,,ymy_1, y_2, \ldots, y_m, and let the new variable xjx_j have profit coefficient cjc_j and constraint column

Aj=[a1ja2jamj].A_j = \begin{bmatrix} a_{1j} \\ a_{2j} \\ \vdots \\ a_{mj} \end{bmatrix}.

The reduced cost of xjx_j is

cˉj=cji=1myiaij=cjyTAj.\bar{c}_j = c_j - \sum_{i=1}^m y_i \, a_{ij} = c_j - \mathbf{y}^T A_j.

Optimality test (maximization).

  • If cˉj0\bar{c}_j \leq 0: the current solution is still optimal — do not introduce xjx_j.
  • If cˉj>0\bar{c}_j > 0: introducing xjx_j improves the objective — xjx_j should enter the basis.

For example, suppose an LP has shadow prices y1=3y_1 = 3 and y2=2y_2 = 2, and a new variable x3x_3 is proposed with c3=25c_3 = 25 and A3=[45].A_3 = \begin{bmatrix} 4 \\ 5 \end{bmatrix}. Then

cˉ3=25(3)(4)(2)(5)=251210=3>0,\bar{c}_3 = 25 - (3)(4) - (2)(5) = 25 - 12 - 10 = 3 > 0,

so x3x_3 should enter the basis.

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