1 / 50

高等作業研究 ( 一 )

高等作業研究 ( 一 ). Chapter 3 Linear Programming Methods (II). When the original model contains "greater than or equal to" inequalities or equations, a BFS is not immediately available.

stephensonj
Download Presentation

高等作業研究 ( 一 )

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 高等作業研究(一) Chapter 3 Linear Programming Methods (II)

  2. When the original model contains "greater than or equal to" inequalities or equations, a BFS is not immediately available. We now show how to find an initial solution by solving an augmented linear program as the first phase of a two-phase procedure. The second phase involves solving the original problem using the BFS obtained in the first phase as the starting point. Initial BFS

  3. Example

  4. (artificial variables: ) Note: The optimal objective value in phase 1 is w*=0.

  5. -3 7

  6. We say that the basis for the tableau is primal feasible if all elements of the right-hand side are nonnegative. Alternatively, when some of the elements are negative, we say that the basis is primal infeasible. Up to this point, we have always been concerned with primal feasible bases. DUAL SIMPLEX ALGORITHM

  7. For the primal simplex algorithm, some elements in row 0 will be negative until the final iteration when the optimality conditions are satisfied. In the event that all elements of row 0 are nonnegative, we say that the associated basis is dual feasible. Alternatively, if some of the elements of row 0 are negative, we have a dual infeasible basis.

  8. The primal simplex method works with primal feasible but dual infeasible (nonoptimal) bases. At the final (optimal) solution, the basis is both primal and dual feasible. Throughout the process, we maintain primal feasibility and drive toward dual feasibility.

  9. For the dual simplex method, until the final iteration, each basis examined is primal infeasible (there are some negative values on the right-hand side) and dual feasible (all elements in row 0 are nonnegative). At the final (optimal) iteration, the solution is both primal and dual feasible. Throughout the process, we maintain dual feasibility and drive toward primal feasibility.

  10. The dual simplex algorithm is best suited for problems in which an initial dual feasible solution is easily available. It is particularly useful for reoptimizing a problem after a constraint has been added or some parameters have been changed so that the previously optimal basis is no longer feasible.

  11. Max s.t. Example

  12. Leaving variable: the basic variable with most negative value.( ) Entering variable: min. ratio test

  13. Restarting After Changing the Right-Hand-Side Constants Ex:

  14. Changing the RHS constants will change only the entries in the last column of the tableau. In particular, if we change from 35 to 20 and from 20 to 26 in the original problem statement, the RHS vector in the tableau shown in Table 3.29 for the current basis B becomes

  15. Why? The inverse matrix B-1 records the operations that have been done to the system of equations.

  16. 46

  17. Using the preceding problem, we now add the constraint . The solution in the optimal tableau, = 20 and = 5, does not satisfy this constraint, so action must be taken to incorporate it into the tableau. First we subtract a slack variable to get the equality and then multiply it by -1 to achieve the correct form. Adding a Constraint

  18. Decision variables: Objective coefficients: Right-hand-side constants: SIMPLEX METHOD USING MATRIX NOTATION

  19. Structural coefficients:

  20. LP Model

  21. Suppose we now assume that the n variables are permuted so that the basic variables are the first m components of x. Then we can write x = ( ), where and refer to the basic and nonbasic variables, respectively. The matrix A can also be partitioned similarly into A = (B, N), where B is the m × m basis matrix and N is m×(n - m). The equation Ax = b can thus be written as

  22. Multiplying through by yields => =>

  23. we introduce the n-dimensional row vector of dual variables,π, and define it as , so currently z =πb and xB=B-1b.

  24. Max s.t. Example

  25. The dual solution is

  26. we see that the objective function value for a given basis can be written as => The objective value as a function of alone is

  27. Reduced cost of Optimality condition: (Q=set of nonbasic variables)

  28. For a particular basis B, we have When we set all the nonbasic variables equal to zero except xk, this expression becomes

  29. Note For the example problem, we start with the basic solution

  30. Allowing to enter the basis, we compute The minimum ratio is θ= 6 for the first equation, so , must leave the basis.

  31. The initial and later simplex tableau Performing elementary row operations to a system of equations is equivalent to pre-multiply the system of equations by a certain matrix.

  32. This method does not update and store the entire tableau but only those data elements needed to construct the current basis inverse and to reproduce the matrices describing the original problem. REVISED SIMPLEX METHOD

  33. Commercial codes do not store as an m × m matrix but use an implicit approach such as LU­decomposition to reconstruct it as needed. In this approach, the B-matrix is decomposed into an upper triangular matrix, U, and a lower triangular matrix, L, such that B = LU.

  34. Components of Revised Simplex Algorithm:

  35. Inverse Update formula Suppose that xk is the entering variable and the rth basic variable is the leaving variable. The new basis inverse is: where E is an identity matrix except that its rth column is replaced by Ex:

More Related