Home > Operation Research calculators > Revised Simplex method example

9. Revised Simplex method example ( Enter your problem )
  1. Standard form-1 : Example-1
  2. Standard form-1 : Example-2
  3. Standard form-1 : Example-3
  4. Standard form-2 using Two-Phase method : Example-1
  5. Standard form-2 using Two-Phase method : Example-2
  6. Standard form-2 using Two-Phase method : Example-3
  7. Standard form-2 using Big M method : Example-1
  8. Standard form-2 using Big M method : Example-2
  9. Standard form-2 using Big M method : Example-3
Other related methods
  1. Formulate linear programming model
  2. Graphical method
  3. Simplex method (BigM method)
  4. Two-Phase method
  5. Primal to dual conversion
  6. Dual simplex method
  7. Integer simplex method
  8. Branch and Bound method
  9. 0-1 Integer programming problem
  10. Revised Simplex method

6. Standard form-2 using Two-Phase method : Example-3
(Previous example)
8. Standard form-2 using Big M method : Example-2
(Next example)

7. Standard form-2 using Big M method : Example-1





Find solution using Revised Simplex (BigM) method
MAX Z = x1 + x2
subject to
2x1 + 5x2 <= 6
x1 + x2 >= 2
and x1,x2 >= 0


Solution:
Problem is
Max `Z``=``````x_1`` + ````x_2`
subject to
```2``x_1`` + ``5``x_2``6`
`````x_1`` + ````x_2``2`
and `x_1,x_2 >= 0; `


Step-1 :
The problem is converted to canonical form by adding slack, surplus and artificial variables as appropiate

After introducing slack,surplus,artificial variables
```2``x_1`` + ``5``x_2`` + ````S_1`=`6`
`````x_1`` + ````x_2`` - ````S_2`` + ````A_1`=`2`


The problem is converted to canonical form by adding slack, surplus and artificial variables as appropiate

After introducing slack,surplus,artificial variables
`````Z'`` - ````x_1`` - ````x_2`` - ``M``A_1`=`0`
```2``x_1`` + ``5``x_2`` + ````S_1`=`6`
`````x_1`` + ````x_2`` - ````S_2`` + ````A_1`=`2`


Now represent the new system of constraint equations in the matrix form
`[[1,-1,-1,0,0,-M],[0,2,5,1,0,0],[0,1,1,0,-1,1]][[Z'],[x_1],[x_2],[S_1],[S_2],[A_1]]=[[0],[6],[2]]`

or
`[[1,-c],[0,A]][[Z],[x]]=[[0,b]]; x>=0`

where `e=beta_0,a_3=beta_1,a_4=beta_2`

Step-2 : The basis matrix `B_1` of order `(2+1)=3` can be expressed as

`B_1=[beta_0,beta_1,beta_2]=[[1,0,-M],[0,1,0],[0,0,1]]`

Then, `B_1^(-1)=[[1,C_B B^(-1)],[0,B^(-1)]]=1; B=[[1,0],[0,1]]=[beta_1,beta_2]; C_B=[0,0]`

Basis Inverse `B_1^(-1)`Additional table
`B``X_B``beta_0`
`Z'`
`beta_1`
`S_1`
`beta_2`
`A_1`
`y_1`
 
Min Ratio
`(X_B)/(y_1)`
`x_1``x_2``S_2`
`Z'``0``1``0``-M`---`-1``-1``0`
`S_1``6``0``1``0`---`2``5``0`
`A_1``2``0``0``1`---`1``1``-1`



Iteration=1 : Repeat steps 3 to 5 to get new solution
Step-3: To select the vector corresponding to a non-basic variable to enter into the basis, we compute
`z_k-c_k="Min" {(z_j-c_j)<0;}`

`="Min"{(1^(st)" row of " B_1^(-1)) ("Columns " a_j " not in basis")}`

`="Min"{[[1,0,-M]] [[-1,-1,0],[2,5,0],[1,1,-1]]}`

`="Min"{[[-M-1,-M-1,M]]}`

`=-M-1` (correspnds to `z_1-c_1`)

Thus, vector `x_1` is selected to enter into the basis, for `k=1`

Step-4: To select a basic variable to leave the basis, we compute `y_k` for k=1, as follows


`y_1= B_1^(-1) a_1=[[1,0,-M],[0,1,0],[0,0,1]] [[-1],[2],[1]]=[[-M-1],[2],[1]]`

and `X_B = [[0],[6],[2]]`

Now, calculate the minimum ratio to select the basic variable to leave the basis
`x_(Br)/y_(rk)= "Min" {x_(Bi)/y_(ik), y_(ik)>0}`

`="Min"{(6)/(2),(2)/(1)}`

`="Min"{3,2}`

`=2 ("correspnds to " x_(B2)/y_(21))`

Thus, vector `A_1` is selected to leave the basis, for `r=2`

The table with new entries in column `y_1` and the minimum ratio

Basis Inverse `B_1^(-1)`Additional table
`B``X_B``beta_0`
`Z'`
`beta_1`
`S_1`
`beta_2`
`A_1`
`y_1`
 
Min Ratio
`(X_B)/(y_1)`
`x_1``x_2``S_2`
`Z'``0``1``0``-M``-M-1`---`-1``-1``0`
`S_1``6``0``1``0``2``3``2``5``0`
`A_1``2``0``0``1``1``2``1``1``-1`


The table solution is now updated by replacing variable `A_1` with the variable `x_1` into the basis.

For this we apply the following row operations in the same way as in the simplex method
`X_B``beta_1``beta_2``y_1`
`R_1``0``0``-M``-M-1`
`R_2``6``1``0``2`
`R_3``2``0``1``1`


`R_3`(new)`= R_3`(old)
`R_3`(old) = `2``0``1`
`R_3`(new)`= R_3`(old)`2``0``1`


`R_1`(new)`= R_1`(old) + `(M+1) R_3`(new)
`R_1`(old) = `0``0``-M`
`R_3`(new) = `2``0``1`
`M+1 xx R_3`(new) = `2M+2``0``M+1`
`R_1`(new)`= R_1`(old) + `(M+1) R_3`(new)`2M+2``0``1`


`R_2`(new)`= R_2`(old) - `2 R_3`(new)
`R_2`(old) = `6``1``0`
`R_3`(new) = `2``0``1`
`2 xx R_3`(new) = `4``0``2`
`R_2`(new)`= R_2`(old) - `2 R_3`(new)`2``1``-2`


The improved solution is
Basis Inverse `B_1^(-1)`Additional table
`B``X_B``beta_0`
`Z'`
`beta_1`
`S_1`
`beta_2`
`x_1`
`y_1`
 
Min Ratio
`(X_B)/(y_1)`
`A_1``x_2``S_2`
`Z'``2M+2``1``0``1`---`M``-1``0`
`S_1``2``0``1``-2`---`0``5``0`
`x_1``2``0``0``1`---`1``1``-1`



Iteration=2 : Repeat steps 3 to 5 to get new solution
Step-3: To select the vector corresponding to a non-basic variable to enter into the basis, we compute
`z_k-c_k="Min" {(z_j-c_j)<0;}`

`="Min"{(1^(st)" row of " B_1^(-1)) ("Columns " a_j " not in basis")}`

`="Min"{[[1,0,1]] [[M,-1,0],[0,5,0],[1,1,-1]]}`

`="Min"{[[M+1,0,-1]]}`

`=-1` (correspnds to `z_3-c_3`)

Thus, vector `S_2` is selected to enter into the basis, for `k=3`

Step-4: To select a basic variable to leave the basis, we compute `y_k` for k=3, as follows


`y_3= B_1^(-1) a_3=[[1,0,1],[0,1,-2],[0,0,1]] [[0],[0],[-1]]=[[-1],[2],[-1]]`

and `X_B = [[2M+2],[2],[2]]`

Now, calculate the minimum ratio to select the basic variable to leave the basis
`x_(Br)/y_(rk)= "Min" {x_(Bi)/y_(ik), y_(ik)>0}`

`="Min"{(2)/(2)}`

`="Min"{1}`

`=1 ("correspnds to " x_(B1)/y_(13))`

Thus, vector `S_1` is selected to leave the basis, for `r=1`

The table with new entries in column `y_3` and the minimum ratio

Basis Inverse `B_1^(-1)`Additional table
`B``X_B``beta_0`
`Z'`
`beta_1`
`S_1`
`beta_2`
`x_1`
`y_3`
 
Min Ratio
`(X_B)/(y_3)`
`A_1``x_2``S_2`
`Z'``2M+2``1``0``1``-1`---`M``-1``0`
`S_1``2``0``1``-2``2``1``0``5``0`
`x_1``2``0``0``1``-1`---`1``1``-1`


The table solution is now updated by replacing variable `S_1` with the variable `S_2` into the basis.

For this we apply the following row operations in the same way as in the simplex method
`X_B``beta_1``beta_2``y_3`
`R_1``2M+2``0``1``-1`
`R_2``2``1``-2``2`
`R_3``2``0``1``-1`


`R_2`(new)`= R_2`(old)` -: 2`
`R_2`(old) = `2``1``-2`
`R_2`(new)`= R_2`(old)` -: 2``1``1/2``-1`


`R_1`(new)`= R_1`(old) + `R_2`(new)
`R_1`(old) = `2M+2``0``1`
`R_2`(new) = `1``1/2``-1`
`R_1`(new)`= R_1`(old) + `R_2`(new)`2M+3``1/2``0`


`R_3`(new)`= R_3`(old) + `R_2`(new)
`R_3`(old) = `2``0``1`
`R_2`(new) = `1``1/2``-1`
`R_3`(new)`= R_3`(old) + `R_2`(new)`3``1/2``0`


The improved solution is
Basis Inverse `B_1^(-1)`Additional table
`B``X_B``beta_0`
`Z'`
`beta_1`
`S_2`
`beta_2`
`x_1`
`y_3`
 
Min Ratio
`(X_B)/(y_3)`
`A_1``x_2``S_1`
`Z'``2M+3``1``1/2``0`---`M``-1``0`
`S_2``1``0``1/2``-1`---`0``5``1`
`x_1``3``0``1/2``0`---`1``1``0`



Iteration=3 : Repeat steps 3 to 5 to get new solution
Step-3: To select the vector corresponding to a non-basic variable to enter into the basis, we compute
`z_k-c_k="Min" {(z_j-c_j)<0;}`

`="Min"{(1^(st)" row of " B_1^(-1)) ("Columns " a_j " not in basis")}`

`="Min"{[[1,1/2,0]] [[M,-1,0],[0,5,1],[1,1,0]]}`

`="Min"{[[M,3/2,1/2]]}`

Since all `Z_j-C_j >= 0`

Hence, optimal solution is arrived with value of variables as :
`x_1=3,x_2=0`

Max `Z=3`


This material is intended as a summary. Use your textbook for detail explanation.
Any bug, improvement, feedback then Submit Here



6. Standard form-2 using Two-Phase method : Example-3
(Previous example)
8. Standard form-2 using Big M method : Example-2
(Next example)





Share this solution or page with your friends.


 
Copyright © 2024. All rights reserved. Terms, Privacy
 
 

.