Linear Programming: Revised Simplex Method, Duality of LP Problems and Sensitivity Analysis

Download as pdf or txt
Download as pdf or txt
You are on page 1of 33

Linear Programming

Revised Simplex Method, Duality of LP problems and Sensitivity analysis

D Nagesh Kumar, IISc

Optimization Methods: M3L5

Introduction
Revised simplex method is an improvement over simplex method. It is computationally more efficient and accurate. Duality of LP problem is a useful property that makes the problem easier in some cases Dual simplex method is computationally similar to simplex method. However, their approaches are different from each other. Primal-Dual relationship is also helpful in sensitivity or post optimality analysis of decision variables.

D Nagesh Kumar, IISc

Optimization Methods: M3L5

Objectives
Objectives
To explain revised simplex method To discuss about duality of LP and Primal-Dual relationship To illustrate dual simplex method To end with sensitivity or post optimality analysis

D Nagesh Kumar, IISc

Optimization Methods: M3L5

Revised Simplex method: Introduction


Benefit of revised simplex method is clearly comprehended in case of large LP problems. In simplex method the entire simplex tableau is updated while a small part of it is used. The revised simplex method uses exactly the same steps as those in simplex method. The only difference occurs in the details of computing the entering variables and departing variable.

D Nagesh Kumar, IISc

Optimization Methods: M3L5

Revised Simplex method


Consider the following LP problem (with general notations, after
transforming it to its standard form and incorporating all required slack, surplus and artificial variables)

(Z ) ( xi )
j

c1 x1 + c2 x2 + c3 x3 + LLL + cn xn + Z = 0 c11 x1 + c12 x2 + c13 x3 + LLL + c1n xn c21 x1 + c22 x2 + c23 x3 + LLL + c2 n xn M M cm1 x1 + cm 2 x2 + cm 3 x3 + LLL + cmn xn = b1 = b2 M M = bm

(x )
( xl )
M M

As the revised simplex method is mostly beneficial for large LP problems, it will be discussed in the context of matrix notation.

D Nagesh Kumar, IISc

Optimization Methods: M3L5

Revised Simplex method: Matrix form


Matrix notation
Minimize z = C T X subject to : AX = B with : X 0
where
b1 b2 B= M bm

x1 x X = 2 M xn

c1 c C = 2 M c n

0 0 0= M 0

c11 c A = 21 M c m1

c12 c 22 M cm 2

L c1n L c2n O M L c mn

D Nagesh Kumar, IISc

Optimization Methods: M3L5

Revised Simplex method: Notations


Notations for subsequent discussions:
c1k c Column vector corresponding to a decision variable x k is 2 k . M c mk X S is the column vector of basic variables
C S is the row vector of cost coefficients corresponding to X S ,

and
S is the basis matrix corresponding to X S

D Nagesh Kumar, IISc

Optimization Methods: M3L5

Revised Simplex method: Iterative steps


1. Selection of entering variable
For each of the nonbasic variables, calculate the coefficient (WP - c), where, P is the corresponding column vector associated with the nonbasic variable at hand, c is the cost coefficient associated with that nonbasic variable and W = CS S -1. For maximization (minimization) problem, nonbasic variable, having the lowest negative (highest positive) coefficient, as calculated above, is the entering variable.

D Nagesh Kumar, IISc

Optimization Methods: M3L5

Revised Simplex method: Iterative steps


2. Selection of departing variable
a) A new column vector U is calculated as U = S-1 B b) Corresponding to the entering variable, another vector V is calculated as V = S-1 P, where P is the column vector corresponding to entering variable. c) It may be noted that length of both U and V is same (= m). For i = 1,, m, the ratios, U(i)/V(i), are calculated provided V(i) > 0. i = r , for which the ratio is least, is noted. The r th basic variable of the current basis is the departing variable.
If it is found that V(i) < 0 for all i, then further calculation is stopped concluding that bounded solution does not exist for the LP problem at hand.

D Nagesh Kumar, IISc

Optimization Methods: M3L5

Revised Simplex method: Iterative steps


3. Update to new Basis
Old basis S, is updated to new basis Snew, as Snew = [ E S-1 ] where
E= 1 0 M M M 0 0 0 1 M M M 0 0 L L O L L L L
-1

1 2
M

L L L L O L L

0 0 M M M 1 0

r
M

m 1 m

0 0 M M M 0 1

V (i ) V (r ) and i = 1 V (r )

for for

ir i=r

r thcolumn

10

D Nagesh Kumar, IISc

Optimization Methods: M3L5

Revised Simplex method: Iterative steps


S is replaced by Snew and steps1 through 3 are repeated. If all the coefficients calculated in step 1, i.e., is positive (negative) in case of maximization (minimization) problem, then optimum solution is reached The optimal solution is XS=S-1B and z = CXS

11

D Nagesh Kumar, IISc

Optimization Methods: M3L5

Duality of LP problems
Each LP problem (called as Primal in this context) is associated with its counterpart known as Dual LP problem. Instead of primal, solving the dual LP problem is sometimes easier in following cases a) The dual has fewer constraints than primal
Time required for solving LP problems is directly affected by the number of constraints, i.e., number of iterations necessary to converge to an optimum solution, which in Simplex method usually ranges from 1.5 to 3 times the number of structural constraints in the problem

b) The dual involves maximization of an objective function


It may be possible to avoid artificial variables that otherwise would be used in a primal minimization problem.

12

D Nagesh Kumar, IISc

Optimization Methods: M3L5

Finding Dual of a LP problem


Primal Maximization Minimization ith variable jth constraint Minimization Maximization ith constraint jth variable Inequality sign of ith Constraint: if dual is maximization if dual is minimization contd. to next slide Dual

xi > 0

13

D Nagesh Kumar, IISc

Optimization Methods: M3L5

Finding Dual of a LP problemcontd.


Primal ith variable unrestricted jth constraint with = sign RHS of jth constraint Cost coefficient associated with ith variable in the objective function Dual ith constraint with = sign jth variable unrestricted Cost coefficient associated with jth variable in the objective function RHS of ith constraint constraints

Refer class notes for pictorial representation of all the operations

14

D Nagesh Kumar, IISc

Optimization Methods: M3L5

Dual from a Primal

15

D Nagesh Kumar, IISc

Optimization Methods: M3L5

Finding Dual of a LP problemcontd.


Note: Before finding its dual, all the constraints should be transformed to less-than-equal-to or equal-to type for maximization problem and to greater-than-equal-to or equal-to type for minimization problem. It can be done by multiplying with -1 both sides of the constraints, so that inequality sign gets reversed.

16

D Nagesh Kumar, IISc

Optimization Methods: M3L5

Finding Dual of a LP problem: An example


Primal
Maximize Z = 4 x1 + 3x 2 Subject to Minimize Subject to

Dual
Z = 6000 y1 2000 y 2 + 4000 y 3

x1 +

2 x 2 6000 3 x1 x2 2000
x1 4000

y1 y 2 + y 3 = 4 2 y1 + y 2 3 3 y1 0
y2 0

x1 unrestricted
x2 0

y3 0

Note: Second constraint in the primal is transformed to x1 + x2 2000 before constructing the dual.

17

D Nagesh Kumar, IISc

Optimization Methods: M3L5

Primal-Dual relationships
If one problem (either primal or dual) has an optimal feasible solution, other problem also has an optimal feasible solution. The optimal objective function value is same for both primal and dual. If one problem has no solution (infeasible), the other problem is either infeasible or unbounded. If one problem is unbounded the other problem is infeasible.

18

D Nagesh Kumar, IISc

Optimization Methods: M3L5

Dual Simplex Method


Simplex Method verses Dual Simplex Method
1.

Simplex method starts with a nonoptimal but feasible solution where as dual simplex method starts with an optimal but infeasible solution. Simplex method maintains the feasibility during successive iterations where as dual simplex method maintains the optimality.

2.

19

D Nagesh Kumar, IISc

Optimization Methods: M3L5

Dual Simplex Method: Iterative steps


Steps involved in the dual simplex method are:
1.

2.

All the constraints (except those with equality (=) sign) are modified to less-than-equal-to sign. Constraints with greater-than-equal-to sign are multiplied by -1 through out so that inequality sign gets reversed. Finally, all these constraints are transformed to equality sign by introducing required slack variables. Modified problem, as in step one, is expressed in the form of a simplex tableau. If all the cost coefficients are positive (i.e., optimality condition is satisfied) and one or more basic variables have negative values (i.e., non-feasible solution), then dual simplex method is applicable.
D Nagesh Kumar, IISc Optimization Methods: M3L5

20

Dual Simplex Method: Iterative stepscontd.


3.

4.

Selection of exiting variable: The basic variable with the highest negative value is the exiting variable. If there are two candidates for exiting variable, any one is selected. The row of the selected exiting variable is marked as pivotal row. Selection of entering variable: Cost coefficients, corresponding to all the negative elements of the pivotal row, are identified. Their ratios are calculated after changing the sign of the elements of pivotal row, i.e.,

Cost Coefficients ratio = 1 Elements of pivotal row The column corresponding to minimum ratio is identified as the pivotal column and associated decision variable is the entering variable.

21

D Nagesh Kumar, IISc

Optimization Methods: M3L5

Dual Simplex Method: Iterative stepscontd.


5.

Pivotal operation: Pivotal operation is exactly same as in the case of simplex method, considering the pivotal element as the element at the intersection of pivotal row and pivotal column. Check for optimality: If all the basic variables have nonnegative values then the optimum solution is reached. Otherwise, Steps 3 to 5 are repeated until the optimum is reached.
D Nagesh Kumar, IISc Optimization Methods: M3L5

6.

22

Dual Simplex Method: An Example


Consider the following problem:

Minimize subject to

Z = 2 x1 + x 2 x1 2 3 x1 + 4 x 2 24 4 x1 + 3 x 2 12 x1 + 2 x 2 1

23

D Nagesh Kumar, IISc

Optimization Methods: M3L5

Dual Simplex Method: An Examplecontd.


After introducing the surplus variables the problem is reformulated with equality constraints as follows:

Minimize subject to

Z = 2 x1 + x 2 x1 3 x1 4 x1 x1 +4 x 2 3 x 2 2 x 2 + x3 = 2 + x 4 = 24 + x5 = 12 + x6 = 1

24

D Nagesh Kumar, IISc

Optimization Methods: M3L5

Dual Simplex Method: An Examplecontd.


Expressing the problem in the tableau form:

25

D Nagesh Kumar, IISc

Optimization Methods: M3L5

Dual Simplex Method: An Examplecontd.


Successive iterations:

26

D Nagesh Kumar, IISc

Optimization Methods: M3L5

Dual Simplex Method: An Examplecontd.


Successive iterations:

27

D Nagesh Kumar, IISc

Optimization Methods: M3L5

Dual Simplex Method: An Examplecontd.


Successive iterations:

28

As all the br are positive, optimum solution is reached. Thus, the optimal solution is Z = 5.5 with x1 = 2 and x2 = 1.5
D Nagesh Kumar, IISc Optimization Methods: M3L5

Solution of Dual from Primal Simplex


Primal
Maximize subject to

Z = 4 x1 x2 + 2 x3 2 x1 + x2 + 2 x3 6 x1 4 x2 + 2 x3 0 5 x1 2 x2 2 x3 4 x1 , x2 , x3 0

y1 y2 y3 Z

Dual
Minimize subject to Z ' = 6 y1 + 0 y2 + 4 y3 2 y1 + y2 + 5 y3 4 y1 4 y2 2 y3 1 2 y1 + 2 y2 2 y3 2 y1 , y2 , y3 0

29

D Nagesh Kumar, IISc

Optimization Methods: M3L5

Sensitivity or post optimality analysis

Changes that can affect only Optimality


Change in coefficients of the objective function, C1, C2,.. Re-solve the problem to obtain the solution Change in right hand side values, b1, b2,.. Apply dual simplex method or study the dual variable values Simultaneous change in C1, C2,.. and b1, b2,.. Use both primal simplex and dual simplex or re-solve

Changes that can affect only Feasibility


Changes that can affect both Optimality and Feasibility


30

D Nagesh Kumar, IISc

Optimization Methods: M3L5

Sensitivity or post optimality analysis


A dual variable, associated with a constraint, indicates a change in Z value (optimum) for a small change in RHS of that constraint.
Z = y j bi
where yj is the dual variable associated with the ith constraint, bi is the small change in the RHS of ith constraint, Z is the change in objective function owing to bi.

31

D Nagesh Kumar, IISc

Optimization Methods: M3L5

Sensitivity or post optimality analysis: An Example


Let, for a LP problem, ith constraint be

2 x1 + x2 50

and the optimum value of the objective function be 250. RHS of the ith constraint changes to 55, i.e., ith constraint changes to

2 x1 + x2 55

Let, dual variable associated with the ith constraint is yj , optimum value of which is 2.5 (say). Thus, bi = 55 50 = 5 and yj = 2.5 So, Z = yj bi = 2.5x5 = 12.5 and revised optimum value of the objective function is 250 + 12.5 = 262.5.

32

D Nagesh Kumar, IISc

Optimization Methods: M3L5

Thank You

33

D Nagesh Kumar, IISc

Optimization Methods: M3L5

You might also like