Académique Documents
Professionnel Documents
Culture Documents
So far we have solved linear Programming problems graphically. All of the problems have
involved only 2 variables, and this has allowed us to draw graphs to show the feasible
region. From this we have then been able to determine the extreme points of the region
to solve the problem. However,
if there are 3 or more variables then this method is of
y
no use. Instead we use a numerical method based on Gaussioan Elimination. This is called
the SIMPLEX METHOD.
Maximise
Subject to
z=+y
3 + 4y 12
3 + 2y 9
O0 , y 0
We know that the optimal solution occurs at one of the vertices of the feasible region
shown below:
Since the axis is the line where y = 0 and the y axis where = 0, let us define
AB as u = 0 and BC as v = 0.
The vertices are now the points where exactly two of , y, u and v are zero.
I.e.
At O
At A
At B
At C
=y=0
=u=0
u=v=0
v=y=0
In effect u and v represent the slack between the maximum available for each
constraint and the amount being used. We can therefore replace the inequalities by the
equations:
3 + 4y + u = 12
3 + 2y + v = 9
With u 0 and v 0
The problem can now be restated as:
Maximise
z=+y
When
3 + 4y + u = 12
3 + 2y + v = 9
With 0 , y 0, u 0 and v 0
then
-a -b
Example
Write the following Linear Programming problem in standard form and introduce slack
variables.
Maximise
Subject to the constraints
P = 2 + y
+ y 10
4 + 2y 15
3 + y 5
0,y0
The 3rd constraint (3 + y 5) is not in the correct form but can be changed to
-3 - y 5
P = 2 + y
+ y 10
4 + 2y 15
-3 - y -5
0,y0
P = 2 + y
When
+ y + u = 10
4 + 2y + v = 15
-3 - y + w = -5
0 , y 0, u 0, v 0 and w 0
The Simplex Method effectively does a tour of the boundary of the feasible region
stopping at the vertices to examine the value of the objective function. We will see that
there is a recognisable situation when we have reached the optimal solution. This means
that we do not necessarily need to examine each vertex as we did for the graphical
method.
To solve, we first need to introduce the slack variables and then set up the Simplex
Tableau.
z=+y
When
3 + 4y + u = 12
3 + 2y + v = 9
With 0 , y 0, u 0 and v 0
Firstly we need to rewrite the objective equation = 0 by rearranging it.
z--y=0
NOTE We could have rearranged this as + y z = 0 but for the Simplex Method to
work we need the values of and y to be negative at the start.
We then write the equations in a tableau as shown below
12
-1
-1
The first two rows represent the constraint equations with the slack variables and the
bottom row represents the objective function.
We will choose
u
12
-1
-1
column
Pivot
As we increase it is clear from the graph that we should stop at vertex C which is on
the line 3 + 2y = 9.
3 + 2y = 9
B
3 + 4y = 12
We can find the information from the tableau by dividing the right hand column entries
(12 and 9) by the column entries. The SMALLEST POSITIVE VALUE will occur in the
row corresponding to the correct line.
This is called the PIVOT ROW. The value in the first row is 3 and 12 3 = 4; the
value in the second row is also 3 and 9 3 = 3. As 3 is smaller than 4 the second row
becomes our pivot row.
u
12
12 3 = 4
93=3
-1
-1
Pivot row
column
Pivot
The value that is in BOTH the pivot column and the pivot row is called the PIVOT
ELEMENT. (The boxed 3 in this case)
We now need to make the PIVOT ELEMENT HAVE A VALUE OF 1. We use division and
have to perform the same operation to all numbers in that row.
In the example we need to change 3 to 1, so obviously we need to divide by 3 and thus
need to divide by three throughout this row.
R2 3
12
2/3
1/3
-1
-1
We now want to make all other elements in the pivot column zero by carrying out ROW
OPERATIONS (similar to solving simultaneous equations).
To change the 3 in row 1 to 0 we need to subtract a multiple of row 2 from it.
i.e. 3 times row 2.
R1 - 3R2
-1
2/3
1/3
-1
-1
We now take our value in row 2 and add it to the value in row 3 to obtain a new value of
z.
R3 + R2
-1
2/3
1/3
-1/3
1/3
New value
of z
From the tableau we can set y and v to 0 and find that = 3 and z = 3 (i.e. read along
from where the value is 1 in the column)
We have therefore arrived at the vertex where = 3 and y = 0 giving the objective
z = 3.
This is ONE ITERATION of the SIMPLEX ALGORITHM.
However, we still have a negative value in the objective row so we must repeat the
process again,
We now have the tableau
-1
2/3
1/3
-1/3
1/3
As the column y now has the greatest negative value (the only negative value) in the
objective row, this becomes our pivot column and, by division, row R1 will be the pivot
row (1.5 is smaller than 4.5).
y
-1
3 2 = 1.5
2/3
1/3
3 2/3 = 4.5
-1
-1
1/3
Pivot row
column
Pivot
R1 2
1/2
-1/2
3/2
2/3
1/3
-1/3
1/3
R2
2
R1
3
and
R3 +
1
R1
3
giving
1/2
-1/2
3/2
R2 - 2/3R1
-1/3
2/3
R3 + 1/3R1
1/6
1/6
3.5
3
1
and z = 3
(3.5).
2
2
Example 2
Use a simplex tableau to solve the Linear Programming problem. Begin by pivoting on an
element chosen from the column. Write down the values of , y and f at the end of
each iteration.
Maximise
f = 9 + 4y
Subject to
3 + 4y 48
2 + y 17
3 + y 24
0, y 0
Solution
Introduce the slack variables
3 + 4y + u = 48
2 + y + v = 17
3 + y + w = 24
-9 - 4y + f = 0
The Simplex Tableau is
x
3
2
48
17
24
-9
-4
is the pivot column (told but also the largest negative entry in the objective column)
48 3 = 16
17 2 = 8.5
24 3 = 8
R3 3
x
R1
48
R2
17
R3
1/3
1/3
R4
-9
-4
Pivot about the values i.e. make all the values in R1, R2 and R4 all equal 0.
R1 3R3
R2 2R3
R4 + 9R3
R1
-1
24
R2
1/3
-2/3
R3
1/3
1/3
R4
-1
72
1
=3
3
1
= 24
3
1
is the pivot element.
3
R2
1
3
x
R1
-1
24
R2
-2
R3
1/3
1/3
R4
-1
72
R1 3R2
R3 -
1
R2
3
R4 + R2
R1
-9
15
R2
-2
R3
-1
R4
75
As all the entries in the objective row are non-negative this is the optimal solution
If we set v and w to 0 we get
= 7 , y = 3 and f = 75
Example 3
f = - + 8y + z
Where
+ 2y + 9z 10
y + 4z 10
0,y0,z0
Solution to example 3
Objective function
f = - + 8y + z
f + - 8y z = 0
Slack variables
+ 2y + 9z + u = 10
y + 4z + v = 12
Simplex tableau
x
1
0
1
y
2
1
-8
z
9
4
-1
u
1
0
0
v
0
1
0
f
0
0
1
10
12
0
12 1 = 12
R1
R2
R3
x
1/2
0
1
y
1
1
-8
z
9/2
4
-1
R2 R1
R1
R2
R3
x
1/2
-1/2
5
y
1
0
0
z
9/2
-1/2
35
u
1/2
0
0
v
0
1
0
f
0
0
1
5
12
0
v
0
1
0
f
0
0
1
5
7
40
R3 + 8R1
u
1/2
-1/2
4