6.1 No Feasible Solution: Lecture 6: Special Cases in Simplex Method
6.1 No Feasible Solution: Lecture 6: Special Cases in Simplex Method
6.1 No Feasible Solution: Lecture 6: Special Cases in Simplex Method
In terms of the methods of artificial variable techniques, the solution at optimality could
include one or more artificial variables at a positive level (i.e. as a non-zero basic variable).
In such a case the corresponding constraint is violated and the artificial variable cannot be
driven out of the basis. The feasible region is thus empty.
Example 6.1.1. Consider the following linear programming problem.
Max x0 = 2x1 + x2
subject to −x1 + x2 ≥ 2
x1 + x2 ≤ 1
x1 , x2 ≥ 0
Using a surplus variable x3 , an artificial variable x4 and a slack variable x5 , the aug-
mented system is:
−x1 + x2 −x3 + x4 = 2
x1 + x2 +x5 = 1
x0 − 2x1 − x2 + M x4 = 0
Now the columns corresponding to x4 and x5 form an identity matrix. In tableau form,
we have
x1 x2 x3 x4 x5 b
x4 −1 1 −1 1 0 2
x5 1 1 0 0 1 1
x0 −2 −1 0 M 0 0
x1 x2 x3 x4 x5 b
x4 −1 1 −1 1 0 2
x5 1 1∗ 0 0 1 1
x0 −2 + M −1 − M M 0 0 −2M
6-1
Lecture 6: Special Cases in Simplex Method 6-2
x1 x2 x3 x4 x5 b
x4 −2 0 −1 1 −1 1
x2 1 1 0 0 1 1
x0 −1 + 2M 0 M 0 1+M 1−M
Since M is a very large number, −1+2M is positive. Hence all entries in the x0 row are
nonnegative. Thus we have reached an optimal point. However, we see that the artificial
variable x4 = 1, which is not zero. That means that the solution just found is not a solution
to our original problem. Indeed the x that satisfies Ax + Ixa = b with xa 6= 0 is not a
solution to Ax = b. Figure 6.1.1 shows that the feasible region to the problem is empty.
Theorem 1. Consider an LPP in feasible canonical form. If in the simplex tableau, there exists
a nonbasic variable xj such that yij ≤ 0 for all i = 1, 2, · · · , m, i.e. all entries in the xj column
are non positive, then the feasible region is unbounded. If moreover that zj − cj < 0, then there
exists a feasible solution with at most m + 1 variables nonzero and the corresponding value of
the objective function can be set arbitrarily large.
Proof. Let xB be the current BFS with BxB = b. Let the columns of B be denoted by bi .
Then we have
m
X
BxB = xBi bi = b.
i=1
Lecture 6: Special Cases in Simplex Method 6-3
m
X
aj = Byj = yij bi .
i=1
m
X
b = xBi bi − θaj + θaj
i=1
Xm m
X
= xBi bi − θ yij bi + θaj
i=1 i=1
Xm
= (xBi − θyij )bi + θaj .
i=1
Moreover, the value of xj , which is equal to θ, can be set arbitrarily large, indicating
that the feasible region is unbounded in the xj direction.
If moreover that cj > zj , then the value of the objective function can be set arbitrarily
large since
m
X
ẑ = (xBi − θyij )cBi + θcj
i=1
m
X m
X
= xBi cBi − θ yij cBi + θcj
i=1 i=1
= cB xB − θcTB yj + θcj
= z − θzj + θcj
= z + θ(cj − zj ).
Example 6.2.1. This is an example where the feasible region and the optimal value of the
objective function are unbounded. Consider the LPP
Lecture 6: Special Cases in Simplex Method 6-4
Max x0 = 2x1 + x2
subject to x1 − x2 ≤ 10
2x1 − x2 ≤ 40
x1 , x2 ≥ 0
x1 x2 x3 x4 b
x3 1 −1 1 0 10
x4 2 −1 0 1 40
x0 −2 −1 0 0 0
No positive ratio exists in x3 column. Hence x3 can be increased without bound while
maintaining feasibility. It is evident from Figure 6.2.1.
Example 6.2.2. The following is an example where the feasible region is unbounded yet
the optimal value is bounded. Consider the LPP
x1 x2 x3 x4 b
x3 2∗ −1 1 0 2
x4 1 0 0 1 4
x0 −6 2 0 0 0
x1 x2 x3 x4 b
x1 1 − 21 1
2 0 1
1∗
x4 0 2 − 21 1 3
x0 0 −1 3 0 6
x1 x2 x3 x4 b
x1 1 0 0 1 4
x2 0 1 −1 2 6
x0 0 0 2 2 12
Optimal tableau
Zero reduced cost coefficients for non-basic variables at optimality indicate alternative opti-
mal solutions, since if we pivot in those columns, x0 value remains the same after a change
of basis for a different BFS. Notice that simplex method yields only the extreme point opti-
mal (BFS) solutions. More generally, the set of alternative optimal solutions is given by the
convex combination of optimal extreme point solutions. Suppose x1 , x2 , · · · , xp are extreme
point optimal solutions, then x = pk=1 λk xk , where 0 ≤ λk ≤ 1 and pk=1 λk = 1 is also
P P
p
X p
X
cT x = λk cT xk = λk z 0 = z 0 .
k=1 k=1
Any (x1 , x2 ) = (1, k) for k being any positive number is a feasible solution.
x1 x2 x3 x4 b
x3 2 7∗ 1 0 21
x4 7 2 0 1 21
x0 −4 −14 0 0 0
x1 x2 x3 x4 b
2 1
x2 7 1 7 0 3
45 ∗
x4 7 0 − 27 1 15
x0 0 0 2 0 42
Lecture 6: Special Cases in Simplex Method 6-7
x1 x2 x3 x4 b
7 2 7
x2 0 1 45 − 45 3
2 7 ∗ 7
x1 1 0 − 45 45 3
x0 0 0 2 0 42
Thus all convex combinations of the points [0, 3, 0, 15]T and [7/3, 7/3, 0, 0]T are optimal
feasible solutions.
Degenerate basic solutions are basic solutions with one or more basic variables at zero level.
Degeneracy occurs when one or more of the constraints are redundant.
Lecture 6: Special Cases in Simplex Method 6-8
Max x0 = 2x1 + x2
Subject to 4x1 + 3x2 ≤ 12
4x1 + x2 ≤ 8
4x1 − x2 ≤ 8
x1 , x2 ≥ 0
x1 x2 x3 x4 x5 b
x3 4 3 1 0 0 12
x4 4∗∗ 1 0 1 0 8
x5 4∗ −1 0 0 1 8
x0 −2 −1 0 0 0 0
x1 x2 x3 x4 x5 b x1 x2 x3 x4 x5 b
x3 0 4 1 0 −1 4 x3 0 2∗∗ 1 −1 0 4
x4 0 2∗ 0 1 −1 0 x1 1 1/4 0 1/4 0 2
x1 1 −1/4 0 0 1/4 2 x5 0 −2 0 −1 1 0
x0 0 −3/2 0 0 1/2 4 x0 0 −1/2 0 1/2 0 4
Degenerate Vertex {x4 = 0 and basic} Degenerate Vertex {x5 = 0 and basic}
↓ ↓
x1 x2 x3 x4 x5 b x1 x2 x3 x4 x5 b
x3 0 0 1 −2 1∗ 4 x2 0 1 1/2 −1/2 0 2
x2 0 1 0 1/2 −1/2 0
x1 1 0 −1/8 3/8 0 3/2
x1 1 0 0 1/8 1/8 2 x5 0 0 1 −2 1 4
x0 0 0 0 3/4 −1/4 4 x0 0 0 1/4 1/4 0 5
x1 x2 x3 x4 x5 b
x5 0 0 1 −2 1 4
x2 0 1 1/2 −1/2 0 2
x1 1 0 −1/8 3/8 0 3/2
x0 0 0 1/4 1/4 0 5
Lecture 6: Special Cases in Simplex Method 6-9
In figure 6.4.1, we see that the degenerate vertex V can be represented either by
{x2 = 0, x4 = 0}, {x4 = 0, x5 = 0} or {x2 = 0, x5 = 0}
We note that degeneracy guarantees the existence of more than one feasible pivot
element, i.e. tie-ratios exist. For example, in the first tableau, the ratios for variables x4 and
x5 are both equal to 2.
When an LP is degenerate, i.e. its feasible region possesses degenerate vertices, cycling
may occur as follows: Suppose the current basis is B and such that this basis B yields a
degenerate BFS. Since moving from a degenerate vertex (BFS) to another degenerate vertex
does not affect (i.e. increase or decrease) the objective function value. It is then possible
for the simplex procedure to start from the current (degenerate) basis B, and after some
p iterations, to return to B with no change in the objective function value as long as all
vertices in-between are degenerate. This means that a further p iterations will again bring
us back to this same basis B. The process is then said to be cycling.
Example 6.4.2.
Max x0 = 20x1 + 21 x2 − 6x3 + 34 x4
Subject to x1 ≤ 2
8x1 − x2 + 9x3 + 41 x4 ≤ 11
12x1 − 12 x2 + 3x3 + 21 x4 ≤ 24
x2 ≤ 1
x1 , x2 , x3 , x4 ≥ 0
Tableau 0:
Lecture 6: Special Cases in Simplex Method 6-10
x1 x2 x3 x4 x5 x6 x7 x8 b
x5 1∗ 0 0 0 1 0 0 0 2
x6 8 −1 9 1/4 0 1 0 0 16
x7 12 −1/2 3 1/2 0 0 1 0 24
x8 0 1 0 0 0 0 0 1 1
x0 −20 −1/2 6 −3/4 0 0 0 0 0
Tableau 1:
x1 x2 x3 x4 x5 x6 x7 x8 b
x1 1 0 0 0 1 0 0 0 2
x6 0 −1 9 1/4∗ −8 1 0 0 0
x7 0 −1/2 3 1/2 −12 0 1 0 0
x8 0 1 0 0 0 0 0 1 1
x0 0 −1/2 6 −3/4 20 0 0 0 40
Tableau 2:
x1 x2 x3 x4 x5 x6 x7 x8 b
x1 1 0 0 0 1 0 0 0 2
x4 0 −4 36 1 −32 4 0 0 0
x7 0 3/2 −15 0 4∗ −2 1 0 0
x8 0 1 0 0 0 0 0 1 1
x0 0 −7/2 33 0 −4 3 0 0 40
Tableau 3:
x1 x2 x3 x4 x5 x6 x7 x8 b
x1 1 −3/8 15/4 0 0 1/2 −1/4 0 2
x4 0 8∗ −84 1 0 −12 8 0 0
x5 0 3/8 −15/4 0 1 −1/2 1/4 0 0
x8 0 1 0 0 0 0 0 1 1
x0 0 −2 18 0 0 1 1 0 40
Tableau 4:
Lecture 6: Special Cases in Simplex Method 6-11
x1 x2 x3 x4 x5 x6 x7 x8 b
x1 1 0 −3/16 3/64 0 −1/16 1/8 0 2
x2 0 1 −21/2 1/8 0 −3/2 1 0 0
x5 0 0 3/16∗ −3/64 1 1/16 −1/8 0 0
x8 0 0 21/2 −1/8 0 3/2 −1 1 1
x0 0 0 −3 1/4 0 −2 3 0 40
Tableau 5:
x1 x2 x3 x4 x5 x6 x7 x8 b
x1 1 0 0 0 1 0 0 0 2
x2 0 1 0 −5/2 56 2∗ −6 0 0
x3 0 0 1 −1/4 16/3 1/3 −2/3 0 0
x8 0 0 0 5/2 −56 −2 6 1 1
x0 0 0 0 −1/2 16 −1 1 0 40
Tableau 6:
x1 x2 x3 x4 x5 x6 x7 x8 b
x1 1 0 0 0 1 0 0 0 2
x6 0 1/2 0 −5/4 28 1 −3 0 0
x3 0 −1/6 1 1/6 −4 0 1/3∗ 0 0
x8 0 1 0 0 0 0 0 1 1
x0 0 1/2 0 −7/4 44 0 −2 0 40
Tableau 7:
x1 x2 x3 x4 x5 x6 x7 x8 b
x1 1 0 0 0 1 0 0 0 2
x6 0 −1 9 1/4∗ −8 1 0 0 0
x7 0 −1/2 3 1/2 −12 0 1 0 0
x8 0 1 0 0 0 0 0 1 1
x0 0 −1/2 6 −3/4 20 0 0 0 40
Lecture 6: Special Cases in Simplex Method 6-12
Note that Tableau 1 is the same as Tableau 7. Thus starting from the basis B =
{x1 , x6 , x7 , x8 }, we have moved to {x1 , x4 , x7 , x8 }, to {x1 , x4 , x5 , x8 }, to {x1 , x2 , x5 , x8 }, to
{x1 , x2 , x3 , x8 } to {x1 , x6 , x3 , x8 } and finally back to {x1 , x6 , x7 , x8 } in six iterations, or a cy-
cle of period p = 6. To break the cycle, bring in x4 and remove x7 . Then the next iteration
yields the optimal solution x∗ = [2, 1, 0, 1, 0, 3/4, 0, 0]T with x∗0 = 41.25.
To get out of cycling, one way is to try a different pivot element. This is done as
indicated in our example above. Another way is to use Bland’s rule for selecting entering
and leaving basic variables. First, the variables are ordered arbitrarily from x1 to xn without
loss of generality. Of all the nonbasic variables with negative coefficients in the objective
function row, the one with the smallest index is chosen to enter. The leaving basic variables
is the variable with the smallest index of all the variables who tie in the usual minimum
ratio test.