Simplex Algorithm - Special Cases
Simplex Algorithm - Special Cases
SAURABH PANWAR
[SPECIAL CASES]
1
SIMPLEX ALGORITHM – SPECIAL CASES
There are four special cases that can arise in the use of the simplex method.
1. Degeneracy
2. Alternative optima
3. Unbounded solutions
4. Non-existing (or infeasible) solutions
2
SIMPLEX ALGORITHM – SPECIAL CASES (CONT.)
1. Degeneracy (no improvement in the objective function)
▪ Degeneracy in LPP arises when at any iteration of the simplex method more
than one variable is eligible to leave the basis, i.e., a tie for the minimum ratio
may occur and can be broken arbitrarily.
▪ When this happen, at least one basic variable will be zero in the next
iteration, and the new solution is said to be degenerate.
▪ This is in itself not a problem, but making simplex iterations from a degenerate
solution may give rise to cycling, meaning that after a certain number of
iterations without improvement in objective value the method may turn back to
the point where it started.
3
SIMPLEX ALGORITHM – SPECIAL CASES (CONT.)
Example: Solve the problem using Simplex Method
4
SIMPLEX ALGORITHM – SPECIAL CASES (CONT.)
The solution:
Convert the problem into standard form by introducing slack variables:
Maximize 𝑧 − 3𝑥1 − 9𝑥2 = 0
𝑥1 + 4𝑥2 +𝑠1 = 8
𝑥1 + 2𝑥2 + 𝑠2 = 4
𝑥1 , 𝑥2 , 𝑠1 , 𝑠2 ≥ 0
5
SIMPLEX ALGORITHM – SPECIAL CASES (CONT.)
So, the initial Tableau becomes:
Entering Variable Leaving Variable
Z 1 -3 -9 0 0 0
𝑠1 0 1 4 1 0 8 2
𝑠2 0 1 2 0 1 4 2
𝑥2 → Most negative z-row coefficient ⇒ Entering Variable
For leaving variable, a tie for the minimum ratio occur between 𝑠1 and 𝑠2 and
can be broken arbitrarily.
𝑠1 is the leaving variable
6
SIMPLEX ALGORITHM – SPECIAL CASES (CONT.)
On performing the pivotal operation, 2nd iteration of simplex method
is given as:
Entering Variable Leaving Variable
Basic Z 𝑥1 𝑥2 𝑠1 𝑠2 Solution
Z 1 0 0 3/2 3/2 18
𝑥2 0 0 1 ½ -1/2 2
𝑥1 0 1 0 -1 2 0
Optimal solution has been achieved with one basic variable 𝑥1 = 0. Objective
function value is same as that of previous iteration. Thus, no improvement in the
solution. However, this is not always the case.
8
SIMPLEX ALGORITHM – SPECIAL CASES (CONT.)
2. Alternative optima (Multiple Optimal Solutions)
If the z-row value (objective function row) for one or more non basic variables is 0
in the optimal tubule, alternate optimal solution exist.
9
SIMPLEX ALGORITHM – SPECIAL CASES (CONT.)
Example: Identify whether the problem has unique or multiple solutions
Subject to:
𝑥1 + 2𝑥2 ≤ 5
𝑥1 + 𝑥2 ≤4
𝑥1 , 𝑥2 ≥ 0
10
SIMPLEX ALGORITHM – SPECIAL CASES (CONT.)
The solution
Convert the problem into standard form by introducing slack variables:
Maximize 𝑧 − 2𝑥1 − 4𝑥2 = 0
Subject to:
𝑥1 + 2𝑥2 + 𝑠1 = 5
𝑥1 + 𝑥2 + 𝑠2 =4
𝑥1 , 𝑥2 , 𝑠1 , 𝑠2 ≥ 0
11
SIMPLEX ALGORITHM – SPECIAL CASES (CONT.)
Initial Tableau for the problem:
Entering Variable Leaving Variable
Z 1 -2 -4 0 0 0
𝑠1 0 1 2 1 0 4 2
𝑠2 0 1 1 0 1 5 5
12
SIMPLEX ALGORITHM – SPECIAL CASES (CONT.)
Optimal solution is 𝑧 = 10, 𝑥1 = 0, 𝑥2 = 5/2
Basis Z 𝑥1 𝑥2 𝑠1 𝑠2 Solution
Z 1 0 0 2 0 10
𝑥2 0 1/2 1 1/2 0 5/2
𝑠2 0 1/2 0 -1/2 1 3/2
13
SIMPLEX ALGORITHM – SPECIAL CASES (CONT.)
By looking at z-row coefficient of the nonbasic variable.
Leaving Variable
Entering Variable
Z 1 0 0 2 0 10
𝑥2 0 1/2 1 1/2 0 5/2 5
𝑠2 0 1/2 0 -1/2 1 3/2 3
14
SIMPLEX ALGORITHM – SPECIAL CASES (CONT.)
The second alternative optima is:
Basis Z 𝑥1 𝑥2 𝑠1 𝑠2 Solution
Z 1 0 0 2 0 10
𝑥2 0 0 1 1 -1 1
𝑠2 0 1 0 -1 2 3
15
SIMPLEX ALGORITHM – SPECIAL CASES (CONT.)
3. Unbounded solution
16
SIMPLEX ALGORITHM – SPECIAL CASES (CONT.)
Example: Solve the following LPP using Simplex Method
Maximize 𝐳 = 𝟐𝒙𝟏 + 𝒙𝟐
Subject to
𝑥1 − 𝑥2 ≤10
2𝑥1 ≤40
𝑥1 , 𝑥2 ≥ 0
17
SIMPLEX ALGORITHM – SPECIAL CASES (CONT.)
The solution
Convert the problem into standard form by introducing slack variables:
Maximize 𝐳 − 𝟐𝒙𝟏 − 𝒙𝟐 = 𝟎
Subject to
𝑥1 − 𝑥2 + 𝑠1 =10
2𝑥1 + 𝑠2 =40
𝑥1 , 𝑥2 , 𝑠1 , 𝑠2 ≥ 0
18
SIMPLEX ALGORITHM – SPECIAL CASES (CONT.)
Initial Tableau for the problem: Leaving Variable
Entering Variable
Z 1 -2 -1 0 0 0
𝑠1 0 1 -1 1 0 10 10
𝑠2 0 2 0 0 1 40 20
19
SIMPLEX ALGORITHM – SPECIAL CASES (CONT.)
Initial Tableau for the problem: Leaving Variable
Entering Variable
Z 1 0 -3 2 0 20
x1 0 1 -1 1 0 10 -
𝑠2 0 0 2 -2 1 20 10
Z 1 0 0 -1 3/2 50
x1 0 1 0 0 1/2 20 -
𝑠2 0 0 1 -1 1/2 10 -
Here, 𝑠1 is the entering variable but all the pivot column coefficients are
negative.
So, we cannot evaluate the ratio and there will be no leaving variable
Hence, solution space is unbounded, i.e. solution can increase indefinitely. 21
SIMPLEX ALGORITHM – SPECIAL CASES (CONT.)
4. Infeasible solution
▪ If at least one artificial variable is positive (basic variable) in the optimal table,
then the LPP has no feasible solution.
▪ This solution obviously does not occur when all the constraints are ≤ with non-
negative right hand side because all slack variables provide a feasible
solution.
▪ So, this situation occurs in Big M and Two Phase Method in which artificial
variable are used.
22
SIMPLEX ALGORITHM – SPECIAL CASES (CONT.)
Example, consider the following LPP problem
Maximization 𝐳 = 𝟑𝒙𝟏 + 𝟐𝒙𝟐
Subject to
2𝑥1 + 𝑥2 ≤2
3𝑥1 + 4𝑥2 ≥12
𝑥1 , 𝑥2 ≥ 0
SIMPLEX ALGORITHM – SPECIAL CASES (CONT.)
The solution:
Convert the problem into standard form by introducing slack, surplus and artificial
variables:
Maximize 𝑧 − 3𝑥1 − 2𝑥2 + 𝑀𝑎1 = 0
2𝑥1 + 𝑥2 +𝑠1 = 2
3𝑥1 + 4𝑥2 − 𝑠2 + 𝑎1 = 12
𝑥1 , 𝑥2 , 𝑠1 , 𝑠2 , 𝑎1 ≥ 0
Z 1 -3 -2 0 0 M 0
𝑠1 0 2 1 1 0 0 2
a1 0 3 4 0 -1 1 12
25
SIMPLEX ALGORITHM – SPECIAL CASES (CONT.)
Modify z-row as:
New z-row = Current z-row + (-M)*a1 - row
Leaving Variable
Entering Variable
𝑠1 0 2 1 1 0 0 2 2
a1 0 3 4 0 -1 1 12 3
Basic Z 𝑥1 𝑥2 𝑠1 𝑠2 𝒂𝟏 Solution
x2 0 2 1 1 0 0 2
a1 0 -5 0 -4 -1 1 4
All the z-row coefficients are non-negative but artificial variable is still in the basis
with positive value. Hence, the solution is infeasible. This is also referred as pseudo-
optimal solution.