Your Federal Quarterly Tax Payments are due April 15th Get Help Now >>

THEORY OF SIMPLEX METHOD by sparkunder19

VIEWS: 159 PAGES: 14

									Chapter 2

THEORY OF SIMPLEX
METHOD


2.1      Mathematical Programming Problems
A mathematical programming problem is an optimization problem of finding the values of the un-
known variables x1 , x2 , · · · , xn that
              maximize (or minimize) f (x1 , x2 , · · · , xn )
                                                                                                         (2.1)
              subject to             gi (x1 , x2 , · · · , xn )(≤, =, ≥)bi ,       i = 1, 2, · · · , m

where the bi are real constants and the functions f and gi are real-valued. The function f (x1 , x2 , · · · , xn )
is called the objective function of the problem (2.1) while the functions gi (x1 , x2 , · · · , xn ) are called
the constraints of (2.1). In vector notations, (2.1) can be written as


                           max or min f (xT )
                           subject to      gi (xT )(≤, =, ≥)bi ,    i = 1, 2, · · · , m

where xT = (x1 , x2 , · · · , xn ) is the solution vector.
Example 2.1. Consider the following problem.

                                          max            f (x, y) = xy
                                          subject to     x2 + y 2 = 1

A classical method for solving this problem is the Lagrange multiplier method. Let
                                      L(x, y, λ) = xy − λ(x2 + y 2 − 1).

Then differentiate L with respect to x, y, λ and set the partial derivative to 0 we get
                                            ∂L
                                               = y − 2λx = 0,
                                            ∂x
                                            ∂L
                                               = x − 2λy = 0,
                                            ∂y
                                            ∂L
                                               = x2 + y 2 − 1 = 0.
                                            ∂λ
The third equation is redundant here. The first two equations give
                                                  y     x
                                                    =λ=
                                                 2x     2y

                                                        1
2                                                            Chapter 2. THEORY OF SIMPLEX METHOD

which gives x2 = y 2 or x = ±y. We find that the extrema of xy are obtained at x = ±y. Since
                                 1             1
x2 + y 2 = 1 we then have x = ± √2 and y = ± √2 . It is then easy the verify that the maximum
                   1               1
occurs at x = y = √2 and x = y == √2 giving f (x, y) = 1 .
                                                       2

                                                      yO

                                   min?                                    max
                                      ??
                                       ?                                  
                                                                      
                                             •                     •


                                                                                  /
                                                                                  x


                                           •                       •?
                                       ?                          _?
                                                                      ??
                                     
                                   max                                 max


     A linear programming problem (LPP) is a mathematical programming problem having a linear
objective function and linear constraints. Thus the general form of an LP problem is
                          maxormin     z = c1 x1 + c2 x2 + · · · + cn xn
                                     
                                      a11 x1 + · · · + a1n xn (≤, =, ≥)b1 ,
                                     
                                                                                                  (2.2)
                          subject to          .
                                              .                .
                                                               .
                                             .                .
                                     
                                     
                                       am1 x1 + · · · + amn xn (≤, =, ≥)bm ,
Here the constants aij , bi and cj are assumed to be real. The constants cj are called the cost or price
coefficients of the unknowns xj and the vector (c1 , · · · , cn )T is called the cost or price vector.
      If in problem (2.2), all the constraints are inequality with sign ≤ and the unknowns xi are
restricted to nonnegative values, then the form is called canonical. Thus the canonical form of an
LP problem can be written as
                              maxormin    z = c1 x1 + c2 x2 + · · · + cn xn
                                        
                                         a11 x1 + · · · + a1n xn ≤ b1 ,
                                        
                                        
                             subject to          .
                                                 .                .
                                                                  .                                (2.3)
                                                .                .
                                        
                                        
                                          am1 x1 + · · · + amn xn ≤ bm ,
                             where               xi ≥ 0,   i = 1, 2, · · · , n.
If all bi ≥ 0, then the form is called a feasible canonical form.
       Before the simplex method can be applied to an LPP, we must first convert it into what is
known as the standard form:

                       max            z = c1 x1 + · · · + cn xn
                                     ai1 x1 + · · · + ain xn = bi , i = 1, 2, · · · , m
                      subject to                                                                   (2.4)
                                                          xj ≥ 0, j = 1, 2, · · · , n .

Here the bi are assumed to be nonnegative. We note that the number of variables may or may not
be the same as before.
2.1. Mathematical Programming Problems                                                                 3

      One can always change an LPP problem into the canonical form or into the standard form by
the following procedures.
  (i) If the LP as originally formulated calls for the minimization of the functional
                                         z = c1 x1 + c2 x2 + · · · + cn xn ,
      we can instead substitute the equivalent objective function
                          maximize z = (−c1 )x1 + (−c2 )x2 + · · · (−cn )xn = −z .

 (ii) If any variable xj is free i.e., not restricted to non-negative values, then it can be replaced by
                                                    xj = x+ − x− ,
                                                          j    j

      where x+ = max(0, xj ) and x− = max(0, −xj ) are now non-negative. We substitute x+ − x−
              j                           j                                                j    j
      for xj in the constraints and objective function in (2.2). The problem then has (n + 1) non-
      negative variables x1 , · · · , x+ , x− , · · · , xn .
                                       j    j

(iii) If bi ≤ 0, we can multiply the i-th constraint by −1.
                                  n
 (iv) An equality of the form     j=1   aij xj = bi can be replaced by
                                 n                           n
                                      aij xj ≤ bi    and          (−aij )xj ≤ (−bi ).
                                j=1                         j=1

 (v) Finally, any inequality constraint in the original formulation can be converted to equations by
     the addition of non-negative variables called the slack and the surplus variables. For example,
     the constraint
                                          ai1 x1 + · · · + aip xp ≤ bi
      can be written as
                                        ai1 x1 + · · · + aip xp + xp+1 = bi
      where xp+1 ≥ 0 is a slack variable. Similarly, the constraint
                                            aj1 x1 + · · · + ajp xp ≥ bj
      can be written as
                                         aj1 x1 + · · · ajp xp − xp+2 = bj
      where xp+2 ≥ 0 is a surplus variable. The new variables would be assigned zero cost coefficients
      in the objective function, i.e. cp+i = 0.
In matrix notations, the standard form of an LPP is
                                           Max             z = cT x
                                           subject to      Ax = b                                   (2.5)
                                           and             x≥0                                      (2.6)
where A is m × n, b is m × 1, x is n × 1 and rank (A) = m.
Definition 2.1. A feasible solution (FS) to an LPP is a vector x which satisfies constraints (2.5)
and (2.6). The set of all feasible solutions is called the feasible region. A feasible solution to an LPP
is said to be an optimal solution if it maximizes the objective function of the LPP. A feasible solution
to an LPP is said to be a basic feasible solution (BFS) if it is a basic solution with respect to the
linear system (2.5). If a basic feasible solution is non-degenerate, then we call it a non-degenerate
basic feasible solution.
     We note that the optimal solution may not be unique, but the optimum value of the problem
should be unique. For LPP in feasible canonical form, the zero vector is always a feasible solution.
Hence the feasible region is always non-empty.
4                                                                     Chapter 2. THEORY OF SIMPLEX METHOD

2.2      Basic Feasible Solutions and Extreme Points
In this section, we discuss the relationship between basic feasible solutions to a LPP and extreme
points of the corresponding feasible region. We will show that they are indeed the same. We assume
a LLP is given in its feasible canonical form.
Theorem 2.1. The feasible region to an LPP is convex, closed and bounded from below.
Proof. That the feasible region is convex follows from Lemma 1.1. The closeness follows from the
fact that the set that satisfies the equality or inequalities of the type ≤ and ≥ are closed and that
the intersection of closed sets are closed. Finally, by (2.6), we see that the feasible region is a subset
of Rn , where Rn is given in (1.3) and is a set bounded from below. Hence the feasible region itself
     +          +
must also be bounded from below.
Theorem 2.2. If there is a feasible solution then there is a basic feasible solution.
Proof. Assume that there is a feasible solution x with p positive variables where p ≤ n. Let us
reorder the variables so that the first p variables are positive. Then the feasible solution can be
written as xT = (x1 , x2 , x3 , · · · , xp , 0, · · · , 0), and we have
                                                      p
                                                              xj aj = b.                                   (2.7)
                                                  j=1

Let us first consider the case where {aj }p is linearly independent. Then we have p ≤ m for m
                                                 j=1
is the largest number of linearly independent vectors in A. If p = m, x is basic according to the
definition, and in fact it is also non-degenerate. If p < m, then there exist ap+1 , · · · , am such that
the set {a1 , a2 , · · · , am } is linearly independent. Since xp+1 , xp+2 , · · · , xm are all zero, it follows
that
                                           m                      p
                                                 xj aj =              xj aj = b
                                           j=1                  j=1

and x is a degenerate basic feasible solution.
     Suppose that {a1 , a2 , · · · , ap } is linearly dependent and without loss of generality, assume that
none of the aj are zero vectors. For if aj is zero, we can set xj to zeros and hence reduce p by 1.
With this assumption, then there exists {αj }p not all zero such that
                                                     j=1

                                                      p
                                                              α j aj = 0 .
                                                  j=1

Let αr = 0, we have
                                                          p
                                                                      αj
                                               ar =               −      aj .
                                                      j=1
                                                                      αr
                                                      j=r


Substitute this into (2.7), we have
                                           p
                                                                 αj
                                                 xj − xr            aj = b .
                                          j=1
                                                                 αr
                                          j=r



Hence we have a new solution for (2.5), namely,
                                                                                                       T
                    α1                     αr−1                αr+1                  αp
          x1 − xr      , · · · , xr−1 − xr      , 0, xr+1 − xr      , · · · , xp − xr , 0, · · · , 0
                    αr                      αr                  αr                   αr
2.2. Basic Feasible Solutions and Extreme Points                                                       5

which has no more than p − 1 non-zero variables.
     We now claim that, by choosing αr suitably, the new solution above is still a feasible solution.
In order that this is true, we must choose our αr such that
                                               αj
                                    xj − xr       ≥ 0,           j = 1, 2, · · · , p.               (2.8)
                                               αr
For those αj = 0, the inequality obviously holds as xj ≥ 0 for all j = 1, 2, · · · , p. For those αj = 0,
the inequality becomes

                                           xj   xr
                                              −    ≥ 0, for αj > 0,                                 (2.9)
                                           αj   αr
                                           xj   xr
                                              −    ≤ 0, for αj < 0.                                (2.10)
                                           αj   αr

If we choose our αr > 0, then (2.10) automatically holds. Moreover if αr is chosen as

                                           xr               xj
                                              = min            : αj > 0 ,                          (2.11)
                                           αr    j          αj

then (2.9) is also satisfied. Thus by choosing αr as in (2.11), then (2.8) holds and x is a feasible
solution of p − 1 non-zero variables. We note that we can also choose αr < 0 and such that
                                          xr                xj
                                             = max             : αj < 0 ,                          (2.12)
                                          αr    j           αj

then (2.8) is also satisfied, though clearly the two αr s in general will not give the same new solution
with (p − 1) non-zero entries.
     Assume that a suitable αr has been chosen and the new feasible solution is given by

                          x = [ˆ1 , x2 , · · · , xr−1 , 0, xr+1 , · · · , xp , 0, 0, · · · , 0]T
                          ˆ    x ˆ               ˆ         ˆ              ˆ

which has no more than p − 1 non-zero variables. We can now check whether the corresponding
column vectors of A are linearly independent or not. If it is, then we have a basic feasible solution.
If it is not, we can repeat the above process to reduce the number of non-zero variables to p − 2.
Since p is finite, the process must stop after at most p − 1 operations, at which we only have one
nonzero variable. The corresponding column of A is clearly linearly independent. (If that column
is a zero column, then the corresponding α can be arbitrary chosen, and hence it can always be
eliminated first). The x obtained then is a basic feasible solution.
Example 2.2. Consider the linear system
                                                          
                                                          x
                                             2 1       4  1  11
                                                          x2 =
                                             3 1       5       14
                                                          x3
           
           2
where x = 3 is a feasible solution. Since a1 + 2a2 − a3 = 0, we have
           1

                                       α1 = 1 ,       α2 = 2 ,        α3 = −1.

By (2.11),
                                     x2  3                      xj
                                        = = min                    : αj > 0 .
                                     α2  2 j=1,2,3              αj
6                                                           Chapter 2. THEORY OF SIMPLEX METHOD

Hence r = 2 and
                                                   α1      1 1
                                   ˆ
                                   x1 = x1 − x2       =2−3· = ,
                                                   α2      2 2
                                   ˆ
                                   x2 = 0,
                                                   α3       −1  5
                                   ˆ
                                   x3 = x3 − x2       =1−3·    = ,
                                                   α2        2  2

Thus the new feasible solution is x1 T = ( 1 , 0, 5 ). Since
                                           2      2

                                                   2              4
                                           a1 =      ,     a3 =
                                                   3              5

are linearly independent, the solution is also basic.
      Similarly, if we use (2.12), we get

                                   x3   1                   xj
                                      =   = max                : αj < 0 .
                                   α3   −1 j=1,2,3          αj

Hence r = 3 and we have
                                                α1
                                   ˆ
                                   x1 = x1 − x3    = 2 − (−1)1 = 3,
                                                α3
                                                α2
                                   ˆ
                                   x2 = x2 − x3    = 3 − (−1)2 = 5.
                                                α3

Thus x2 T = (3, 5, 0), which is also a basic feasible solution.
     Suppose that we eliminate a1 instead, then we have

                                  ˆ
                                  x1 = 0
                                          x2          2
                                  ˆ
                                  x2 = x1    = 3 − 2 · = −1
                                          α1          1
                                               α3        (−1)
                                  ˆ
                                  x3 = x3 − x1    =1−2·       =3
                                               α1          1

Thus the new solution is x1 T = (0, −1, 3). We note that it is a basic solution but is no longer
feasible.
Theorem 2.3. The basic feasible solutions of an LPP are extreme points of the corresponding
feasible region.
Proof. Suppose that x is a basic feasible solution and without loss of generality, assume that x has
the form
                                                   x
                                              x= B
                                                    0
where
                                                  xB = B −1 b
is an m × 1 vector. Suppose on the contrary that there exist two feasible solutions x1 , x2 , different
from x, such that
                                      x = λx1 + (1 − λ)x2
for some λ ∈ (0, 1). We write
                                                  u1              u2
                                        x1 =           ,   x2 =
                                                  v1              v2
2.2. Basic Feasible Solutions and Extreme Points                                                        7

where u1 , u2 are m-vectors and v1 , v2 are (n − m)-vectors. Then we have

                                         0 = λv1 + (1 − λ)v2 .

As x1 , x2 are feasible, v1 , v2 ≥ 0 . Since λ, (1 − λ) > 0, we have v1 = 0 and v2 = 0 . Thus

                                                             u1
                                    b = Ax1 = [B, R]            = Bu1 ,
                                                             v1

and similarly,
                                           b = Ax2 = Bu2 .
Thus we have
                                       Bu1 = Bu2 = b = BxB .
Since B is non-singular, this implies that u1 = u2 = xB . Hence

                                       xB   u        u
                                 x=       = 1 = x1 = 2 = x2 ,
                                        0   0        0

and that is a contradiction. Hence x must be an extreme point of the feasible region.
       The next theorem is the converse of Theorem 2.3.
Theorem 2.4. The extreme points of a feasible region are basic feasible solutions of the correspond-
ing LPP.
Proof. Suppose x0 = (x1 , · · · , xn )T is an extreme point of the feasible region. Assume that there
are r components of x0 which are non-zero. Without loss of generality, let xi > 0 for i = 1, 2, · · · , r
and xi = 0 for i = r + 1, r + 2, · · · , n. Then we have
                                               r
                                                    xi ai = b.
                                              i=1

We claim that {a1 , · · · , ar } is linearly independent. Suppose on contrary that there exist αi , i =
1, 2, · · · , r, not all zero, such that
                                               r
                                                    αi ai = 0 .                                    (2.13)
                                              i=1

Let    be such that
                                                               xi
                                           0 < < min                ,
                                                        αi =0 |αi |

then
                                   xi ± · αi > 0,        ∀i = 1, 2, · · · , r.                     (2.14)
                                                   αT
Put x1 = x0 + · α and x2 = x0 − · α where α = (α1 , α2 , · · · , αr , 0, · · · , 0). We claim that x1 , x2
are feasible solutions. Clearly by (2.14), x1 ≥ 0 and x2 ≥ 0 . Moreover by (2.13),

                                               α
                                  Ax1 = Ax0 + Aα = Ax0 + 0 = b.

Therefore, x1 is a feasible solution. Similarly,

                                               α
                                  Ax2 = Ax0 − Aα = Ax0 + 0 = b,
                                                          1      1
and x2 is also a feasible solution. Since clearly x0 =      x1 + x2 , x0 is not an extreme point, hence
                                                          2      2
we have a contradiction. Therefore the set {a1 , · · · , ar } must be linearly independent, and that x0
is a basic feasible solution.
8                                                          Chapter 2. THEORY OF SIMPLEX METHOD

     The significance of the extreme points of feasible regions is given by the following theorem.
Theorem 2.5. The optimal solution to an LPP occurs at an extreme point of the feasible region.
Proof. We first claim that no point on the hyperplane that corresponds to the optimal value of the
objective function can be an interior point of the feasible region. Suppose on contrary that z = cT x
is an optimal hyperplane and that the optimal value is attained by a point x0 in the interior of the
feasible region. Then there exists an > 0 such that the sphere
                                         X = {x : |x − x0 | < }
is in the feasible region. Then the point
                                                          c
                                           x1 = x0 +         ∈X
                                                       2 |c|
is a feasible solution. But
                                                        c
                                cT x1 = cT x0 + cT         = z + |c| > z,
                                                     2 |c|      2
a contradiction to the optimality of z. Thus x0 has to be a boundary point.
     Now since cT x ≤ z for all feasible solutions x, we see that the optimal hyperplane is a support-
ing hyperplane of the feasible region at the point x0 . By Theorem 1, the feasible region is bounded
from below. Therefore by Theorem 1.5, the supporting hyperplane z = cT x contains at least one
extreme point of the feasible region. Clearly that extreme point must also be an optimal solution to
the LPP.
     Summarizing what we have proved so far, we see that the optimal value of an LPP can be
obtained at the basic feasible solutions, or equivalently, at the extreme points. Simplex method is a
method that systematically searches through the basic feasible solutions for the optimal one.
Example 2.3. Consider the constraint set in R2 defined by
                                                  8
                                              x1 + x2 ≤ 4                                           (2.15)
                                                  3
                                              x1 + x2 ≤ 2                                           (2.16)

                                             2x1          ≤3                                        (2.17)
                                                   x1 , x2 ≥ 0                                      (2.18)
Adding slack variables x3 , x4 and x5 to convert it into standard form gives,

                                           8
                                       x1 + x2 + x3                 =4                              (2.19)
                                           3
                                       x1 + x2         + x4         =2                              (2.20)

                                     2x1                      + x5 = 3                              (2.21)
                                               x1 , x2 , x3 , x4 , x5 ≥ 0                           (2.22)
A basic solution is obtained by setting any two variables of x1 , x2 , x3 , x4 , x5 to zero and solving for
the remaining three. For example, let us set x1 = 0 and x3 = 0 and solve for x2 , x4 and x5 in
                                       
                                          8
                                        3 x2
                                                         =4
                                           x2 + x4        =2
                                       
                                       
                                                     x5 = 3
2.3. Improving a Basic Feasible Solution                                                                               9

                     2


                    1.8
                                         x1 + x2 = 2
                                                                                                   2x1 = 3
                    1.6
                              a

                    1.4

                                                               b
                    1.2
                                                                            x1 + 8/3x2 = 4

                     1                                                                             f


                    0.8


                    0.6
                                                                                                   c

                    0.4


                    0.2

                              e                                                                    d
                     0
                          0        0.2   0.4       0.6       0.8    1           1.2          1.4       1.6   1.8   2


               Figure 2.1. There are 5 extreme points by inspection {a, b, c, d, e}.

We get the point [0, 3 , 0, 1 , 3]. From Figure 2.3, we see that this point corresponds to the extreme
                     2      2
point a of the convex polyhedron K defined by (2.19), (2.20), (2.21), (2.22). The equations x1 = 0
and x3 = 0 are called the binding equations of the extreme point a.
     We note that not all basic solutions are feasible. In fact there is a maximum total of 5 =   3
 5
 2 = 10 basic solutions and here we have only five extreme points. The extreme points of the region
K and their corresponding binding equations are given in the following table.

                                  extreme point               a         b             c            d         e
                                                             x1         x3            x4           x2        x1
                                  set to zero
                                                             x3         x4            x5           x5        x2
                                                                  3 15      7
       If we set x3 and x5 to zero, the basic solution we get is [ , , 0, − , 0]. Hence it is not a
                                                                  2 16     16
basic feasible solution and therefore does not correspond to any one of the extreme point in K. In
fact, it is given by the point f in the above figure.


2.3     Improving a Basic Feasible Solution
Let the LPP be
                                                       max               z = cT x
                                                                        Ax = b
                                                       subject to
                                                                             x≥0.

Here we assume that b ≥ 0 and rank(A) = m. Let the columns of A be given by aj , i.e. A =
[a1 , a2 , · · · , an ]. Let B be an m × m non-singular matrix whose columns are linearly independent
10                                                                 Chapter 2. THEORY OF SIMPLEX METHOD

columns of A and we denote B by [b1 , b2 , · · · , bm ]. We learn from §1.5 that for any choice of basic
matrix B, there corresponds a basic solution to Ax = b. The basic solution is given by the m-vector
xB = [xB1 , · · · , xBm ] where
                                             xB = B −1 b.
Corresponding to any such xB , we define an m-vector cB , called the reduced cost vector, containing
the prices of the basic variables, i.e.            
                                                cB1
                                               . 
                                         cB =  .  .
                                                 .
                                                                cBm
Note that for any BFS xB , the value of the objective function is given by

                                                      z = cT xB .
                                                           B

      To improve z, we must be able to locate other BFS easily, or equivalently, we must be able to
replace a basic matrix B by others easily. In order to do this, we need to express the columns of A
in terms of the columns of B. Since A is an m × n matrix and rank(A) = m, the column space of
A is m dimensional. Thus the columns of B form a basis for the column space of A. Let
                                         m
                                 aj =          yij bi ,    for all j = 1, 2, · · · , n.                 (2.23)
                                         i=1

Put                                         
                                         y1j
                                        y2j 
                                            
                                  yj =  .  ,            for all j = 1, 2, · · · , n,
                                        . 
                                          .
                                        ymj
then we have aj = Byj . Hence

                                  yj = B −1 aj ,          for all j = 1, 2, · · · , n.                  (2.24)

The matrix B can be considered as the change of coordinate matrix from {y1 , · · · , yn } to {a1 , · · · , an }.
We remark that if aj appears as bi , i.e., xj is a basic variable and xj = xBi , then yj = ei , the i-th
unit vector.
      Given a BFS xB = B −1 b corresponding to the basic matrix B, we would like to improve the
value of the objective function which is currently given by z = cT xB . For simplicity, we will confine
                                                                   B
ourselves to those BFS in which only one column of B is changed. We claim that if yrj = 0 for some
r, then br can be replaced by aj and the new set of vectors still form a basis. We can then form the
corresponding new basic solution. In fact, we note that if yrj = 0, then by (2.23)
                                                                  m
                                                     1                  yij
                                          br =          aj −                bi .
                                                    yrj           i=1
                                                                        yrj
                                                                  i=r


Using this, we can replace br in
                                                          m
                                             BxB =              xBi bi = b,
                                                          i=1

by aj and we get
                                   m
                                                          yij      xBr
                                         xBi − xBr            bi +     aj = b.
                                   i=1
                                                          yrj      yrj
                                   i=r
2.3. Improving a Basic Feasible Solution                                                                       11

Let
                                         
                                         xBi − xBr yij , i = 1, 2, · · · , m
                                         
                                                    yrj
                                  ˆ
                                  xBi   = xBr
                                         
                                              ,          i = j,
                                           yrj

we see that the vector

                  xB = [ˆB1 , · · · , xBr−1 , 0, xBr+1 , · · · , xBm , 0, · · · , 0, xBj , 0, · · · , 0]T
                  ˆ     x             ˆ          ˆ               ˆ                   ˆ

                         ˆ
is a basic solution with xBr = 0. Thus the old basic variable xr is replaced by the new basic variable
xj .
      Now we have to make sure that the new basic solution is a basic feasible solution with a larger
objective value. We will see that we can assure the feasibility of the new solution by choosing a
suitable br to be replaced, and we can improve the objective value by choosing a suitable aj to be
inserted in B.



2.3.1    Feasibility: restriction on br .
                ˆ
We require that xBi ≥ 0 for all i = 1, · · · , n. Since xBi = 0 for all m < i ≤ n, we only need

                                              y
                                     xBi − xBr ij ≥ 0
                                                                    i = 1, 2, · · · , m
                                               y       rj
                                                   xBr
                                                       ≥0
                                                    yrj

Let r be chosen such that
                                        xBr                     xBi
                                            = min                   : yij > 0 .                             (2.25)
                                        yrj  i=1,2,··· ,m       yij

                                  ˆ
Then it is easy to check that all xBi ≥ 0 for all i. Thus the corresponding column br is the column
to be replaced from B. We call br the leaving column.



2.3.2    Optimality: restriction on aj .
Originally, the objective value is given by

                                                                m
                                             z = cT xB =
                                                  B                   cBi xBi .
                                                                i=1


After the removal and insertion of columns of B, the new objective value becomes

                                                                 m
                                             ˆ
                                             z=    cT xB
                                                   ˆB ˆ     =         ˆ ˆ
                                                                      cBi xBi
                                                                i=1
12                                                                         Chapter 2. THEORY OF SIMPLEX METHOD

      ˆ                                                    ˆ
where cBi = cBi for all i = 1, 2, · · · , m and i = r, and cBr = cj . Thus we have
                                             m
                                     ˆ
                                     z=                ˆ     ˆ ˆ
                                                   cBi xBi + cBr xBr
                                             i=1
                                             i=r
                                             m
                                                                          yij              xBr
                                       =           cBi xBi − xBr                    + cj
                                             i=1
                                                                          yrj              yrj
                                             i=r
                                             m                            m
                                                                 xBr                             x Br
                                       =           cBi xBi −                   cBi yij + cj
                                             i=1
                                                                 yrj   i=1
                                                                                                 yrj
                                           xBr T          xB
                                       =z−     c yj + cj r
                                           yrj B          yrj
                                           xBr
                                       =z+     (cj − zj )
                                           yrj
where
                                                      zj = cT yj = cT B −1 aj .
                                                            B       B                                                              (2.26)
                                            ˆ
Obviously, by our choice, if cj > zj , then z ≥ z. Hence we choose our aj such that cj − zj > 0 and
yij > 0 for some i. For if yij ≤ 0 for all i, then the new solution will not be feasible. The aj that
we have chosen is called the entering column. We note that if xB is non-degenerate, then xBr > 0,
           ˆ
and hence z > z.
     Let us summarize the process of improving a basic feasible solution in the following theorem.
Theorem 2.6. Let xB be a BFS to an LPP with corresponding basic matrix B and objective value
z. If (i) there exists a column aj in A but not in B such that the condition cj − zj > 0 holds and
if (ii) at least one yij > 0, then it is possible to obtain a new BFS by replacing one column in B by
                                                    ˆ
aj and the new value of the objective function z is larger than or equal to z. Furthermore, if xB is
                                 ˆ
non-degenerate, then we have z > z.
      The numbers cj − zj are called the reduced cost coefficients with respect to the matrix B. We
remark that if aj already appears as bi , i.e. xj is a basic variable and xj = xBi , then cj − zj = 0.
In fact
                            zj = cT B −1 aj = cT yj = cT ei = cBi = cj .
                                   B             B       B

By Theorem 2.6, it is natural to think that when all zj − cj ≥ 0, we have reached the optimal
solution.
Theorem 2.7. Let xB be a BFS to an LPP with corresponding objective value z0 = cT xB . If
                                                                                B
zj − cj ≥ 0 for every column aj in A, then xB is optimal.
Proof. We first note that given any feasible solution x, then by the assumption that zj − cj ≥ 0 for
all j = 1, 2, · · · , n and by (2.26), we have
             n               n                n                       n         m                       m     n
        z=         cj xj ≤         zj xj =         (cT yj )xj =
                                                     B                                cBi yij xj =                  yij xj cBi .
             j=1             j=1             j=1                   j=1          i=1                     i=1   j=1

Thus
                                                           m      n
                                                      z≤               yij xj cBi .                                                (2.27)
                                                           i=1   j=1

Now we claim that
                                                  n
                                      ˜
                                      xi ≡            yij xj = xBi ,          i = 1, 2, · · · , m.
                                              j=1
2.3. Improving a Basic Feasible Solution                                                                                              13

Since x is a feasible solution, Ax = b. Thus by (2.24),
             n                n                    n         m                      m      n                     m
        b=         x j aj =         xj (Byj ) =                      yij bi xj =                   yij xj bi =         ˜         ˜
                                                                                                                       xi bi = B x.
             j=1              j=1                 j=1     i=1                      i=1   j=1                     i=1

                                                                     ˜
Since B is non-singular and we already have BxB = b, it follows that x = xB . Thus by (2.27),
                                                                 m
                                                        z≤            xBi cBi = z0
                                                             i=1

for all x in the feasible region.
Example 2.4. Let us consider the LPP with
                                       1   2   3       4                                                 5
                               A=                        ,       cT = [2, 5, 6, 8] and             b=      .
                                       1   0   0       1                                                 2
Let us choose our starting B as
                                                                                     1 4
                                            B = [a1 , a4 ] = [b1 , b2 ] =                      .
                                                                                     1 1

Then it is easily checked that the corresponding basic solution is xB = [1, 1]T , which is clearly
feasible with objective value
                                                      1
                                   z = cT xB = [2, 8]
                                        B               = 10.
                                                      1
Since
                                                                      1 −1      4
                                                       B −1 =                      ,
                                                                      3 1       −1
by (2.24), the yij are given by

                                           1                 −2
                                                              3                    −1                 0
                                    y1 =           y2 =          2         y3 =            y4 =         .
                                           0                     3
                                                                                    1                 1
Hence
                                                                           −2
                                                                            3
                                                       z2 = [2, 8]         2      = 4,
                                                                           3
and
                                                                           −1
                                                        z3 = [2, 8]           = 6.
                                                                           1
Since z2 − c2 = −1 and z3 − c3 = 0, we see that a2 is the entering column. As remarked above,
                                                       z1 − c1 = z4 − c4 = 0,
because x1 and x4 are basic variables. Looking at the column entries of y2 , we find that y22 is the
only positive entry. Hence b2 = a4 is the leaving column. Thus

                                                    ˆ                1 2
                                                    B = [a1 , a2 ] =     ,
                                                                     1 0
                                                            3
and the corresponding basic solution is found to be xB = [2, ]T , which is clearly feasible as expected.
                                                    ˆ
                                                            2
The new objective value is given by
                                                                       2
                                                   ˆ
                                                   z = [2, 5]          3   = 11.5 > z.
                                                                       2
14                                                            Chapter 2. THEORY OF SIMPLEX METHOD

Since
                                           ˆ      1 0         2
                                           B −1 =                ,
                                                  2 1         −1
               ˆ
by (2.24), the yij are given by

                                  1              0              0           1
                           ˆ
                           y1 =          ˆ
                                         y2 =            ˆ
                                                         y3 =   3    ˆ
                                                                     y4 =   3   .
                                  0              1              2           2

Hence
                                                         0
                                      z3 − c3 = [2, 5]    3   − 6 = 1.5,
                                                          2

and
                                                         1
                                      z4 − c4 = [2, 5]    3   − 8 = 1.5.
                                                          2

Since all zj − cj ≥ 0, 1 ≤ j ≤ 4, we see that the point [2, 3 ] is an optimal solution.
                                                            2
      The last example illustrates how one can find the optimal solution by searching through the
basic feasible solutions. That is exactly what simplex method does. However, the simplex method
uses tableaus to minimize the book-keeping work that we encountered in the last example.

								
To top