Week8/Lecture8 Dual simplex method Introduction The Dual Simplex method is used in situations where the optimality criterion (i.e., zj – cj 0 in the maximization case and zj – cj 0 in minimization case) is satisfied, but the basic solution is not feasible because under the XB column of the simplex table there are one or more negative values. 1. Sometimes it allows to easily select an initial basis without having to add any artificial variable. 2. It aids in certain types of sensitivity testing. 3. It helps in solving integer programming problems. 1. Algorithm 2. Example The dual simplex algorithm proceeds in this way: Algorithm - Steps 1. Formulate the Problem 1. Formulate the mathematical model of the given linear programming problem. 2. Convert every inequality constraint in the LPP into an equality constraint, so that the problem can be written in a standard from. 2. Find out the Initial Solution Calculate the initial basic feasible solution by assigning zero value to the decision variables. This solution is shown in the initial dual simplex table. 3. Determine an improved solution If all the values under XB column 0, then don't apply dual simplex method because optimal solution can be easily obtained by the simplex method. On the contrary, if any value under XB column < 0, then the current solution is infeasible so move to step 4. 4. Determine the key row 1 Select the smallest (most) negative value under the X B column. The row that indicates the smallest negative value is the key row. 5. Determine the key column Select the values of the non basic variables in the index row (z j – cj), and divide these values by the corresponding values of the key row determined in the previous step. Specifically, Key column = Min z j – cj -------aij : aij < 0 7. Revise the Solution If all basic variables have non-negative values, an optimal solution has been obtained. If there are basic variables having negative values, then go to step 3. Dual Simplex Method Example Minimize z = 80x1 + 100x2 subject to 80x1 + 60x2 1500 20x1 + 90x2 1200 x1, x2 0 Solution. Minimize z = 80x1 + 100x2 Multiplying the constraints by -1 on both sides -80x1 - 60x2 -1500 -20x1 - 90x2 -1200 After adding slack variables, the constraints are -80x1 - 60x2 + x3 =-1500 -20x1 - 90x2 + x4 =-1200 Where x3 and x4 are slack variables. 2 Initial basic feasible solution Substituting x1 = 0, x2 = 0, z = 0 This gives the solution values as x3 = -1500, x4 = -1200 The initial simplex table is exhibited below. Table 1 cB cj Basic variables B 80 x1 100 x2 0 x3 0 x4 x3 x4 -80 -20 -80 -60 -90 -100 1 0 0 0 1 0 0 0 zj-cj Solution values b (=XB) -1500 -1200 Key Row : Min { XB1, XB2} = Min ( -1500, -1200) = -1500 So x3 row is the key row. Key Column: Min z1 - c 1 -------a11 , z2 - c 2 -------a12 Min -80 -------80 , -100 --------60 Min(1, 5/3) = 1 So column under x1 becomes the key column. Pivot element = - 80. Therefore, x3 departs & x1 enters. Table 2 cB 80 0 zj-cj cj Basic variables B 80 x1 100 x2 0 x3 0 x4 x1 x4 1 0 0 3/4 -75 -40 -1/80 -1/4 -80 0 1 0 Solution values b (=XB) 75/4 -825 Key row = x4 row as it has the only negative value under the XB column. Key column = x2 column. Pivot element = -75. x4 departs & x2 enters. 3 Table 3 cB 80 100 zj-cj cj Basic variables B 80 x1 100 x2 0 x3 0 x4 x1 x2 1 0 0 0 1 0 -3/200 1/300 -13/15 1/100 -1/75 -8/15 The values for x1 & x2 are 21/2 & 11 respectively. The associated objective function value is z = 80 X 21/2 + 100 X 11 = 1940. 4 Solution values b (=XB) 21/2 11
© Copyright 2024 Paperzz