Viterbi School of Engineering Daniel J. Epstein Department of Industrial and Systems Engineering ISE 330: Introduction to Operations Research Fall 2006 (Oct 16): Midterm Review http://www-scf.usc.edu/~ise330 Read: H&L chapters 1-6 THE SIMPLEX METHOD Setting up a Linear Program: standard form of LP Assumptions of Linear Programming: proportionality, additivity, divisibility, certainty Definitions: corner point feasible solutions (CPF) and basic feasible solutions (BFS) Theorem: A CPF solution that has no adjacent CPF solutions that are better is optimal. Solving Linear Programming Problems: Method: Geometric approach: graphical solution The Simplex Method: algebra of the simplex method basic and non-basic variables pivot column, pivot row, minimum ratio test tie in entering/leaving variable, no leaving variable, multiple solutions Initialize: Introduce slack variables, which are the initial basic variables. Decision variables are initial nonbasic variables. Optimality Test: BFS is optimal iff every coefficient in row 0 is nonnegative. If so, we are done, otherwise continue. Iteration: Determine entering basic variable having the most negative coefficient in row 0. This is the pivot column. Determine leaving basic variable by applying the minimum ratio test. Solve for new BFS using elementary row operations. Variations in Model Forms: I. What do you do when there is a constraint at equality? II. Constraint with negative RHS? III. Greater-than-or-equal constraints? 1
IV. Minimization problems V. Variables Allowed to be Negative. variables with a bound on the negative values are allowed? What if variables with no bound on the negative values are allowed? Solving LPs with artificial variables The Big-M method. The Two-Phase Simplex Method. I: Find a BFS for the real problem by min the sum of the artificial var. II: Find an optimal solution for the real problem. How can you tell if the real problem has no feasible solutions? How can we model variables that are allowed to be negative? CASE 1: CASE 2: Variables with a lower bound. Variables with no lower bounds. Post-optimality Analysis Shadow prices, binding constraints FOUNDATIONS OF THE SIMPLEX METHOD Definitions: Constraint Boundary Equation, hyperplane, boundary Corner-Point Feasible Solution, edges, adjacent CPF Solutions Constraint boundary equation, indicating variable Properties of CPF Solutions: Property 1: (a) If there is exactly 1 optimal solution, it must be a CPFS. (b) If there are multiple opt solns (and a bounded feasible region), 2 must be adjacent CPFS. Property 2: There are a finite number of CPFS. Property 3: If a CPFS has no adjacent CPFS that are better, then such a CPFS is guaranteed to be an optimal solution. Augmented Form: Each BFS has m basic variables, and the rest are nonbasic. The number of nonbasic variables equals n + # surplus variables. The basic solution is the augmented CPS whose n defining equations are indicated by the nonbasic variables. E.C. 2
A BFS is a basic solution where all m basic variables are nonnegative. A BFS is said to be degenerate if any of the m variables equals zero. An adjacent CPF solution is reached by (1) deleting one constraint boundary from the n defining boundaries (2) moving along the edge defined by the remaining n 1 boundaries (3) stopping when the first new boundary is reached. REVISED SIMPLEX METHOD: Initial Basic Coeff Tableaux Var Z original slack RHS Z 1 c 0 0 x B 0 A I b Final Basic Coeff Tableaux Var Z original slack RHS Z 1 c B B -1 A c c B B -1 c B B -1 b x B 0 B -1 A B -1 B -1 b Book s Basic Coeff Notation Var Z original slack RHS Z 1 z* c y* Z* x B 0 A* S* b* The Revised Simplex Method: (1) Initialization: as before (2) Iteration: - Determine entering basic variable - Determine leaving basic variable (only make necessary calc) - Determine new BFS: Find B -1, x B = B -1 b (3) Optimality test: as before (only calc coeff for nonbasic variables in Z) A way to derive the B -1 new from the old B -1 old x k = entering basic variable a ik = column k coefficients in A' r = row of the leaving basic variable E.C. 3
B new = E B old E = 1 0 a 1k /a rk 0 0 0 1 a 2k /a rk 0 0 : : : : : 0 0 1/a rk 0 0 : : : : : 0 0 a (m 1)k /a rk 1 0 0 0 a mk /a rk 0 1 COMPLEMENTARITY Weak duality property: If x is a feasible solution for the primal problem and y is a feasible solution for the dual problem, then cx yb. Strong duality property: If x* is an optimal solution for the primal problem and y* is an optimal solution for the dual problem, then cx* = y*b. Complementary solutions property: At each iteration, the simplex method simultaneously identifies a CPF solution x for the primal πroblem and a complementary solution y for the dual problem (found in row 0, the coeff of the slack variables), where cx = yb. If x is not optimal for the primal, what about y? Complementary optimal solutions property: At the final iteration, the simplex method simultaneously identifies an optimal solution x* for the primal problem and a complementary optimal solution y* for the dual problem (found in row 0, the coeff of the slack variables), where cx* = y*b. In this solution, y* gives the shadow prices for the primal problem. Symmetry property: The dual of the dual is the primal. Duality Theorem: Possible scenarios (1) Feasible solutions exist and objective function is bounded, then same is true for other problem. (2) Feasible solutions exist and objective function is unbounded, then other problem is infeasible. (3) No feasible solutions exist then other problem is either infeasible or has unbounded objective fn. Complementary basic solutions property: Each basic solution in the primal problem has a complementary basic solution in the dual problem, where their respective objective function values (Z and W) are equal. Complementary optimal basic solutions property: Each optimal basic solution in the primal problem has a complementary optimal basic solution in the dual problem, where their respective objective function values (Z and W ) are equal. E.C. 4
Complementary slackness property: The variables in the primal basic solution and the complementary dual basic solution satisfy the complementary slackness as shown: Primal variable Basic Non-basic Dual variable Non-basic (m variables) Basic (n variables) Futhermore, the relationship is symmetric. DUALITY Shortcut for conversion between primal and dual: Primal Maximize Z Constraint i: form = form form Variable x j : x j 0 unconstrained x j 0 Dual Minimize W Variable y i : y i 0 unconstrained y i 0 Constraint j: form = form SENSITIVITY ANALYSIS Definition: Sensitivity Analysis deals with the effect on the optimal solution of making changes in the values of the model parameters aij, bi cj. CASE 1: Changes in b i One change in the RHS What is the allowable range to stay feasible? Simultaneous changes on the RHS Rule of thumb: Calculate the percentage of the allowable change for each change. If the sum of the percentage changes does not exceed 100%, the shadow prices will still be valid. CASE 2a: Changes in the Coefficients of a Nonbasic Variable One change in the Objective Function Coefficient How to calculate the allowable range to stay optimal for c j. Simultaneous changes in the Objective Function Coefficients Rule of thumb: The 100% rule as above. E.C. 5
CASE 2b: Introducing a New Variable CASE 3: Changes in the Coefficients of a Basic Variable Calculate the revised final tableaux. Convert this to standard form, and find the new optimal solution. Find allowable range to stay optimal? CASE 4: Introducing new constraints What is the graphical effect of this new constraint? Does the previous optimal solution violate this constraint? What is the optimal solution? Parametric Approach to Sensitivity Analysis Investigate the effect of varying individual b i parameters. Multiple b i parameters can be varied at the same time. E.C. 6