Professional Documents
Culture Documents
Study Material 01-01-2022
Study Material 01-01-2022
𝑥1
U= [𝑦 ] is the starting point(vector) of the line segment
1
𝑥2
V= [𝑦 ] is the end point(vector) of the line segment
2
U__________________W_____________________V
Convex Set
A set of points is said to be convex if all the points lying on the line segment joining any two
points of the set lies completely in that set. The set of points lying inside and on the circle is
convex. The set of points lying inside and on the sphere is convex.
Theorem The set of all feasible solutions of an LP problem constitute a convex set.
Proof. We consider an LP problem
Max/min z= CX
Such that AX≤ 𝑏
X≥ 0
Set of all feasible solutions means the set of all the points satisfying constraints as well as
nonnegativity restrictions. Let S is a set of feasible solutions. Therefore,
S= {X: AX≤ 𝑏, X≥ 0}
Let U and V be any two points of S. Therefore, AU≤ 𝑏, 𝐴𝑉 ≤ 𝑏; U≥ 0,V≥ 0 ………….(1)
Any point W on the line segment joining U and V is expressed as
W=𝜆𝑉 + (1 − 𝜆)𝑈 , 0≤ 𝜆 ≤ 1
Now, AW= A{ 𝜆𝑉 + (1 − 𝜆)𝑈}= 𝜆𝐴𝑉 + (1 − 𝜆)𝐴𝑈 ≤ 𝜆𝑏 + (1 − 𝜆)𝑏 = 𝑏 , using (1)
That is, AW≤ 𝑏 . Hence W satisfies constraints.
Again, since 𝜆 ≥ 0, 𝑉 ≥ 0 .Therefore 𝜆𝑉 ≥ 0
…………………………………………………………….(2)
Also as 1 − 𝜆 ≥ 0, U≥ 0, Therefore, (1-𝜆)𝑈 ≥ 0
…………………………………………………………(3)
Hence, W= 𝜆𝑉 + (1 − 𝜆)𝑈 ≥ 0 , from (2) and (3)
This shows that W satisfies nonnegativity restrictions also.
Hence all the points on the line segment joining U and V satisfies constraints as well as
nonnegativity restrictions. That is the line segment lies completely in S. Hence S is a convex
set.
Similarly, this theorem can also be proved for the LP problem of other types as follows:
(i) Max/min z= CX
Such that AX≥ 𝑏
X≥ 0
(ii) Max/min z= CX
Such that AX≤ 𝑏
X≤ 0
(iii) Max/min z= CX
Such that AX≥ 𝑏
X≤ 0
Boundary Point All the points lying on the boundary of the feasible region are said to be
boundary points. That is, the points satisfying all the constraints and nonnegativity restrictions
when they are written in equality form are said to be boundary points.
Extreme Point. A point of a feasible region is said to be extreme point if it does not lie on the
line segment joining any two points other than it, of the feasible region. Corner point of a
feasible region is the extreme point.
Note that every extreme point is a boundary point but every boundary point is not an extreme
point.
Theorem Optimal solution of an LP problem occurs at the extreme point of a feasible region.
Proof. We consider an LP problem
Max z= CX
Such that AX≤ 𝑏
X≥ 0
We have to show that the value of the objective function Z (=CX) is maximum at the extreme
point of the feasible region.
Let us consider an arbitrary point P represented by the vector W inside the feasible region of
an LP problem. We draw a line through P which meets any one of the extreme points say A of
the feasible region represented by hexagon ABCDEF. Then we produce the line AP to meet
the boundary of the feasible region. This extended line either meet the boundary of the feasible
region at one of the extreme points, say D or at one of the non- extreme point, say R as shown
in the figure (i) and (ii) respectively.
Case (i) Let the extended line AP meets the boundary at the extreme point D
Let the point A is represented by the vector U and D by the vector V. Then any point P different
from A and D on the line segment AD is represented by the vector W, where W= 𝜆𝑉 +
(1 − 𝜆)𝑈; 0< 𝜆 < 1
F E
A D
B C
Figure 1
Let 𝑍𝐴 , 𝑍𝑃 , 𝑍𝐷 denote the values of the objective function CX at the points A, P, D respectively.
Then
𝑍𝐴 = 𝐶𝑈, 𝑍𝑃 = CW, 𝑍𝐷 = CV
The value of the objective function at point P is
𝑍𝑃= CW= C{𝜆𝑉 + (1 − 𝜆)𝑈} , 0< 𝜆 < 1
= 𝜆𝐶𝑉 + (1 − 𝜆)𝐶𝑈
= 𝜆𝑍𝐷 +(1 − 𝜆)𝑍𝐴
i.e., 𝑍𝑃 = 𝑍𝐴 + 𝜆(𝑍𝐷 − 𝑍𝐴 )
………………………………………………………………………………………(1)
Now there are two possibilities either 𝑍𝐷 = 𝑍𝐴 𝑜𝑟𝑍𝐷 ≠ 𝑍𝐴
If 𝑍𝐷 = 𝑍𝐴 then from (1) we get 𝑍𝑃 = 𝑍𝐴
Thus 𝑍𝐴 = 𝑍𝑃 = 𝑍𝐷 . This shows that the value of the objective function at the interior of the
feasible region is the same as that at the extreme point. So, max z= 𝑍𝐴 = 𝑍𝑃 = 𝑍𝐷
Hence, maximum value of the objective function occurs at the extreme point of the feasible
region.
So, the theorem is proved in this case.
If 𝑍𝐷 ≠ 𝑍𝐴 , then either 𝑍𝐷 > 𝑍𝐴 or 𝑍𝐷 < 𝑍𝐴
For the case of 𝑍𝐷 > 𝑍𝐴 we have 𝑍𝐷 − 𝑍𝐴 > 0 . Then from (1)
𝑍𝑃 = 𝑍𝐴 + 𝜆(𝑍𝐷 − 𝑍𝐴 )
= 𝑍𝐴 + 𝑎 positive quantity; for whatever 𝑍𝐴 is positive or negative
This shows that 𝑍𝐴 < 𝑍𝑃 ………………………………………………………….(2)
Again from (1) 𝑍𝑃 = 𝑍𝐴 + 𝜆(𝑍𝐷 − 𝑍𝐴 )
< 𝑍𝐴 + 1(𝑍𝐷 − 𝑍𝐴 ) , because 0< 𝜆 < 1
=𝑍𝐷
This shows that 𝑍𝑃 < 𝑍𝐷 …………………………………………………………………(3)
From (2) and (3) we get 𝑍𝐴 < 𝑍𝑃 < 𝑍𝐷
So, max z occurs at the extreme point D
If 𝑍𝐷 < 𝑍𝐴 ,then 𝑍𝐷 − 𝑍𝐴 < 0
Now from (1) ) 𝑍𝑃 = 𝑍𝐴 + 𝜆(𝑍𝐷 − 𝑍𝐴 )
< 𝑍𝐴 , because 0< 𝜆 < 1 and 𝑍𝐷 − 𝑍𝐴 < 0 implies 𝜆(𝑍𝐷 − 𝑍𝐴 ) < 0
Therefore 𝑍𝑃 < 𝑍𝐴 … …………………………………………………………….(4)
Again from (1) 𝑍𝑃 = 𝑍𝐴 + 𝜆(𝑍𝐷 − 𝑍𝐴 )
> 𝑍𝐴 + 1(𝑍𝐷 − 𝑍𝐴 ), because 0< 𝜆 < 1 and 𝑍𝐷 − 𝑍𝐴 < 0
Therefore 𝑍𝑃 > 𝑍𝐷 …………………………………………………………………(5)
From (4) and (5) we get 𝑍𝐷 < 𝑍𝑃 < 𝑍𝐴 .
This shows that maximum value of Z occurs at the extreme point A
Case (ii) Let the extended line AP meets the boundary of the feasible region at point R which
is not an extreme point.
F E
A D
P R
B C
Figure 2
Here R is the interior point of the line segment joining two extreme points C and D whereas P
is the interior point of the line segment joining the points A and R.
According to the proof given in case (1) we have either 𝑍𝐴 < 𝑍𝑃 < 𝑍𝑅 or 𝑍𝐴 > 𝑍𝑃 > 𝑍𝑅
This means that the greatest/least value of Z occurs at the A or R but not at any interior point
P of the line segment AR. If the greatest/least value of Z occurs at A(extreme point) then the
theorem is proved. If the greatest/least value of Z occurs at R which is the interior point of the
line segment CD. Then again according to the proof given in case (1) we have
𝑍𝐶 < 𝑍𝑅 < 𝑍𝐷 or 𝑍𝐶 > 𝑍𝑅 > 𝑍𝐷
This shows that the greatest/least value of Z occurs either at C (extreme point) or at D (extreme
point) but not at any interior point R (non-extreme point) of the line segment CD.
Hence in all cases we see that maximum value of the objective function occurs at the extreme
point of the feasible region. Similarly, for the case of minimization LP, minimum value of the
objective function occurs at the extreme point of the feasible region. That is,
maximum/minimum value of the objective function occurs at the extreme point of the feasible
region. This completes the proof of the theorem.
This is a powerful theorem which tells us to search the optimal solution at a finite number of
extreme points of the feasible region not to waste time on searching optimal solution at any of
the infinite number of non-extreme points.
Note. The theorem stated and proved above informs us not to focus on all the infinite number
of points of the feasible region but to check only finite number of limited extreme points, if
any one, want to search the optimal point.
Requirement before initializing simplex method for solving LPP
Simplex method for solving LPP initializes with standard form of linear programming problem.
So, firstly we need to know about standard form of linear programming problem and how to
convert nonstandard LPP in standard form of LPP.
Standard form of Linear Programming Problem
A linear Programming Problem is said to be in standard form if all the constraints except
nonnegativity restrictions, are equations with nonnegative right-hand side and all the variables
are nonnegative. Objective function may be of maximization or minimization type.
Conversion of inequality constraint into equation constraint
Constraint of ′ ≤ ′ type is converted to ′ = ′ type by adding a nonnegative variable ‘s’ , termed
as slack variable, in its left- hand side.
Constraint of ′ ≥ ′ type can be converted to ′ = ′ type by subtracting a nonnegative variable
‘s’, termed as surplus variable, from its left- hand side.
Conversion of nonpositive variable into nonnegative variable
A variable 𝑥𝑗 (≤ 0) is converted into corresponding another variable 𝑥𝑗 ′(≥ 0) by supposing
𝑥𝑗 = −𝑥𝑗 ′
Conversion of negative right hand side term of constraint into nonnegative term
Negative right hand side term of constraint is converted into nonnegative term by multiplying
that constraint throughout by ‘-1’
Constraint, 2𝑥1 − 3𝑥2 ≤ −5 is converted as -2𝑥1 + 3𝑥2 ≥ 5
Constraint, -𝑥1 +4𝑥2 =-9 is converted as 𝑥1 -4𝑥2 =9
Any non -standard LPP can be converted into standard LPP
Example. The LPP
Minimize z= 4𝑥1 + 𝑥2
Subject to
3𝑥1 + 𝑥2 =3
4𝑥1 + 3𝑥2 ≥ 6
𝑥1 + 2𝑥2 ≤ 4
𝑥1 , 𝑥2 ≥ 0
is not in standard form because second and third constraints are not in equation form
Example. The LPP
Minimize z= 4𝑥1 + 𝑥2
Subject to
3𝑥1 + 𝑥2 =3
4𝑥1 + 3𝑥2 − 𝑠1 = 6
𝑥1 + 2𝑥2 + 𝑠2 = 4
𝑥1 , 𝑥2 , 𝑠1 , 𝑠2 ≥ 0
is in standard form where 𝑠1 is a surplus variable, 𝑠2 is a slack variable
Example. The LPP
Minimize z= 4𝑥1 + 𝑥2
Subject to
3𝑥1 + 𝑥2 =3
- 4𝑥1 − 3𝑥2 + 𝑠1 = −6
𝑥1 + 2𝑥2 + 𝑠2 = 4
𝑥1 , 𝑥2 , 𝑠1 , 𝑠2 ≥ 0
is not in standard form because right hand side of second constraints is not nonnegative. Here
𝑠1 and 𝑠2 are both slack variables.
Basic Solution
To get an optimal solution of an LPP our focus is to search a solution satisfying all constraints
of standard LPP.
Generally, the number of constraints in standard form of an LPP is not equal to the number of
variables. So, the system of constraints does not provide unique solution. Let the number of
constraints in standard LPP is m and the number of variables is n. If m=n then we are able to
solve the system of equations whether system gives unique solution or infinite solution or no
solution. When m≠ 𝑛 then generally m< 𝑛 occurs in standard LPP. In this case we assign the
values of n-m variables zero and then solve the system for the remaining variables. The solution
obtained in this way is said to be a basic solution. The variables which are assigned zero values,
are said to be non -basic variables and the variables whose values are obtained after solving the
system, are said to be basic variables.
The number of basic solution of the system with m constraints and n variables is at most 𝑛𝐶𝑛−𝑚
𝑛!
(=(𝑛−𝑚)!𝑛!), because n-m variables can be chosen( to assign zero value) out of n variables in
𝑛𝐶𝑛−𝑚 ways.
The basic solution with all components non-negative, are said to be basic feasible solution as
it satisfy nonnegativity restrictions. If at least one component of basic solution is negative, then
it is said to be a basic infeasible solution as it does not satisfy nonnegativity restrictions.
In a basic solution if the value of at least one of the basic variables is zero, then that basic
solution is said to be degenerate solution. If all the basic variables are non zero, then that
basic solution is said to be nondegenerate solution
We consider an example
Minimize z= 4𝑥1 + 𝑥2
Subject to
3𝑥1 + 𝑥2 =3
4𝑥1 + 3𝑥2 − 𝑥3 = 6
𝑥1 + 2𝑥2 + 𝑥4 = 4
𝑥1 , 𝑥2 , 𝑥3 , 𝑥4 ≥ 0
Here m=the number of constraints=3,
n= the number of variables=4
Since m< 𝑛 and n-m=1, therefore we assign the value of one variable zero and then solve for
the remaining variables to get a basic solution (basic feasible solution/basic infeasible solution).
4!
Note that there exist at most (4−3)!3! =4 solutions which can be seen as follows;
___________________________________________________________________________
SIMPLEX METHOD
Simplex method is a powerful technique to solve any LPP. In this method we decide basic and
non-basic variables to get a basic feasible solution and then create a simplex table. Simplex
table contains all the data of LPP as well as a basic feasible solution and the corresponding
value of objective function. If the current basic feasible solution is optimal (means satisfies
optimality criteria) ,then stop, otherwise, we search a better basic feasible solution by the
exchange of a basic variable with a non-basic variable. A basic feasible solution is said to be
better than the previous basic feasible solution if the value of the objective function
corresponding to that basic feasible solution is better (greater for maximization problem and
less for minimization problem) than that of the previous basic feasible solution. Search of better
basic feasible solution continues until we achieve optimality criteria.
Formulation of Initial Simplex for numerical example
To understand easily, we consider a numerical example to make its initial simplex table
Maximize z= 2𝑥1 +3𝑥2 + 4𝑥3
Such that
2𝑥1 +𝑥2 + 3𝑥3 ≤ 50
𝑥1 +3𝑥2 + 𝑥3 ≤ 25
𝑥1 +2𝑥2 + 𝑥3 ≤ 26
𝑥1 ,𝑥2 , 𝑥3 ≥ 0
Here 𝑥1 ,𝑥2 , 𝑥3 are independent variables and z is a dependent variable
Introducing slack variables 𝑠1 ,𝑠2 , 𝑠3 in first, second, third constraints respectively, the problem
can be written in standard LPP form as
Maximize z= 2𝑥1 +3𝑥2 + 4𝑥3
Such that
2𝑥1 +𝑥2 + 3𝑥3 + 𝑠1 = 50
𝑥1 +3𝑥2 + 𝑥3 + 𝑠2= 25
𝑥1 +2𝑥2 + 𝑥3 + 𝑠3 = 26
𝑥1 ,𝑥2 , 𝑥3 , 𝑠1 , 𝑠2 , 𝑠3 ≥ 0
Since z (dependent variable) is a function of independent variables 𝑥1 , 𝑥2 ,𝑥3 , so considering
this also as an equation, we have four equations written in the form
1z - 2𝑥1 -3𝑥2 − 4𝑥3 + 0𝑠1 + 0𝑠2 + 0𝑠3 = 0
0z +2𝑥1 +𝑥2 + 3𝑥3 + 1𝑠1 + 0𝑠2 + 0𝑠3 = 50
0z + 𝑥1 +3𝑥2 + 𝑥3 + 0𝑠1 + 1𝑠2 + 0𝑠3 = 25
0𝑧 + 𝑥1 +2𝑥2 + 𝑥3 + 0𝑠1 + 0𝑠2 + 1𝑠3 = 26
To make a simplex table of the problem, we firstly search a basic feasible solution which
determines basic and non-basic variables. Remember that basic variables are those independent
variables of the constraints whose coefficient matrix is non-singular. Note that, dependent
variable does not occur in the constraints, because its coefficient is 0 there. We see that the
coefficient matrix of the variables 𝑠1, 𝑠2 , 𝑠3 of constraints form an identity matrix which is
obviously non-singular. So, these three variables can be taken as basic variables and the
remaining variables 𝑥1, 𝑥2 , 𝑥3 as non-basic. Meaning that if we assign the values of 𝑥1, 𝑥2 , 𝑥3
as 0 in the set of constraints, then solving them we get 𝑠1 = 50 , 𝑠2 =25, 𝑠3 = 25 . Hence the
basic feasible solution is (𝑥1 , 𝑥2 , 𝑥3 , 𝑠1 , 𝑠2 , 𝑠3 ) ≡ (0,0,0,50,25,26). Note that, if we take
another three variables as basic to search a basic feasible solution, then we will have to check
the non- singularity of their coefficient matrix. That is why we take those variables as the basic
variables whose coefficient matrix form an identity matrix which is obviously non-singular.
In matrix form the system of equations can be written as
𝑧
1 −2 −3 −4 0 0 0 𝑥1 0
0 2 1 3 1 0 0 𝑥2 50
[0 𝑥
1 3 1 0 1 0] 3 = [25]
𝑠1
0 1 2 1 0 0 1 𝑠2 26
[ 𝑠3 ]
Then initial simplex table of the problem is written as follows:
Initial Simplex Table
| z 𝑥1 𝑥2 𝑥3 𝑠1 𝑠2 𝑠3 |
____|___________________________________|_________
z | 1 -2 -3 -4 0 0 0 | 0
___ |___________________________________|_________ |
𝑠1 | 0 2 1 3 1 0 0 | 50
𝑠2 | 0 1 3 1 0 1 0 | 25
𝑠3 | 0 1 2 1 0 0 1 | 26
| |
In the initial simplex table, top row contains all the variables dependent as well as
independent. On the extreme left column, dependent variable z and the three basic variables 𝑠1
, 𝑠2 , 𝑠3 are written. In z-row, coefficients of all the variables of the equation made by objective
function are written. In 𝑠1 -row, coefficients of all the variables of the first constraint are written.
In 𝑠2 -row, coefficients of all the variables of the second constraint are written. In 𝑠3 -row,
coefficients of all the variables of third constraints are written. On the extreme right column,
the values of z and basic variables of the basic feasible solution are written, whereas the values
of all non-basic variables are zero not written in the table. So, every simplex table contains
basic feasible solution of LPP as well as all the data of the problem.
Formulation of Initial Simplex Table
Now let us see how simplex table is made for the general LPP. We consider general LPP as
follows:
Maximize z=cx
Such that Ax≤ 𝑏
x≥ 0
Introducing slack variables in the constraints, the problem can be written as
Maximize Z=CX
Such that AX+𝐼𝑆 = 𝑏
X, S≥ 0 I
Where X is a vector of natural variables and S is a vector of slack variables. I is the identity
matrix of order m. As the coefficient matrix of the slack variables is identity matrix I so, I is
taken as a basis and we denote it by B. We denote all the variables (natural and slack) by X
So, any standard LPP can be written in the form
Max z=CX
Such that
[𝐴, 𝐵 ]𝑋 = 𝑏
X≥ 0
Let 𝑋𝐵 be the vector of basic variables associated with basis B and 𝑋𝑁 be the vector of non-
𝑋
basic variables associated with A, where as X is a vector of all variables. Therefore, X=[ 𝑁 ].
𝑋𝐵
Let 𝐶𝐵 , 𝐶𝑁 are the coefficient matrix associated with 𝑋𝐵 and 𝑋𝑁 respectively in the objective
function. Therefore, C= [𝐶𝑁 , 𝐶𝐵 ]
Then we can write
𝑋𝑁
Z= [𝐶𝑁 , 𝐶𝐵 ] [ ]
𝑋𝐵
𝑋𝑁
[𝐴, 𝐵] [ ]=𝑏
𝑋𝐵
That is, Z- 𝐶𝑁 𝑋𝑁 + 𝐶𝐵 𝑋𝐵 =0
A𝑋𝑁 + B𝑋𝐵 =b
Its matrix form is
𝑍
1 −𝐶𝑁 −𝐶𝐵 𝑋 0
[ ] [ 𝑁 ] = [ ] ………………………………………………………(1)
0 𝐴 𝐵 𝑏
𝑋 𝐵
According to matrix equation (1), initial simplex table of LPP is written as follows:
1 −𝐶𝐵 1 −𝐶𝐵 −1
Since, [ ][ ] =𝐼
0 𝐵 0 𝐵
1 −𝐶𝐵 𝐴11 𝐴12 1 𝑂
Therefore, [ ][ ]=[ ] , where I, the identity matrix of order same as that
0 𝐵 𝐴21 𝐴22 𝑂 𝐼
of B
𝐴11 − 𝐶𝐵 𝐴21 𝐴12 − 𝐶𝐵 𝐴22 1 𝑂
That is, [ ]=[ ]
𝐵𝐴21 𝐵𝐴22 𝑂 𝐼
Equating the corresponding elements of two equal matrices, we get
𝐴11 − 𝐶𝐵 𝐴21 = 1 ⇒ 𝐴11 − 𝐶𝐵 𝑂 = 1 ⇒ 𝐴11 = 1
𝐴12 − 𝐶𝐵 𝐴22 = 𝑂 ⇒ 𝐴12 − 𝐶𝐵 𝐵 −1 = 𝑂 ⇒ 𝐴12 = 𝐶𝐵 𝐵 −1
𝐵𝐴21 = 𝑂 ⇒ 𝐴21 = 𝐵 −1 𝑂 = 𝑂
𝐵𝐴22 = 𝐼 ⇒ 𝐴22 = 𝐵 −1 𝐼 = 𝐵 −1
Using all these values in equation (3), we get
1 −𝐶𝐵 −1 1 𝐶𝐵 𝐵 −1
[ ] =[ ] …………………………………………………(4)
0 𝐵 𝑂 𝐵 −1
𝑧 1 𝐶𝐵 𝐵 −1 0 𝐶𝐵 𝐵 −1 𝑏
Using (4) in (2) we get [𝑋 ] = [ ] [ ] = [ ] …………….(5)
𝐵 𝑂 𝐵 −1 𝑏 𝐵 −1 𝑏
Equating the corresponding element of two equal matrices we get
z= 𝐶𝐵 𝐵 −1 𝑏 , which gives the value of the objective function corresponding to the basic feasible
solution obtained by taking the basis B
𝑋𝐵 = 𝐵 −1 𝑏 , which gives the values of basic variables corresponding to the basis B, and the
values of non- basic variables are always zero, resulting we get a basic feasible solution.
Note that when you change the basis (means change the set of basic variables), then basic
feasible solution will change and the corresponding value of the objective function will also
change.
To obtain the same basic feasible solution as obtained in (5) through the general equation (1),
1 𝐶𝐵 𝐵 −1
we pre multiply equation (1) by the matrix [ ] , we get
𝑂 𝐵 −1
𝑍
1 𝐶𝐵 𝐵 −1 1 −𝐶𝑁 −𝐶𝐵 𝑋 1 𝐶𝐵 𝐵 −1 0
[ ][ ] [ 𝑁] = [ ][ ]
𝑂 𝐵 −1 0 𝐴 𝐵 𝑋 𝑂 𝐵 −1 𝑏
𝐵
𝑧
1 𝐶𝐵 𝐵 −1 𝐴 − 𝐶𝑁 𝐶𝐵 𝐵 −1 𝐵 − 𝐶𝐵 𝑋 𝐶𝐵 𝐵 −1 𝑏
That is, [ ] [ 𝑁] = [ ] ……………..(6)
0 𝐵 −1 𝐴 𝐵 −1 𝐵 𝑋𝐵 𝐵 −1 𝑏
From equation (6) a generalized simplex table (simplex table at any iteration) can be written as
follows:
| z 𝑋𝑁 𝑋𝐵 |
______|_________________________________________________ |______________
z | 1 𝐶𝐵 𝐵 −1 𝐴 − 𝐶𝑁 𝐶𝐵 𝐵 −1 𝐵 − 𝐶𝐵 =0 | 𝐶𝐵 𝐵 −1 𝑏
______|__________________________________________________|______________
𝑋𝐵 | 0 𝐵 −1 𝐴 𝐵 −1 𝐵 =I | 𝐵 −1 𝑏
______|____________________________________________________|______________
In the generalized simplex table, we see that the coefficients of all the basic variables 𝑋𝐵 in the
objective row are 𝐶𝐵 𝐵 −1 𝐵 − 𝐶𝐵 = 𝐶𝐵 𝐼 − 𝐶𝐵 = 𝐶𝐵 − 𝐶𝐵 = 0
Also, we see that the coefficient matrix of basic variables in the constraints is 𝐵 −1 𝐵 =I= identity
matrix.
Let us see how we write the generalized simplex table for a numerical example by taking any
basis B. We consider a simple example
Maximize z= 𝑥1 + 3𝑥2
Such that 2𝑥1 +𝑥2 ≤ 1
𝑥1 − 2𝑥2 ≤ 1
𝑥1 , 𝑥2 ≥ 0
Its standard LPP is
Maximize z= 𝑥1 + 3𝑥2
Such that 2𝑥1 +𝑥2 + 𝑠1 =1
𝑥1 − 2𝑥2 + 𝑠2 = 1
𝑥1 , 𝑥2 , 𝑠1 , 𝑠2 ≥ 0
𝑥1
𝑥
Its equations can be written as z= [1 3 0 0] [ 𝑠2 ]
1
𝑠2
𝑥1
2 1 1 0 2𝑥 1
[ ][ ] = [ ]
1 −2 0 1 𝑠1 1
𝑠2
Here the number of equations is two, so there will be two basic variables and consequently
there will be a basis of order two.
2 0
If we take basic variables as 𝑥1 and 𝑠2 , then their coefficient matrix [ ] = 𝐵 is the basis,
1 1
because it is non singular
𝑥1 𝑥2 2 0 1 1
Thus, we have 𝑋𝐵 =[ 𝑠 ], 𝑋𝑁 =[ 𝑠 ], B= [ ] ,A= N=[ ], 𝐶 = [1 0], 𝐶𝑁 = [3 0] ,
2 1 1 1 −2 0 𝐵
1
b=[ ]
1
1
0
𝐵 −1 =[ 2 ]
1
− 1
2
1 1 1
0 1 1
𝐵 −1 𝐴 = [ 1 2
][ ] =[ 2 5 2 1]
− 1 −2 0 − −
2 2 2
1 1
−1 2 2 1 1 5 1
𝐶𝐵 𝐵 𝐴 − 𝐶𝑁 = [1 0] [ 5 1] -[3 0] =[2 2
] − [3 0] =[− 2 ]
2
−2 −2
1 1 1
0 1 1
2
𝐵 −1
𝑏=[ 1 ] [ ] = [21] , 𝐶𝐵 𝐵 −1 𝑏 = [1 0] [21] =2
−2 1 1
2 2
______|___________________________________________________|_____________
1 1 1
𝑥1 | 0 1 0 |
2 2 2
5 1 1
𝑠2 | 0 -2 -2 0 1 | 2
______|___________________________________________________|_______________
1
From this table we have value of objective function, z=2,
1 1
values of basic variables, 𝑥1 =2 , 𝑠2 = 2,
1Z + ∑𝑗∈𝑁(𝑐𝐵 𝐵 −1 𝑃𝑗 − 𝑐𝑗 )𝑥𝑗 + 0𝑥𝑗 = 𝑐𝐵 𝐵 −1b, where summation over for non-basic variables
That is, z=𝑐𝐵 𝐵 −1 b - ∑𝑗∈𝑁(𝑐𝐵 𝐵−1 𝑃𝑗 − 𝑐𝑗 )𝑥𝑗 = 𝑐𝐵 𝐵 −1 b - ∑𝑗∈𝑁(𝑧𝑗 − 𝑐𝑗 )𝑥𝑗 , where 𝑧𝑗 = 𝑐𝐵 𝐵−1 𝑃𝑗
Presently, 𝑥𝑗 = 0 for j∈ 𝑁(= set of indices of non-basic variables) and the value of z is 𝑐𝐵 𝐵 −1 b
If all the coefficients 𝑧𝑗 − 𝑐𝑗 , of 𝑥𝑗 , 𝑗 ∈N are non-negative then the solution in the simplex table
is optimal for maximizing LPP and the current simplex table is optimal. This is the optimality
criteria for maximizing LPP
If all the coefficients 𝑧𝑗 − 𝑐𝑗 , of 𝑥𝑗 , 𝑗 ∈N are non-positive then the solution in the simplex table
is optimal for minimizing LPP and the current simplex table is optimal. This is the optimality
criteria for minimizing LPP
Example Minimize z= 𝑥1 + 2𝑥2
Such that 𝑥1 + 3𝑥2 ≤ 1
4𝑥1 + 𝑥2 ≤ 1
𝑥1 , 𝑥2 ≥ 0
Its initial simplex table is
min | Z 𝑥1 𝑥2 𝑠1 𝑠2 |
z | 1 -1 -2 0 0 | 0
_____|___________________________________________________|__________________
𝑠𝟏 | 0 1 3 1 0 | 1
𝑠2 | 0 4 1 0 1 | 1
______|___________________________________________________|_________________
In the simplex table, we see that the coefficient of first non-basic variable 𝑥1 𝑖𝑠 𝑧1 − 𝑐1 = −1 ≤
0, and the coefficient of second non basic variable is 𝑧2 − 𝑐2 = −2 ≤ 0
Since 𝑧𝑗 − 𝑐𝑗 ≤ 0 for all j∈ 𝑁 so the solution in the table is optimal and the corresponding table
is optimal table. The optimal solution is 𝑥1 = 0, 𝑥2 = 0, 𝑠1 = 1, 𝑠2 = 1, and the corresponding
value of objective function z is 0
Improvement of Solution
For the case of non-optimal solution, we want to improve (get better) the solution through
simplex table. That is, we make the next simplex table containing better solution by the
exchange of one basic variable (leaving variable or outgoing variable) with one non-basic
variable (entering variable or incoming variable).
Selection of entering variable (incoming variable)
If at least one of the coefficients, 𝑧𝑗 − 𝑐𝑗 ; j∈ 𝑁, of 𝑥𝑗 is negative, then z can be
improved(increased) by increasing that non-basic variable from 0 to a positive number, when
the LPP is of maximization form.
Similarly, if at least one of the coefficients, 𝑧𝑗− 𝑐𝑗 of 𝑥𝑗 ,j∈ 𝑁 is positive, then the value of z can
be improved(decreased) by increasing that non-basic variable from 0 to a positive number,
when the LPP is of minimization form.
But for the better improvement of z, that non-basic variable should be increased from 0 to a
positive number, whose coefficient is the most negative for maximizing z and the most positive
for minimizing z
z | 1 -1 -2 0 0 | 0
_____|___________________________________________________|__________________
𝑠𝟏 | 0 1 3 1 0 | 1
𝑠2 | 0 4 1 0 1 | 1
______|___________________________________________________|_________________
In the simplex table, we see that the coefficient of first non-basic variable 𝑥1 𝑖𝑠 𝑧1 − 𝑐1 = −1 ≤
0, and the coefficient of second non basic variable is 𝑧2 − 𝑐2 = −2 ≤ 0
Since 𝑧𝑗 − 𝑐𝑗 ≤ 0 for at least one j∈ 𝑁 so the solution in the table is nonoptimal and the
corresponding table is nonoptimal table.
= 0 for j≠ 𝑖
Since all the non-basic variables 𝑥𝑗 are 0 except 𝑥𝑘 , therefore the equation reduces to
(𝐵−1 𝑏)𝑖
So, 𝑥𝑘 can be increased up to min {(𝐵−1𝑃 , 𝑓𝑜𝑟 (𝐵 −1 𝑃𝑘 )𝑖 > 0}
𝑖∈𝑁 𝑘 )𝑖
(𝐵−1 𝑏)𝑖
Let (𝐵−1 𝑃𝑘 )𝑖
is minimum for i=r
(𝐵−1 𝑏)𝑟
So, the incoming variable 𝑥𝑘 can be increased from 0 to a non-negative number (𝐵−1 𝑃𝑘 )𝑟
.
(𝐵−1 𝑏)𝑟
For the maximum increase let 𝑥𝑘 = (𝐵−1 . Now, 𝑥𝑘 becomes a basic variable.
𝑃𝑘 ) 𝑟
The entrance of 𝑥𝑘 in the set of basic variables will force a basic variable( termed as leaving
variable or outgoing variable) to leave the set of basic variables, to maintain exactly m number
of elements in the set of basic variables.
To search the leaving variable, we consider the 𝑟 𝑡ℎ equation from the generalized simplex
table as
∑𝑗∈𝑁(𝐵 −1 𝑃𝑗 ) 𝑥𝑗 + ∑𝑗∈ 𝑏𝑎𝑠𝑖𝑐(𝐼𝑗 ) 𝑥𝑗 =(𝐵 −1 𝑏)𝑟
𝑟 𝑟
= 0, for j≠ 𝑟
(𝐵−1 𝑏)𝑟
Using 𝑥𝑘 = (𝐵−1𝑃 , and setting all non-basic variables 𝑥𝑗 ( except 𝑥𝑘 ) zero we get
𝑘 )𝑟
After the selection of incoming and outgoing variable we have to develop the method of
transformation of the simplex table to get a transformed(new) simplex table containing
improved solution in which 𝑥𝑘 as a basic variable and (𝑥𝐵 )𝑟 as non-basic variable. It means
that we need transformation rules which transforms all the elements of the simplex table.
In the previous discussions we have derived the 𝑟 𝑡ℎ equation of the generalized simplex table
in the form
(𝐵−1 𝑃𝑗 ) 1 (𝐵−1 𝑏)𝑟
𝑟
∑𝑗∈𝑁−{𝑘} (𝐵−1 𝑥𝑗 +𝑥𝑘 +(𝐵−1 𝑃 (𝑥𝐵 )𝑟 =(𝐵−1
𝑃𝑘 ) 𝑟 𝑘 )𝑟 𝑃 𝑘 )𝑟
This is the transformation rule for outgoing variable (𝑥𝐵 )𝑟 row. This shows that replace the
outgoing variable (𝑥𝐵 )𝑟 by the incoming variable 𝑥𝑘 and divide each element of the 𝑟 𝑡ℎ row
by an element (𝐵 −1 𝑃𝑘 )𝑟 . Here the element (𝐵 −1 𝑃𝑘 )𝑟 is termed as the pivot element or key
element.
To search transformation rule for all the elements of the simplex table other than that of 𝑟 𝑡ℎ
row we consider 𝑖 𝑡ℎ equation (i≠ 𝑟) of the generalized simplex table as
Algorithm for solving LPP by simplex method
Step 1 Write standard LPP
Step 2 Make initial simplex table
Step 3 Check optimality condition. If it is satisfied then stop and note the optimal solution,
otherwise go to step 4
Step 4 Search incoming variable
Step 5 Search outgoing variable
Step 6 Search pivot element
Step 7 Replace outgoing variable by incoming variable and transform the data of the simplex
table to make the next simplex table.
Step 8 Go to step 3
Method for transforming the data of the simplex table to write the next simplex table
1 Divide the whole data of the pivot row (𝑟 𝑡ℎ row) by the key element (pivot element) (𝑃𝑘 )𝑟
to make the pivot element 1
2 Perform the following elementary row operations to make all the elements of pivot column
0 except the pivot element
(𝑃 )
𝑅𝑖 → 𝑅𝑖 - (𝑃 𝑘) 𝑖 𝑅𝑟 ; i=0,1,2,3….m,i≠ 𝑟 if (𝑃𝑘 )𝑖 <0
𝑘 𝑟
(𝑃 )
𝑅𝑖 → 𝑅𝑖 +(𝑃 𝑘) 𝑖 𝑅𝑟 ; i=0,1,2,3….m; i≠ 𝑟 if (𝑃𝑘 )𝑖 > 0
𝑘 𝑟
𝑅𝑖 → 𝑅𝑖 ;i=0,1,2,3…….m; i≠ 𝑟 𝑖𝑓(𝑃𝑘 )𝑖 =0( That is, there is no change in such type of rows)
Note that 𝑅𝑖 is the 𝑖 𝑡ℎ row of the simplex table. That is, 𝑅0 is the z-row(objective row), 𝑅1 is
the first basic variable row, 𝑅2 is the second basic variable
𝑡ℎ 𝑡ℎ
row,…..,𝑅𝑟 𝑖𝑠 𝑡ℎ𝑒 𝑟 𝑏𝑎𝑠𝑖𝑐 𝑣𝑎𝑟𝑖𝑎𝑏𝑙𝑒 𝑟𝑜𝑤(𝑝𝑖𝑣𝑜𝑡 𝑟𝑜𝑤), ….., 𝑅𝑚 is the 𝑚 basic variable row
(𝑃𝑘 )𝑖 ,i=0,1,2,3….m is the 𝑖 𝑡ℎ component of pivot column
The reason behind performing such operations is to make the elements of pivot column(column
of incoming variable) exactly same as the corresponding elements of the column of outgoing
variable.
Basic Z 𝑥1 𝑥2 𝑠1 𝑠2 𝑠3 𝑠4 Solution
z 1 -5 -4 0 0 0 0 0
𝑠1 0 6 4 1 0 0 0 24
𝑠2 0 1 2 0 1 0 0 6
𝑠3 0 -1 1 0 0 1 0 1
𝑠4 0 0 1 0 0 0 1 2
Here 𝑧1 − 𝑐1 = −5 < 0, 𝑧2 − 𝑐2 = −4 < 0, The solution in the initial simplex table is non
optimal. Improvement of the solution is possible. To search incoming variable, we proceed as
follows:
min{𝑧𝑗 − 𝑐𝑗 }= min{𝑧1 − 𝑐1 , 𝑧2 − 𝑐2 }= min{−5, −4}=-5= 𝑧1 -𝑐1= 𝑧𝑘 -𝑐𝑘 . So, k=1 and 𝑥𝑘 = 𝑥1
𝑗∈𝑁
6 (𝑃1 )1
(𝑃1 )2
is the incoming variable (entering variable). So, k=1 and 𝑃𝑘 = 𝑃1 = [ 1 ] =
−1 (𝑃1 )3
0 [(𝑃1 )4 ]
(𝑏)
To search outgoing variable, we apply minimum ratio rule{(𝑃 )𝑖 , (𝑃1 )𝑖 > 0}
1 𝑖
(𝑏)
= min {(𝑃 )𝑖 , (𝑃1 )𝑖 > 0}
𝑖=1,2 1 𝑖
24 6
= min{ 6 , 1 , −, −}
−5 5 1 1 −1 1
𝑅0 → 𝑅0 − 𝑅1 = 𝑅0 + 6 𝑅1 , 𝑅1 → 6 𝑅1 , 𝑅2 → 𝑅2 − 6 𝑅1 , 𝑅3 → 𝑅3 − 𝑅1 = 𝑅3 + 6 𝑅1
6 6
4 2 5 2 3 3
Min{ 2 , 4 , 5 , 1}=min{6, 2 , 3,2}=2 corresponding to second basic variable 𝑠2 . Therefore, 𝑠2 is
3 3 3
outgoing variable. Here r=2
4
The key element(pivot element) is (𝑃𝑘 )𝑟 = (𝑃2 )2 = second element of the second row= 3..Note
that z-row is the 0𝑡ℎ row represented by 𝑅0 , and z-column is the 0𝑡ℎ column for the data of the
simplex table.
To make the second simplex table, we perform the following elementary row operations
2 2
− 1 1 1 3
3 3
𝑅0 → 𝑅0 − 4 𝑅2 = 𝑅0 + 2 𝑅2 , 𝑅1 → 𝑅1 − 𝑅2 = 𝑅1 − 2 𝑅2 , 𝑅2 →
4 4 𝑅2 = 4 𝑅2 ,
3 3 3
5
3 5 1 3
𝑅3 → 𝑅3 − 𝑅2 = 𝑅3 − 4 𝑅2 , 𝑅4 → 𝑅4 − 4 𝑅2 =𝑅4 − 4 𝑅2
4
3 3
Also, replace basic variable 𝑠2 by non-basic variable 𝑥2 . We get the next simplex table as
Second Simplex Table
Basic Z 𝑥1 𝑥2 𝑠1 𝑠2 𝑠3 𝑠4 Solution
Z 1 0 0 3 1 0 0 21
4 2
𝑥1 0 1 0 1 1
-2 0 0 3
4
1 3 3
𝑥2 0 0 1 -8 0 0
4 2
𝑠3 0 0 0 3 5
-4 1 0 5
8 2
1 3 1
𝑠4 0 0 0 -4 0 1
8 2
Second simplex table is optimal because 𝑧𝑗 − 𝑐𝑗 ≥ 0 for all j and the optimal solution from
3 5 1
the table is z =21 for 𝑥1 = 3, 𝑥2 = 2 , 𝑠1 = 0, 𝑠2 = 0, 𝑠3 = 2,𝑠4 = 2