1 / 27

Chapter 8. General LP Problems

Chapter 8. General LP Problems. max max (8.3) with free (unrestricted) variable Converting other forms to general LP problem : min  max  by adding a nonnegative slack variable  by subtracting a nonnegative surplus variable

juliefoster
Download Presentation

Chapter 8. General LP Problems

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 8. General LP Problems • max max (8.3) with free (unrestricted) variable • Converting other forms to general LP problem : min  max  by adding a nonnegative slack variable  by subtracting a nonnegative surplus variable • Note that we do not use the transformation for free

  2. Note that the standard problem, augmented with slack variables, is a special case of the general LP with lower bounds 0 and upper bounds +. • Upper bounds on variables need not be treated as explicit constraints, but they can be handled implicitly in the algorithm. • Def: is a basic solution of (8.3) if the components of can be partitioned into “basic” and “nonbasic” variables in such a way that 1) columns of corresponding to the basic variables form a nonsingular matrix. 2) or for each bounded nonbasic variable. (For free variable, no restriction. But usually 0 is used in the algorithm) (Note that the choice of basic variables does not determine a basic solution as the standard LP case. Upper and lower bound for nonbasic bounded variables must be determined too.) • Def: A basic solution is called feasible if .

  3. Modifications of the simplex method to handle the general LP directly : Given a b.f.s., choose an entering nonbasic variable. Then change (increase or decrease depending on the status of the entering nonbasic variable) the value of the entering nonbasic variable while other nonbasic variables are fixed at their current values. Then the value of the basic variables must be changed to satisfy the equations . • Change the value of the entering variable while values of the entering variable and the basic variables satisfy the bound constraints. If one of the basic variables attains lower or upper bound value, let it become the nonbasic variable. The entering nonbasic variable becomes basic. Update the dictionary (tableau).

  4. Suppose we have a b.f.s. and corresponding dictionary (dictionary form not affected by the bound constraints) Note that may not be equal to and the objective value of the current solution may not be equal to . • Candidates for entering nonbasic variable : 2 cases are possible (1) and (8.6) (can increase and objective value increases) (2) and (8.7) (can decrease and objective value increases)

  5. Suppose is selected as the entering nonbasic variable. Let or , and or ( ) while other nonbasic variables are fixed at the current values. Then the values of the basic variables must be changed to or and so that the new solution satisfies the equations. Let be the largest such that (8.8) New solution obtained : ,

  6. ( continued ) • 3 cases can happen: • The upper bound on imposed by is stricter than the upper bound (if any) imposed by .  Determine the leaving (basic) variable. This may be any basic variable such that the upper bound imposed on by alone is as strict as the upper bound imposed by all the constraints in . • The upper bound on imposed by is at least as strict as the upper bound (if any) imposed by .  The entering (nonbasic) variable changes its status (lower bound  upper bound). But there is no basis change. • Neither nor impose any upper bound on .  The problem is unbounded. • See BOX 8.1 for details of a simplex iteration.

  7. Example • maximize , subject to . c = [ 2, 1, -2, -2, 3, 2, 3, -4, 0, -2, -3, 3 ]T l = [ -5, -, -4, -2, 2, 0, 0, 3, -, -, -, - ]T u = [ +, 3, -2, 3, 5, 1, +, +, 0, 5, +, + ]T • Let be basic variables. Then the following is a basic feasible solution. [ 1 0 -2 32 0 0 30 5-1 1],

  8. We first find vector from  Next, check whether any nonbasic variable satisfies the following conditions. and , (8.6) and , (8.7) Satisfying (8.6)  Satisfying (8.7)  Suppose we choose (satisfying (8.6)) as the entering (nonbasic) variable.

  9. Find vector from .  • Find in For entering variable , For basic variable , For basic variable ,  and reaches its upper bound, hence leaves basis. New basic solution is [ -0.6 3-23 2.2 0 0 30 5-1 1 ] and are basic variables. ( compare with the previous solution, [ 1 0 -2 32 0 0 30 5-1 1 ] )

  10. Current dictionary when basic: z = 10 + 2x3 - 3x4 + 2x5 - x6 + 2x7 - x8 + x9 - x10 + 2x11 - x12 x1 = 62 - 9x3 - 5x4 - 8x5 - x6 - 2x7 - 7x8 - 8x9 - 7x10 - 9x11 - x12 x2 = -114 + 22x3 +9x4 + 15x5 - x6 + 3x7 + 17x8 + 17x9 + 15x10 + 23x11 - 2x12 l = [ -5, -, -4, -2, 2, 0, 0, 3, -, -, -, - ]T u = [ +, 3, -2, 3, 5, 1, +, +, 0, 5, +, + ]T (entering nonbasic, increasing) , , , , , 

  11. When (satisfying (8.7)) is chosen as the entering variable,  . Now the constraints (8.8) assume the form 5 and , imposing no upper bound on . Hence the problem is unbounded. In our case, every with constitutes a feasible solution with .

  12. Degeneracy and Termination • Def: A basic feasible solution is called a degenerate solutionif or for one or more basic variables . (When a simplex iteration begins with a degenerate b.f.s. , the constraints may force equal to zero. In that case, the entering variable enters the basis and the leaving variable leaves, but the solution remains unchanged. Such iterations are called degenerate.) Cycling: appearance of the same basic feasible solution with the same set of basic variables in two different iterations. • Thm 8.1: If the simplex method applied to a problem maximize subject to fails to terminate, then it must cycle. Pf) see text.

  13. Cycling is very rare in practice, and disregarded in most computer implementations of the simplex method. However, finite convergence can be guaranteed by some special pivoting rules. • Thm 8.2: The simplex method applied to a problem maximize subject to terminates as long as the entering and the leaving variables are selected by the smallest-subscript rule in each iteration. Pf) not given here.

  14. Remarks • Note that a free nonbasic variable can always be a candidate for entering variable as long as . (Although , we may let it enter the basis without changing the objective value) Moreover, a free basic variable never become nonbasic in subsequent iterations. (There are no bounds on free variables, see (8.8) ) Hence we may let all free variables become basic in early iterations and let them remain basic in subsequent iterations. • In commercial softwares, simplex algorithm for general LP is used. (also called the bounded variable simplex method) Convenient to use when we want to solve the problem again with a little bit of data change (e.g. fix the values of the variables, change the bounds, etc. Useful when we solve the integer program using branch-and-bound )

  15. Two-phase simplex method • Need initial b.f.s. to apply the simplex method for general LP Use idea similar to the one we used earlier for standard LP max (8.9) • Introduce artificial variables . (8.10) and for artificial variables need to be determined. However, for the above problem (8.10), we can find an initial b.f.s. easily and (8.9) has a feasible solution if and only if (8.10) has a solution with all artificial variables 0.

  16. Let or for every bounded variable for every free variable . Set for all Now set the bounds for artificial variables If , set If , set Above solution is a b.f.s. to (8.10). Starting with this initial b.f.s. to (8.10), we want to find a solution to (8.10) with all artificial variables having 0 value. Therefore, we let if and if and consider minimize , subject to (8.10). (Phase 1 problem)

  17. For all feasible solutions to (8.10), we have . • If the optimal value of the auxiliary problem is , the problem (8.9) is infeasible. (contraposition of the statement (8.9) feasible  auxiliary problem has optimal value 0) If the optimal value is equal to 0, all , hence the solution is feasible to (8.9). We restore the original objective function and solve the following problem after resetting the bounds on the artificial variables to 0. (Phase 2 problem) Note that the solution we have at the end of phase one is a b.f.s. max s.t.

  18. We may omit some artificial variables in the Phase 1 problem. Instead, we may use suitably chosen original variables as part of the initial basic variables. Ex) max s.t. May use Phase 1 problem max s.t. ,

  19. Getting Rid of Artificial Basic Variables • At the end of phase one, the artificial variables which are nonbasic (hence have value 0) can be dropped before phase two is applied. Artificial variables which are basic cannot be dropped since we need basic variables to denote a basic solution. However, the procedure given in BOX 8.2 replaces each artificial basic variable in the basis by an original variable which is nonbasic. If the procedure fails to replace an artificial basic variable, it indicates that the constraint to which the artificial variable is attached is a redundant equation, hence the equation can be removed from the formulation and the feasible solution set is not changed. (Also the artificial variable can be dropped from the basis and eliminated from the formulation)

  20. Assume each artificial basic variable appears in the position of the basis heading. Note that each column of is either a column of or a column of . • BOX 8.2 Driving Artificial Variables Out of the Basis Step 0. Let be the set of all the subscripts such that is a basic variable. Step 1. If is empty then stop. Otherwise delete one subscript from . Step 2. Solve the system with standing for the row of the identity matrix. (Hence , is row of . Also is row of updated coefficient matrix with current basis .) If is the zero vector, then return to step 1. Otherwise, there is a nonbasic variable (hence ) such that for the corresponding column of of . Replace the column of by ; replace by in the basis heading and return to step 1.

  21. Driving artificial variables out of the basis (in tableau form) Pivot element (). Pivot with leaves basis, enters basis. Solution not changed, only basis change.

  22. Justification: The updated matrix remains nonsingular. Let be the identity matrix whose column is replaced by the vector . Then, . The matrix is nonsingular if and only if the entry of the vector is nonzero. Now . Hence is nonsingular. Also, the b.f.s. with basis is the same as the b.f.s. with basis . • What if the procedure fails to eliminate artificial basic variable from the basis, i.e. in step 2?  It implies that the equation in (8.9) to which artificial variable is attached is unnecessary (or redundant) to describe the feasible solution set and may be deleted altogether. (Recall ‘Simultaneous Linear Equations’ in ornote-02.)

  23. Let denote the set of subscripts such that persists in the basis, and let denote the subscripts 1, 2, … , that do not belong to . We claim that every solution of () (8.12) satisfies all the equations (). (8.13) • Pf) Consider arbitrary , along with the vector computed immediately after the deletion of from . Since , we have for all . Since , we have and for all the remaining subscripts . Hence (8.13) may be recorded as and every solution of (8.12) must satisfy (8.14)

  24. (continued) In particular, (8.14) must be satisfied by the feasible solution of (8.9), and so . We conclude that every solution of (8.12) must satisfy , which is the desired result. • Thus (8.9) and the problem max () (8.15) () are equivalent in the sense that they have precisely the same set of feasible solutions. (clearly, every solution of (8.9) also satisfies (8.15).)

  25. The feasible solution of (8.9) delivered by the first phase of the two-phase simplex method is a feasible solution of (8.15). We claim that this solution is basic in (8.15), with the appropriate set of basic variables having been delivered by the procedure described earlier. To justify this claim, denote by the subscripts with for which appears in the basis heading upon termination of the procedure. We have to verify only that the system () has a unique solution. But this claim follows at once from the fact that the system () () has a unique solution.

  26. Thm 8.3: If (8.9) has a feasible solution, then some set of subscripts has the following two properties: (i) problems (8.9) and (8.15) have precisely the same set of feasible solutions and (ii) problem (8.15) has a basic feasible solution.

  27. Fundamental Theorem of LP Reviewed • maximize subject to (8.16) • Def: a basic solution in which each nonbasicfree variable is set at zero is called a normal basic solution. ((8.16) has only a finitely many normal basic solutions.) • Thm 8.4: If (8.16) has no optimal solution, then it is either infeasible or unbounded. Furthermore, if has full row rank, then (8.16) has the following two properties: • If it has a feasible solution, then it has a normal basic feasible solution. • If it has an optimal solution, then it has a normal basic optimal solution. Pf) See text. Note that if does not have full row rank, there does not exist a basic solution for (8.16). However, the assumption is satisfied whenever (8.16) is obtained from standard form. The columns corresponding to the slack variables constitutes the identity matrix, which makes the matrix full row rank.

More Related