Outline secrets equivalence between row operations & matrix multiplication simplex revised tableau in matrix form simplex method relationship with column generation 1 The Most Beautiful … 2 Maybe the Most Beautiful of All… linear algebra geometric properties algebraic properties matrix properties 3 To be at Home with the Material familiar be with the equivalence lazy keeping e.g., and working only with the essence how much information to carry in solving 3w 4 x 7 y 12 2w x 6 y 8 (sometimes) e.g., 3 4 7 12 2 1 6 8 use logic, not eyes 3 4 7 12 4 3 7 12 2 1 6 8 1 2 6 8 in some sense 4 Equivalence Between Row Operations & Matrix Multiplication w x y b (1) 3 4 8 12 (2) 2 1 4 8 let E= EA = making w basic in (1) row operations: (a) (1) = (1)/3 (b) (2) = (2)-2(1) 1 4 / 3 8 / 3 4 (1) (2) 0 11/ 3 28 / 3 0 1/ 3 0 3 4 8 12 and A = 2 / 3 1 2 1 4 8 1 4 / 3 8 / 3 4 0 11/ 3 28 / 3 0 5 Equivalence Between Row Operations & Matrix Multiplication w x y b (1) 3 4 8 12 (2) 2 1 4 8 let E= EA = making y basic in (2) row operations: (a) (2) = (2)/4 (b) (1) = (1)+8(2) 2 0 28 (1) 7 (2) 0.5 0.25 1 2 1 2 3 4 8 12 and A = 0 1/ 4 2 1 4 8 2 0 28 7 0.5 0.25 1 2 6 Equivalence Between Row Operations & Matrix Multiplication what v should E be to make “v basic in (3)”? w x y b 4 1 0 4 8 1 0 4 5 4 2 2 6 3 2 7 Simplex Tableau Minimization initial tableau B. V. xS x xS -z RHS cT 0 1 0 A I 0 at some intermediate tableau with xB as basic variables b xB xN xS -z RHS B. V. cBT cNT cST 1 cTB B 1b xB I B-1N B-1 0 B-1b cBT = cTB cTBB1B = 0 initial tableau with columns of xB in the T T 1 cS = cB B I cTBB1 intermediate tableau separated out (xB xN) B. V. cTB cTN xS (B N) xS -z RHS 0 1 0 I 0 b cNT = cTN cTBB1N short form x RHS B. V. c T = cT cTBB1A cTB B 1b xB B-1A B-1b 8 Simplex Procedure x RHS B. V. c T = cT cTBB1A cTB B 1b xB B-1A B-1b an iteration before minimal: 1 Find the smallest c j ; if all c j are non-negative, the minimal has been found and stop; else continue. 2 Identify the entering variable xenter as the xj with the smallest c j . 3 Identify the leaving variable xleave as xi with the minimal ratio. Stop if the problem is unbounded; else continue. 4 Identify aleave,enter from xenter and xleave. 5 Pivot on element aleave,enter to update the whole tableau and go to step 1. 9 Inefficient Simplex Procedure no guarantee that the smallest number of iterations cj gives the least opt. can arbitrarily pick an xj with negative reduced cost as the entering variable no need to update the whole tableau 10 Minimal Information for the Simplex Procedure x RHS B. V. c T = cT cTBB1A cTB B 1b xB B-1A B-1b minimal information: the set of current basic variables xB to generate the WHOLE tableau conceptually, from xB known cB known current basis Bcur and hence known (Bcur)-1 any clever (i.e., lazy) method to get (Bnew)-1 from (Bcur)-1 without inverting Bnew every time? the whole tableau from B-1 11 Revised Simplex Algorithm x RHS B. V. c T = cT cTBB1A cTB B 1b xB B-1A B-1b keeping track of xB and (Bcur)-1 entering variable from reduced costs leaving variable from minimum ratio test finding (Bnew)-1 from (Bcur)-1 12 Revised Simplex Algorithm suppose we have the current basic variables xB,cur and the inverse of the basis (Bcur)-1 known entities of the tableau: xB,cur xN,cur -z RHS B. V. 0 ? 1 1 cT B ,cur (B cur ) b xB I ? 0 (Bcur)-1b 13 Revised Simplex Algorithm to find the entering variable xe : calculate for nonbasic variables c j c j cTB,cur (Bcur )1 A j where A j is the jth column stop if all reduced costs are non-negative; else pick the first xj with negative reduced cost as the entering variable xB,cur xN,cur z RHS B. V. 0 ? -1 cTB,cur (Bcur )1b xB I ? 0 (Bcur)-1b 14 Revised Simplex Algorithm to find the leaving variable xl column (Bcur)-1Ae of the entering variable xe with known RHS, execution of minimal ratio test to determine the leaving variable xl (if available) pivoting on al,e to turn column e into (0, .., 0, 1, 0.., 0)T, where “1” occurs at the lth row known xB,cur xe xN,cur -z RHS B. V. 0 ce ce cTB,cur (Bcur )1Ae 0 ? 1 cTB,cur (Bcur )1b xB I (Bcur)-1Ae ? 0 (Bcur)-1b 15 Equivalence Between Row Operations & Matrix Multiplication what v should E be to make “v basic in (3)”? w v x y b 4 1 0 4 8 1 0 4 5 4 2 2 6 3 2 making v basic in (3) row operations: (a) (3) = (3)/2 (b) (2) = (2)+(3) (c) (1) = (1)-2(3) w x y b 0 5 12 2 4 13 5 0 1 7 2 3 1 1 3 1 2 1 0 2 1 elementary matrix E = 0 1 2 1 0 0 2 16 Revised Simplex Algorithm to find the elementary matrix E that turns Ae into Ae a1,e Suppose Ae a m ,e row 0 0 row operations Ae EAe 1 0 0 equivalent to pre operations are multiplying by matrix E, where E = I except the lth column, a1 , if i l , l .e (E)i ,l a ali..ee o.w. 17 Revised Simplex Algorithm to find (Bnew)-1 from (Bcur)-1 claim: (Bnew)-1 = E(Bcur)-1 xB xN xS -z RHS B. V. … … … 1 … xB I … (Bcur)-1 0 ... row operations pre-multiplied by E xB xN xS -z RHS B. V. … … … 1 … xB I … (Bnew)-1 0 ... 18 Example of Revised Simplex Algorithm max 2x1+x2 min 2x1x2, s.t. –x1+x2 2, x2 4, x1+x2 8, x1 x1, x2 0. 6, 19 Solving the Example by Simplex Method 20 Solving the Example by Simplex Method 21 Solving the Example by Simplex Method 22 Example of Revised Simplex Algorithm 23 Relationship Between Revised Simplex and Column Generation revised simplex method no need to generate the whole tableau only generating columns when searching for first negative reduced cost column generation method generating column of non-basic variables only when necessary usually with additional complexity to determine the best entering variable for a given situation 24
© Copyright 2024 Paperzz