Simplex Method Using Artificial Variables
Once a basic feasible solution to a linear programming problem is known, then one can create a canonical tableau for the problem with little or no effort. The system of constraints for many linear programming problems contain no obvious basic feasible solutions. By introducing into the problem a sufficient number of variables, called artificial variables, we put the system of constraints into canonical form with these variables as the basic variables. Then we apply the simplex method, not to the objective function of the original problem, but to a new objective function. We illustrate the method with the next problem.
Consider the following Linear Programming Problem and its artificial canonical form (a canonical form where at least one basic variable is an artificial variable; it also contains an extra objective function w, where w is equal to the sum of all the artificial variables).
Minimize z = 2 x_{1}  3 x_{2} + x_{3} + x_{4}
subject to:
x_{1}   2 x_{2}   3 x_{3} 
 2 x_{4}  = 3 
x_{1}   x_{2}  + 2 x_{3}  + x_{4}  = 11 
x_{1}, x_{2}, x_{3}, x_{4} > = 0

x_{1}   2 x_{2}   3 x_{3}   2 x_{4}  + x_{5}   = 3 
x_{1}   x_{2} 
+ 2x_{3}  + x_{4}   + x_{6}  = 11 
2 x_{1}   3 x_{2}  + x_{3}  + x_{4}    = z 
    x_{5}  + x_{6 } 
= w 
x_{1}, x_{2}, x_{3}, x_{4} x_{5}, x_{6} > = 0,
where z and w are minimum.

The minimum value of w is reached at x_{5} = x_{6} = 0. A basic solution to the system with artificial variables is
x_{1} = x_{2} = x_{3} = x_{4} = 0 , x_{5} = 3 and x_{6} = 11.
To obtain a canonical form for both z and w, we must subtract the sum of the rows with artificial variables from the row with w.
We will use Simplex method to minimize w. Once w is minimized, by deleting the row with w and columns with artificial variables, we obtain a canonical form for the original problem. Also note that if our original problem has a feasible solution, then
a canonical tableau for the original problem has no artificial variables. This means that although we are using
x_{5} and x_{6} in order to obtain a canonical tableau for our original problem, all the values in the artificial tableaux under these two variables are not important to us.
In the tableaux on the right side, all the row operations are the same as the ones on the left side, but values for the artificial variables are not shown.



b 




c_{0} 

 0 
w_{0} 

 0 




c_{1} 

 0 
w_{1} 

 14 




c_{2} 

 6 
w_{2} 

 8 




c_{3} 

 14 
w_{3} 

 0 



b 



c_{0} 
 0 
w_{0} 
 0 



c_{1} 
 0 
w_{1} 
 14 



c_{2} 
 6 
w_{2} 
 8 



c_{3} 
 14 
w_{3} 
 0 

Tableau 1.
The initial tableau is canonical for z but not w, so we need to obtain a canonical tableau for
both z and w.
Tableau 2.
We subtract from the last row, the sum of the rows of the matrix A with artificial variables.
In this problem both rows contain artificial variables.
The pivot entry is selected by using
w_{11} =  2 and not c_{12} =  3.
Tableau 3.
Instead of using w_{23} =  5 as it is suggested, we choose
w_{22} =  1 > 5 = w_{23}, just because it involves less computations.
Tableau 4.
If we delete the last row (the row with w_{3}), we get a canonical tableau for our original problem.
In this example, the final tableau for w also gives us an optimal solution
z* =  ( 14 ) = 14 to the original problem at
x_{1} = 19 , x_{2} = 8 , x_{3} = 0 and x_{4} =
0.
Redundant System. A linear programming problem could very well have feasible solutions but some of the equations in the system of constraints could be linear combinations of the remaining equations. This often when, more than the minimal number of necessary equations are introduced into a problem. It is important to note that the redundancy never occurs when there are no equalities in the system of constraints.
Here is an example.
Minimize z = 4 x_{1} + x_{2} + 3 x_{3} + 2 x_{4}
subject to:
R_{1} :  2x_{1}  + x_{2}   +x_{4}  = 20 
R_{2} :  x_{1}  +2x_{2}  + x_{3}  
= 10 
R_{3} :  4x_{1}   x_{2}   2x_{3}  + 3x_{4}  = 40 
x_{1}, x_{2}, x_{3}, x_{4} > = 0 
Notice that
R_{3} = 3 R_{1}  2 R_{2} .
This means that the third row is redundant, so we only need the first two rows.


b 

2 
1 
0 
1 

2 
1 
0 
4 
1 
2 
3 


c_{0} 
 0 
w_{0} 
 70 



b 

0 
3 
2 

1 
2 
1 
0 
0 
9 
6 
3 


c_{1} 
 40 
w_{1} 
 0 



b 

0 
3 
2 
1 
1 
2 
1 
0 
0 
0 
0 
0 


c_{2} 
 40 
w_{2} 
 0 

The canonical tableau is :