Theorem 2.5 If there exists a feasible solution to the LPP then there exists a basic feasible solution to a given LPP
2.8 Simplex Method
In general, any system may not be restricted to only two decision variables. In this section we try to explore an algebraic technique to solve LPP iteratively in finite number of steps. This method is known as simplex method.
In this method, we start with one of the vertex or extreme point of SF and at each step or iteration move to an adjacent vertex in such a way that the value of the value of the objective for iteration improves at each iteration. This method either gives an optimum solution (if it exists) or gives an induction that the given LPP has an unbounded solution.
Consider LPP :
Maximize (Minimize) Z = cTx subject to Ax = b, x ≥ 0. Assume that the rank of (A, b) = rank of A equal to m but less than or equal to n. This means that the set of constraint equation is consistent, all m – rows of A are linearly independent and the number of constraints are less than or equal to the number of decision variables.
Further, Ax = b, can be written as x1a1 + x2a2 + … + xnan = b
i.e. aj is the column of A associated with the variables xj , j = 1, 2, …, n. Since rank of A is equal to m less than n, there are m – linearly independent columns of A. These m – linearly independent columns of A will form a basis in Rm. Let B : m × m denote the matrix formed by m – linearly independent columns of A, then B = (b1, b2, …, bj, …, bm)
will represent the basis matrix. Obviously, B : m × m will be non-singular so that B-1 exists. Any column (say) bi of B is some column (say) aj of A. Note that it is not necessary that the arrangement of column in B should be in accordance with those of A.
Any vector aj є A can be expressed as a linear combination of columns of B. i.e. for any aj є A, there exists
scalars y1j, y2j, …, ymj such that aj = y
m
j 1 ∑ =
ij bi or aj = Byj, j = 1, 2, …, n where yj = (y1j, y2j, …, ymj ). Thus, A = (a1, a2, …, aj, …, an) = (By1, By2, …, Byj, …, Byn) = B(y1, y2, …, yj, …, yn)i.e A = By implies y = B-1 A or yj = B-1 aj , j = 1, 2, …, n.
With this discussion, we are ready to study Simplex method.
Consider the LPP :
Maximize Z = cTx subject to Ax = b, x ≥ 0.
The aim is to obtain an optimum basic feasible solution for given LPP. Since simplex method is an iterative method, we assumed that an initial basic feasible solution is available.
Let B : m × m denote a basis matrix (say) B = (b1, b2, …, bj, …, bm). Each bi is some aj of A, i =1, 2, …, m and j = 1, 2, …, n. The columns of A included in B are called basic vectors and those which are not in B are called non-basic vectors. The variables vector x chosen corresponding to vectors in basis matrix B are known as basic variables and rest are known as non-basic variables. Then the constraint equations Ax = b can now be written as BxB
+ PxR = b where B : m × m is the basis matrix and R : m × (n – m) is the non-basis matrix formed by the non-basic vectors of A. xB : m × 1 is the vector corresponding to basic variables and xR : (n – m) × 1 is the vector corresponding to non - basic variables. Taking xR = 0, we get BxB = b or xB = B-1b.
The basis matrix B : m × m is chosen in such a way that xB = B-1b ≥ 0. Then we have basic feasible solution to the given LPP.
Let CB : m × 1 denote the cost vector corresponding to the variables in xB . Then the value of the objective function for this solution is
ZB = cTB xB + cTR xR = cTB xB = cTB B-1b.
Further, corresponding to above basis matrix we define a new quantity
Zj = cTB yj = c m
i 1
∑
= TBi yij = cTB B-1bFurther, corresponding to above basis matrix we define a new quantity
cj = cTB yj = c m
i 1
∑
= TBi yij cTB B-1aj , j = 1, 2, …, n.The quantity zj – cj (or cj – zj), j = 1, 2, …, n is known as net evaluations. After obtaining a basic feasible solution check following :
1) Whether the basic feasible solution is optimum or not ? and
2) If not to obtain a new improved basic feasible solution. This can be done by remaining one of the basic vectors from the matrix B = (b1, b2, …, br, …, bm) and inserting a non-basic vectors of A = (a1, a2, …, aj,
…, an) in its place.
The problem is “Which basic variable should be removed from B and which of the non-basic variable should be introduced in its place ?”
Suppose we remove a basic vector br from B and introduce a non-basic vector aj є A in its place. Let B* denote the non-basic matrix obtained by replacing aj in place of br then
B* = (b1, b2, …, br-1, aj , br+1, …, bm) = (b1, b2, …, br-1, br + aj - br, br+1, …, bm)
= (b1, b2, …, br-1, br, br+1, …, bm) + (0, 0, …, 0, aj - br, 0, …, 0)
Therefore, B* = B + (aj - br) eTr where eTr є Rm is the r – th unit vector in Rm . This gives
B*-1 = B-1 -
1 T
j r r
T 1
r j r
B (a b )e B 1 e B (a b )
− −
−
−
1+ − =
B-1 -
1 T
j r r
rj
B (a b )e B y
−
−
−1=
B-1 -T 1
j r r
rj
(y e )e B y
−
−
In order that B*-1 can be obtained the necessary condition is yrj ≠ 0. Thus, aj can replace br if and only if yrj ≠ 0. The new solution is then
xB* = B-1b = (B-1 -
T 1
j r r
rj
(y e )e B y
−
−) b = B-1b -
T 1
j r r
rj
(y e )e B y
−
−b = xB -
T
j r r
rj
(y e )e y
−
xB= xB -
T
j r r
rj
(y e )e y
−
xBrTherefore, xB* = xB - Br
rj
x
y (yj – er).
Hence, the new solution is xBi* = xBi - Br
rj
x
y (yj – 0), i = 1, 2, …, m, i ≠ r because in er, i-th element is zero. So xBi* =
xBi - Br
rj
x
y yij or xBr
* = xBr - Br
rj
x
y (yrj -1) =
Br rj
x y .
We thus have a new basic solution. In order that the new solution is feasible, we require xBi* ≥ 0, i = 1, 2,
…, m i.e. xBr* = Br
rj
x
y > 0, i = 1, 2, …, m, i ≠ r. Since xBr ≥ 0, xBr* = Br
rj
x
y > 0 if yrj > 0. Thus, we require that yrj > 0.
Further, xBi - Br
rj
x
y yij ≥ 0 implies Br
rj
x y ≤
Bi ij
x
y , i = 1, 2, …, m. Hence, Br
rj
x
y = mini { Bi
ij
x
y , yij > 0}. (2.13)
Thus, the vector br to be removed from B should be chosen in accordance with (2.13). Let cB* denote the new cost vector corresponding to the new solution then
cB* = (cB1, cB2, …, cBr-1, cBj, cBr+1, …, cBm)T = (cB1, cB2, …, cBr-1, cBr + cj - cBr, cBr+1, …, cBm)T and new value of the objective function is
Z* = cTB* xB*= [cTB + (cj – cBr)eTr ] [xB - Br
rj
x
y (yj – er)]. Put
Br rj
x y = θ = cTB* xB*= [cTB + (cj – cBr)eTr ] [xB - θ (yj – er)]
= Z - θ (zj – cj ) (2.14)
Our aim is to maximize Z, and so we require Z* > Z equivalently zj – cj (or cj – zj) > 0 (< 0).
Therefore, the vector aj є A to be introduced into the basis matrix B must be such that zj – cj > 0 (or cj – zj
< 0). Note that determination of aj does not require information about br. However, determination of vector br to be removed from the basis requires information about both r and j.
We should first determine the vector aj to be introduced into new basis and then using (2.13) determine the vector br to be removed from B. Continuing in this may for finite number of steps, we can ultimately obtain optimum solution. The new y - matrix is
y* = B*-1 A = [B-1 -
T 1
j r r
rj
(y e )e B y
−
−] A = B-1 A-
T 1
j r r
rj
(y e )e B y
−
−A
= y -
rj
1
y
(yj – er) erTy
= y -
rj
1
y
(yj – er) (yr1, yr2, …, yij, …, yrn)Comparing the elements on both sides, we get yik* = yik -
rj
1 y
yij yrkSo yij* = yij -
rj
1
y
(yij yrj – 0), i =1, 2, …, m, i ≠ r , j = 1, 2, …, n, k ≠ j andyrj* = yrj -
rj
1
y
(yrj yrj – yrj) = 1.Note :
1. While discussing simplex method, we have assumed an initial basic feasible solution, we have assumed an initial basic feasible solution with a basis matrix B. If B = I then B-1 = I then initial solution xB = B-1b = b and y matrix is y = B-1A = A. Net evaluations, zj – cj = - cj + cBTB-1aj = - cj + cBTaj , j = 1, 2, …, n and value of the objective function Z = cBTxB = cBTb. Thus, we observe that if initial basis matrix is a unit matrix then it is easy to obtain initial solution and related parameters. Hence, in order to obtain initial basic feasible solution, we shall assume that a unit matrix is present as a sub-matrix of the coefficient matrix A.
2. For choosing incoming vector aj in the next basis, choose that zj – cj ( cj – zj)which is most negative (positive). If two or more zj – cj ( cj – zj) have the same most negative (positive) value, choose any one of the corresponding vector to enter into the basis.
3. After choosing the incoming vector, choose the outgoing vector which satisfies (2.13). If this minimum value is assumed for more than two vectors, choose any one of the corresponding basis vector from B.
Following two theorems will state without proof.