Selecting the Entering Variable

How to choose which nonbasic variable enters the basis at each simplex iteration, using Dantzig's rule for both minimization and maximization, Bland's rule to break ties and prevent cycling, and reading reduced costs directly from a simplex tableau.

Step 1 of 157%

Tutorial

Dantzig's Rule for Minimization

When the current basic feasible solution (BFS) is not optimal, the simplex method improves it by bringing one nonbasic variable into the basis. The choice of which nonbasic variable to bring in is called selecting the entering variable.

For a minimization LP, the reduced cost cˉj\bar c_j of a nonbasic variable xjx_j tells us how the objective changes per unit increase of xjx_j. If cˉj<0,\bar c_j < 0, increasing xjx_j decreases the cost, so xjx_j is a candidate to enter the basis.

Dantzig's rule (minimization). Among all nonbasic variables with cˉj<0,\bar c_j < 0, select as the entering variable the one with the most negative reduced cost:

k  =  argminjNcˉj,k \;=\; \arg\min_{j \,\in\, N} \bar c_j,

where NN is the set of nonbasic indices. This maximizes the rate of objective decrease per unit increase of the entering variable.

For instance, suppose the nonbasic variables have reduced costs

cˉ1=4,cˉ3=2,cˉ5=7,cˉ6=1.\bar c_1 = 4, \quad \bar c_3 = -2, \quad \bar c_5 = -7, \quad \bar c_6 = 1.

The eligible variables (those with negative reduced cost) are x3x_3 and x5.x_5. The most negative is cˉ5=7,\bar c_5 = -7, so x5x_5 is selected as the entering variable.

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