Presentation is loading. Please wait.

Presentation is loading. Please wait.

OR-1 20101 Chapter 7. The Revised Simplex Method  Recall Theorem 3.1, same basis  same dictionary Entire dictionary can be constructed as long as we.

Similar presentations


Presentation on theme: "OR-1 20101 Chapter 7. The Revised Simplex Method  Recall Theorem 3.1, same basis  same dictionary Entire dictionary can be constructed as long as we."— Presentation transcript:

1

2 OR-1 20101 Chapter 7. The Revised Simplex Method  Recall Theorem 3.1, same basis  same dictionary Entire dictionary can be constructed as long as we know which variables are basic.  Suppose we have the following form after adding slack variables to the standard LP. (or any LP in equality form and nonnegativity)

3 OR-1 20102  Note that we have m basic variables and n nonbasic variables in a dictionary. Reorder the columns of A (the order that variables appear) so that the columns for basic variables come first. Partition A into A=[B : N], where B is m  m (and nonsingular, see the proof in the text p.100) and the columns of B correspond to basic variables. Let

4 OR-1 20103  Matrix representation of dictionary (tableau)  Note that In the text A N is used instead of N

5 OR-1 20104  Current tableau  c B ’B -1 N can be interpreted differently i.e. we take linear combination of rows of N using weights - y i and add it to c N ’ in the z-row. For basic variables, we have y’B = c B ’. Hence the coefficients 0 of the basic variables in the z-row can be interpreted as taking linear combination of rows of B using weights – y i and add it to c B ’ in the z- row ( c B ’ + ( -c B ’B -1 B) = 0 ).

6 OR-1 20105 Similar argument also holds for r.h.s., i.e. add (- y)’b to z-row. Hence given the initial tableau, we obtain z-row of the updated tableau by taking linear combination of rows of the initial tableau using weights - y i and add it to z-row. It is the net effect of many elementary row operations performed on the tableau.  Recall the proof of strong duality theorem, in which we claimed that, at the optimal tableau, the negative of the coefficients of slack variables in z-row is an optimal dual solution. It is the y vector obtained from y = c B ’B -1. We will see the reason shortly.

7 OR-1 20106  Initially, we have After reordering of columns

8 OR-1 20107 Updated tableau = c B ’ – c B ’B -1 B = c N ’ – c B ’B -1 N ( = B -1 [ B : N ] )(= B -1 b) = 0 – c B ’B -1 b (c B ’B -1 = y’ )

9 OR-1 20108  Let Then updated z-row is obtained by multiplying - y i to the i-th constraint (row) and add it to z-row for all constraints i. We can identify the coefficient of a nonbasic variable in z-row by computing c j – y’A j, once y vector is known ( y’ = c B ’B -1 ). Also B -1 gives information what elementary row operations are performed on the constraints. ( updated i-th constraint = ( i-th row of B -1 )  [B : N], so j-th component of ( i-th row of B -1 ) is the weight we multiply to the j-th original constraint. We take linear combination of rows of [B : N]. )  Hence updated tableau carries information what elementary operations have been performed ( the net effect) to obtain the current tableau.  z-row obtained from c –y’A (objective value: 0 –y’b)  i-th constraint : ( i-th row of B -1 )  [B : N] (r.h.s: ( i-th row of B -1 )b )

10  Ex) OR-1 20109

11 10  Current dictionary

12 OR-1 201011

13 OR-1 201012 Updated tableau

14 OR-1 201013 Apply same elementary row operations

15 OR-1 201014 c j – y’A j = - y m+j c j – y’e j = - y j

16 OR-1 201015  The coefficients of slack variables in z-row are -y j, j = 1,.., 3. Also note that the coefficient of j-th original structural variable in the z- row is c j – y’A j. Since dual constraint for j-th structural variable is y’A j  c j, we obtain y’A j – y m+j = c j if we subtract nonnegative surplus variable to convert it into an equation. Then c j – y’A j = - y m+I. So the coefficient of j-th structural variable in the z-row can be interpreted as the negative of j-th surplus variable of the dual problem.  In the optimal tableau (the current tableau is not optimal yet), the coefficients in z-row are all nonpositive. Hence we have a dual feasible solution. Also c B ’B -1 b = c B ’x B = y’b ( x B = B -1 b, y’ = c B ’B -1 )

17 OR-1 201016 Summary  We can read the B -1 matrix from the updated tableau. Note that B -1 [B | N ] = [ I | B -1 N ] in the updated tableau. If we premultiply B -1 to [A | I ] matrix in the initial tableau, we obtain the same matrix as [ I | B -1 N ] except that the positions of the columns are different. From B -1 [A | I ] = [B -1 A | B -1 ], we conclude that B -1 is the coefficient matrix for the slack variables in the updated tableau. Also B -1 carries the information of the net effect of the elementary row operations we needed to perform to obtain the updated tableau from the initial tableau.  We can read a dual solution from the z-row in the updated tableau. Let O denote the index set of original structural variables and S the slack vars. Then Note that we have y’B=c B ’, hence

18 OR-1 201017 Then

19 OR-1 201018  In summary, each tableau in the simplex iterations gives primal basic feasible solution and, as a by-product, gives a dual solution (it is a dual basic solution although we do not prove it here). The dual solution is not necessarily dual feasible, but always gives an objective value of the dual problem which is the same as the primal objective value of the current primal solution. Also the primal and the dual solution pairs satisfy the complementary slackness condition (check this) If we obtain a dual feasible solution, i.e. the coefficients in the z-row are all nonpositive, we obtain primal, dual feasible solution with the same objective value. Hence optimality of the primal solution is established.  Other types of algorithms can be designed using the complementary slackness optimality conditions. (e.g. dual simplex method, some algorithms for network problems,...)

20 OR-1 201019

21 OR-1 201020 The Revised Simplex Method  Efficient implementation of the simplex method.  Recall the needed operations for the simplex method: Find the entering and the leaving variable, update dictionary. (If we know the basis, entire tableau can be constructed. Hence we do not really need to update the dictionary.)  Find the entering variable x j : 1) Find 2) Evaluate Choose a nonbasic variable with as the entering nonbasic var.  Find the leaving variable:

22 OR-1 201021 Suppose x k, k  N is the entering nonbasic variable. As we increase x k while keeping other nonbasic variables at 0, we get  Update: Set Replace the leaving column of B by entering column A j, and x k enters the basis in place of x l (position in the basis is important)

23 OR-1 201022 ex) Current dictionary

24 OR-1 201023 Find entering nonbasic variable x j such that c j - y’A j > 0 ( y = c B ’B -1 ) First solve y’B = c B ’

25 OR-1 201024


Download ppt "OR-1 20101 Chapter 7. The Revised Simplex Method  Recall Theorem 3.1, same basis  same dictionary Entire dictionary can be constructed as long as we."

Similar presentations


Ads by Google