You are on page 1of 8

AMNA ALI

Sensitivity Analysis and Post-Optimality Analysis

Simplex Method and Sensitivity Analysis


Sensitivity and post-optimality analysis
In LP, the parameters of the model can change within certain limits without causing the
Optimal solution to change. This is referred to as Sensitivity analysis.
In contrast, Post-optimality analysis deals with determining the new Optimal solution
resulting from making targeting changes in the input data.

Sensitivity analysis
In LP model, parameters are usually not exact. With sensitivity analysis, one can ascertain
the impact of this uncertainty on the quality of the optimum solution. For example, if sensitivity
analysis reveals that the optimum remains the same for a ±10% change in unit ‘Ci’, on cane
conclude that the solution is more robust than in case where indifference range is only ±10
percent.
There are two major types of sensitivity analysis:
(i) Optimality Range Analysis or Objective-Function Range Analysis
(ii) Feasibility analysis or Right Hand Side (RHS) Range Analysis
Taking an example:
TOYCO assembles three types of toys - trains, trucks and cars - using three operations.
The limits on the available times for the three operations are 430, 460 and 420 minutes,
respectively, and the revenue per unit of train, truck and car are $3, $2 and $5, respectively. The
assembly times for train per three operations are 1, 3 and 1 minutes, respectively. The
corresponding times per truck and car are (2, 0, 4) and (1, 2, 0) minutes (where a zero time
indicates that the operation is not used).
Letting X1, X2 and X3 represent the daily number of units assembled of trains, trucks and
cars, respectively, the associated LP model is given as:
Maximize Z = 3 X1 + 2 X2 + 5 X3
Subject to:
X1 + 2 X2+ X3 < 430 (operation 1)
3 X1 + 2 X3 < 460 (operation 2)
X1 + 4 X2 < 420 (operation 3)
X1, X2, X3 > 0
Using X4, X5 and X6 as the slack variables for the constraints of operations 1, 2 and 3,
respectively, the optimum tableau is:
Basic X1 X2 X3 X4 X5 X6 Solution
Z 4 0 0 1 2 0 1350
X2 -1/4 1 1 ½ -1/4 0 100
X3 3/2 0 0 0 ½ 0 230
X6 2 0 0 -2 1 1 20
The result from above tableau can be summarized, as follows.
X* = (X1, X2, X3) = (0, 100, 230)
Z* = $1350
S = (S1, S2, S3) = (0, 0, 20)  Slacks

1
AMNA ALI
Sensitivity Analysis and Post-Optimality Analysis

Y = (Y1, Y2, Y3) = (1, 2, 0)  Shadow prices

If we further investigate into the output of this problem, we get data on optimality and feasibility
ranges.
Optimality Ranges (Ci) Reduced Cost
For X1 (Trains): -∞ < 3 < 7 4.00
X2 (Trucks): 0 < 2 < 10 0.00
X3 (Cars): 2.33 < 5 < ∞ 0.00

Feasibility Ranges (bi) Dual Price


Operation 1: 230 < 430 < 440 1.00
Operation 2: 440 < 460 < 860 2.00
Operation 3: 400 < 420 < ∞ 0.00

Optimality Ranges
The above reported data on ‘Optimality Ranges’ suggest:
1) Any one unit addition of X1 will reduce value of Z by $ 4.00 (Reduced cost); note X1 is
already zero, due to the same reason.
2) Range for C1 (revenue from X1 ) is (-∞ < C1< 7), which indicates that any value of C1, less
than 7, will not help X1 to enter into ‘optimum’ solution.
3) The definition of ‘Reduced Cost’ is:

Reduced cost = (cost of consumed resources per unit output) – (revenue per unit
output)
4) Sub paragraphs (2) and (3) suggest that X1 (presently unprofitable at C1 = $3.00) can be
made profitable in one of the two ways; either increase its revenue (above 7) or reduce its
cost. In real life, the former option is not valid as unit price of output is determined in the
market, the later option may be implemented through adopting efficient way of
production.
5) In summary, the ‘optimality ranges’ show that the current solution remain optimal (does
not change) until one keeps changes in Ci within indicated ranges.

Feasibility Ranges
In the same token, one can interpret the ‘Feasibility Ranges’, namely:
1) The given ‘Dual Prices’ suggest that one minute increase in Operation 1 will increase
value of Z by $1.00; similarly, one minute increase in Operations 2 and 3 will increase
value of Z by $2.00 and $0.00, respectively.
2) On the basis of values of dual prices, it seems better to give priority to increase time on
Operation 2, relative to other two operations.
3) ‘Feasibility Ranges’ suggest that one should remain within specified ranges to have
‘optimum’ solution unchanged; to remain within ranges should mean to keep dual prices
and optimal solution valid.

Concluding Remarks:
In both ‘objective function optimality’ and ‘RHS feasibility analysis’ cases, the current

2
AMNA ALI
Sensitivity Analysis and Post-Optimality Analysis

solution ranges have prime importance. Changes outside these ranges would need to be
interpreted through ‘Post-Optimality Analysis’.

POST-OPTIMALITY ANALYSIS

Sensitivity and Post-Optimality Analysis


As stated, in LP, the parameters of the model can change within certain limits without
causing the Optimal solution to change. This is referred to as Sensitivity analysis. While in
contrast, Post-optimality analysis deals with determining the new Optimal solution resulting
from making targeting changes in the input data.

Post-Optimality Analysis
While in sensitivity analysis, one deals with the sensitivity of the optimum solution by
determining the ranges of different parameters (Ci & bi ). In post-optimality analysis, generally
the following types of cases are dealt:
a) If parameters change, but current solution remains optimal and feasible, then no
further action is needed.
b) If parameters change & current solution becomes infeasible, use dual simplex to
recover feasibility.
c) If parameters change & current solution becomes non-optimal, use primal simplex to
recover optimality.
d) If parameters change & current solution becomes both non-optimal and infeasible,
use generalized simplex method to obtain new solution.

Again, there are two types of post-optimality changes:


a) Changes affecting feasibility
b) Change affecting optimality

Changes Affecting Feasibility


Feasibility of the current optimum solution may be affected in two situations.
i) When RHS of the constraints is changed
ii) A new constraint is added

In these situations, infeasibility occurs when at least one element of RHS of final optimal
tableau becomes negative.

Changes in RHS
The effect of the targeted changes in values of bi can be checked, using the formula:
XB = B-1 b (where B-1 = B inverse is matrix given under S-variables)

Let’s recall the example of TOYCO and its Final (Optimal) tableau:
TOYCO assembles three types of toys - trains, trucks and cars - using three operations.
The limits on the available times for the three operations are 430, 460 and 420 minutes,

3
AMNA ALI
Sensitivity Analysis and Post-Optimality Analysis

respectively, and the revenue per unit of toy-train, truck and car are $3, $2 and $5, respectively.
The assembly times per three operations are 1, 3 and 1 minutes, respectively. The corresponding
times per train and per car are (2, 0, 4) and (1, 2, 0) minutes (a zero time indicates that the
operation is not used).
Letting X1, X2 and X3 represent the daily number of units assembled of trains, trucks and
cars, respectively, the associated LP model is given as:
Maximize Z = 3 X1 + 2 X2 + 5 X3
Subject to:
X1 + 2 X2+ X3 < 430 (operation 1)
3 X1 + 2 X3 < 460 (operation 2)
X1 + 4X2 < 420 (operation 3)
X1, X2, X3 > 0
Using X4, X5 and X6 as the slack variables for the constraints of operations 1, 2 and 3,
respectively, the optimum tableau is:
Basic X1 X2 X3 X4 X5 X6 Solution
Z 4 0 0 1 2 0 1350
X2 -1/4 1 1 ½ -1/4 0 100
X3 3/2 0 0 0 ½ 0 230
X6 2 0 0 -2 1 1 20

The result from above tableau can be summarized, as follows.


X* = (X1, X2, X3) = (0, 100, 230)
Z* = $1350
S = (S1, S2, S3) = (0, 0, 20)  Slacks
Y = (Y1, Y2, Y3) = (1, 2, 0)  Shadow prices

Checking whether Matrix Algebraic formula (XB = B-1 b) works; putting information from
the Optimal tableau in the formula:

XB = B-1b

XB B-1 b

Formula (XB = B-1b) works because:


X2 = (0.5x430)+(-.25x460)+(0.0x420) = 100
X3 = (0.0x430)+(0.5x460)+(0.0x420) = 230
X6 = (-2.0x430)+(1.0x460)+(1.0x420) = 20

Post-optimality analysis:
Checking the idea whether shifting Slack (S3= 20 minutes), from Operation 3 to
Operation 1, will work:
We change b1 = 430  450 and b3 = 420  400, then incorporating new value of bi in

4
AMNA ALI
Sensitivity Analysis and Post-Optimality Analysis

formula:
XB = B-1b

AFTER ADDING VALUES IN FORMULA RHS CHANGES FROM 100 TO 110 AND
FROM 20 TO -40.

The intended change (shifting Slack from Operation 3 to Operation 1: b1 = 430  450 and
b3 = 420  400) did not work as original Optimal solution became Infeasible (as reflect from
the value of X6, which turned out to be negative in new solution).

Let’s check this result using LP software TORA.

Resolving with new value (450, 460, 400) , we succeed in getting new Optimal/Feasible
solution, namely:

Basic X1 X2 X3 X4 X5 X6 Solution
Z 5 0 0 0 5/2 1/2 1350
X2 1/4 1 1 0 0 1/4 100
X3 3/2 0 0 0 1/2 0 230
X4 -1 0 0 1 -1/2 -1/2 20

Note: The optimum solution in terms of X1 , X2 & X3 remain the same as in original, indicating
that the targeted change is not advantageous because the targeted change has only shifted Slack =
20 of Operation 3 to Slack = 20 in Operation 1
--------------------------------------------------------------------------------------------------------------------

Let’s now check the effect of shifting of Slack = 20 from Operation 3 to Operation 2;
putting the relevant information in formula:
XB = B-1 b

All Xi are positive; hence change is feasible. Now check Z* of new


solution from final tableau; it is Z* = 1390 as compared to that of
original Z* =1350.

______________________________________________________________________________

5
AMNA ALI
Sensitivity Analysis and Post-Optimality Analysis

Addition of New Constraint


Adding a new constraint needs to check whether the new constraint is binding or not. If new
constraint is non-binding, then it is redundant, meaning that it is satisfied by the current optimum
solution, and hence can be dropped from the model. But if new constraint is binding, that is, the
current solution violates the new constraint, then dual simplex is used to restore feasibility, as we
did in previous case.
Let’s try a new constraint with TOYCO’s example. TOYCO wishes to introduce another
operation - Operation 4 (to change the design of its three products).
Operation 4: 3X1 + X2 + X3 < 500

Putting values of ‘current solution’ (Xi = 0, X2 = 100 & X3 = 230)


3(0) + (100) + (230) < 500
The new constraint satisfies, suggesting current solution remains unchanged

Let’s try another constraint:


3X1 + 3 X2 + X3 < 500
Putting values (from previous Optimal solution)
3(0) + 3(100) + (230) ≥ 500
This constraint does not satisfy, suggesting re-solving the current solution after adding
the forth constraint. The re-solved tableau is, as follows,

Basic X1 X2 X3 X4 X5 X6 X7 Solution
z 5.5 0 0 0 2.17 0 0.67 1330
X4 -1.5 0 0 1 -0.17 0 -0.67 20
X3 1.5 0 1 0 0.50 0 0.00 230
X6 -1 0 0 0 0.67 1 -1.33 60
X2 0.5 1 0 0 -0.17 0 0.33 90

The new current solution is:


Z* = $ 1330 (against original Z* = 1350)
X* = (X1, X2, X3) = (0, 90, 230)
S = (S1, S2, S3, S4) = (20, 0, 60, 0)
Y = (Y1, Y2, Y3, Y4) = (0, 2.17, 0, 0.67)
The new operation 4 worsens the revenues (from $ 1350 to $ 1330), so the new
program/practice should not be adopted.

_____________________________

Changes Affecting Optimality


Two particular situations can affect optimality of the current situation:
a) Changes in the original objective coefficients.
b) Addition of a new variable (economic activity to the model).

Changes in Objective Function Coefficients:


If TOYCO changes its pricing policy from:

6
AMNA ALI
Sensitivity Analysis and Post-Optimality Analysis

Case 1: (C1 = 3, C2 =2, C3 =5)…..to……(C1 = 2, C2 =3, C3 =4)


Case 2: (C1 = 3, C2 =2, C3 =5)…..to……(C1 = 6, C2 =3, C3 =4)

Try new objective function Ci and get respective optimal solution.


Case1: Z* =1220 X1 = 0
X2 = 100
X3 = 230
Case2: Z* =1227.5 X1 = 10
X2 = 102.5
X3 = 215

In case 1, optimum solution remains the same but Z drops. In case 2, current solution
changes include production of X1 but still its revenues worsen. Both cases are less advantageous
and are therefore not recommended for adoption.

Adding a New Activity:


If TOYCO wishes to replace presently unprofitable train-toy with a new product - a toy-
fire engine, which generates $ 5 per unit and consumes 1 minute each of operations 1 & 2, and 2
minutes of operation 3.
Trying the new problem, one gets:
Z* = $ 1550
X1 = 210
X2 = 0
X3 = 12.5
The new activity proves more beneficial than the original solution, hence new activity is
recommended for adoption.

7
AMNA ALI
Sensitivity Analysis and Post-Optimality Analysis