



Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
The simplex method in matrix form for solving the linear programming problem in standard form, and illustrates the method with an example. It includes finding a basic feasible solution, expressing equality constraints, determining if a non-basic variable can enter the basis, the ratio test, and finding the optimal solution.
Typology: Exams
1 / 7
This page cannot be seen from the preview
Don't miss anything!




Let us describe the simplex method in matrix form.
We are considering the linear programming problem in standard form
min c
T x
s.t. Ax = b
x ≥ 0.
We assume that we have found a basic feasible solution, corresponding to the
basis xB. We split A and x according to this basis, so
, x =
xB
xN
, c =
cB
cN
basic variables appear in as simple form as possible. With our splitting,
the equality constraints are
BxB + NxN = b.
We multiply this from the left by B
− 1
. Note that the fact that B is
invertible comes from the definition of xB being basic variables. This
gives
xB + B
− 1 NxN =
b (1)
where we define ˆb = B
− 1 b.
function by letting any of the non-basic variables become basic. In
order to do this, we represent the objective function using only the
non-basic variables.
The original form of the objective function is
z = c
T x = c
T B xB^ +^ c
T N xN^.
Using (1) this becomes
z =c
T B (B
− 1 b − B
− 1 NxN ) + c
T N xN
=c
T B B
− 1 b + (c
T N −^ c
T B B
− 1 N)xN
=ˆz + ˆc
T N xN^.
where we define ˆc
T N =^ c
T N −^ c
T B B
− 1 N and ˆz = c
T B B
− 1 b. We refer to the
coefficient ˆct multiplying the variable xt of xN as the reduced cost of xt.
We now examine the values in the vector ˆc. If a particular ct from this
vector is negative then the value of the objective function will decrease
if we let the non-basic xt enter the basis.
non-basic variables enter the basis and in fact this means that the
current feasible basic solution is an optimal basic feasible solution
and we are done.
the variable xt such that ˆct has the largest (in magnitude) to enter
the basis. This will decrease the objective function the fastest.
basis can take. We note that since all the non-basic variables except xt
will remain at the value 0 we get from (1) that
xB = ˆb − Aˆtxt
where
At = B
− 1 At and At is the column of A corresponding to xt. We
examine this equality, component for component, with respect to the
constraint that all of the variables in xB must remain non-negative.
Thus
(xB )i = ˆbi − ˆai,txt ≤ 0.
We can write this in the form
min c
T x
s.t. Ax = b
x ≥ 0
with
b =
c =
x =
x 1
x 2
x 3
x 4
x 5
x 6
We choose as an initial basis xB = (x 3 , x 4 , x 5 , x 6 ). Then
cB =
cN =
We see that
cˆN =
and since − 1 > −2 we choose x 2 to enter the basis. Then
xB,old =
x 3
x 4
x 5
x 6
At =
b =
The ratio test gives that x 4 should leave the basis.
Thus the next basis is xB = (x 3 , x 2 , x 5 , x 6 ), with xN = (x 1 , x 4 ). Then
cB =
cN =
We calulate
cˆN = cN − N
T (B
− 1 )
T cB =
and since −3 is the only negative number in ˆcN we choose x 1 to enter the
basis. Then
xB,old =
x 3
x 2
x 5
x 6
, Aˆt =
b =
The ratio test gives that x 3 should leave the basis.
Thus the next basis is xB = (x 1 , x 2 , x 5 , x 6 ), with xN = (x 3 , x 4 ). Then
cB =
cN =
We calulate
cˆN = cN − N
T (B
− 1 )
T cB =
and since −1 is the only negative number in ˆcN we choose x 4 to enter the
basis. Then
xB,old =
x 1
x 2
x 5
x 6
, Aˆt =
, ˆb =
The ratio test gives that x 5 should leave the basis.
Finally, we calculate the value of the basis variables at the optimum
solution
x¯B =
x 1
x 2
x 4
x 3
− 1 b =
and the value of the objective function
zˆ = c
T B x¯B^ =^ −^14.
Note: The part of the above calculation which appears to take the most
time is the calculation of the inverse B
− 1 at each step. However, we can
simplify this considerably if we do not start calculating the inverse from
scratch in each step. Rather we note that when xt leaves the basis and xi′
enters the basis, the matrix B remains unchanged except that the column
At gets replaced by Ai′^. Since B is invertible, this can be achieved by m
suitably chosen column operations. Since carrying out column operations on
B corresponds to doing row operations on B
− 1 we see that we can pass from
B
− 1 old to^ B
− 1 new by carrying out^ m^ row operations. In fact these operations can
be easily described as we noted in class when we carried out the simplex
algorithm originally.
We form the augmented matrix
t |^ B
− 1
and apply row operations to it until the column Aˆt has been transformed
in to a column of only zeroes except there is a 1 in the place of the pivotal
element, the one circled in the example above.