Download presentation
Presentation is loading. Please wait.
1
1 5.6 No-Standard Formulations What do you do if your problem formulation doeshave the Standard Form? What do you do if your problem formulation does not have the Standard Form? This is an important issue because the simplex procedure we described on the standard form, eg This is an important issue because the simplex procedure we described relies very much on the standard form, eg – the RHS coefficients are non-negative – availability of m slack variables – opt=max – and so on.
2
2 Standard Form opt=max ~ b i ≥ 0, for all i.
3
3 Violation # 1 Minimization Observe that the problem z*:= min x Œ X f(x) z*:= min x Œ X f(x) is equivalent to the problem z’:= max x Œ X f(x) z’:= max x Œ X f(x) in that both have the. Also, z’= z*. in that both have the same set of optimal solutions. Also, z’= z*.
4
4 RemediesRemedies 1. Multiply the coefficients of the objective function by -1 and maximize the new objective function. 2. Change the simplex algorithm a bit. : Remark: Australia is a country so in principle you can use either of these two approaches. Australia is a free country so in principle you can use either of these two approaches. In his notes, Moshe prefers the approach. I prefer the first. In his notes, Moshe prefers the second approach. I prefer the first.
5
5 5.6.1 Example
6
6 The coefficients of the objective function are c 1 =1 ; c 2 =-1 ; c 3 = -2 c 1 =1 ; c 2 =-1 ; c 3 = -2 so using the first appraoch, we multiply them by -1 to obtain c’ 1 = -1 ; c’ 2 = 1 ; c’ 3 = 2 c’ 1 = -1 ; c’ 2 = 1 ; c’ 3 = 2 We now use these new coefficients with opt=max. Thus the form is: We now use these new coefficients with opt=max. Thus the equivalent form is:
7
7
8
8 After setting the simplex tableau and conducting two pivot operations we obtain the above final tableau. The optimal solution is thus: x*=(10/3,0,70/3,30,0,0) x*=(10/3,0,70/3,30,0,0) The optimal value of the modified objective function is: Z’ = 130/3 Thus the optimal value of the original objective function is equal to Z* = - Z’ = - 130/3. Z* = - Z’ = - 130/3.
9
9 Thus the optimal value of the original objective function is equal to Z* = - Z’ = - 130/3. Z* = - Z’ = - 130/3.
10
10 The Second Approach Modification in the Simplex Algorithm for opt=min: 1.: 1. Optimality Test: – Stop if all the reduced costs are. – Stop if all the reduced costs are nonpositive. 2. : 2. Greedy Rule: – Select the variable with the most reduced cost. – Select the variable with the most positive reduced cost.
11
11 Example (Continued)
12
12 We do not change the data, only modify theand. Thus, the initial tableau is the same for opt=max and opt=min. We do not change the data, only modify the optimality test and greedy rule. Thus, the initial tableau is the same for opt=max and opt=min. Step 2 (Optimality Test): Since there are reduced costs, we continue. Since there are positive reduced costs, we continue. Step 3 (Variable in): We select x 3 as the new basic variable because its reduced costs is the. We select x 3 as the new basic variable because its reduced costs is the largest.
13
13 Step 4 (Variable out): The (usual) Ratio Test identifies x 5 as the leaving basic variable. Step 5 (Pivoting): As usual New tableau:
14
14 All the reduced costs are, so we stop. All the reduced costs are nonpositive, so we stop. Optimal solution: x=(10/3,0,70/3,30,0,0) Optimal value of the objective function: Z* = -130/3.
15
15 Violation #2 Varaibles allowed to be negative Use the following fact: Any number (positive or negative) can be expressed as the Any number (positive or negative) can be expressed as the difference of two positive numbers. Thus, if say x j is not required to be nonnegative, we can introduce two additional variables, say x’ j and x” j and set x j = x’ j -x” j with x’ j,x” j >= 0.
16
16 Clearly, if x’ j > x” j then x j >0, whereas if x’ j x” j then x j >0, whereas if x’ j <x” j then x j <0. And if x’ j =x” j then x j =0. Thus, x j is indeed unrestricted in sign () Thus, x j is indeed unrestricted in sign (URS)
17
17 Example 5.6.3
18
18 where
19
19 Violation #3 Negative RHS This is handled by multiplying the respective constraint by and taking care of the inequality sign if necessary (changing = and >= to = and >= to <=).
20
20 Example 5.6.4 Observe that in fixing this violation we created another one!
21
21 Violation # 4 <= constraint We convert a “>=“ constraint to a “=“ constraint by introducing a. We convert a “>=“ constraint to a “=“ constraint by introducing a surplus variable. In many respects surplus variables are similar to. In many respects surplus variables are similar to slack variables.
22
22 Example 5.6.5 Convince yourself that (a) is equivalent to (b). (a) } (b) = Correction (old notes)
23
23 Violation #5 = constraint There are two strategies to handle this violation: 1. Use the “=“ constraint to one of the variables (Assignment # 2 !!!!) 1. Use the “=“ constraint to eliminate one of the variables (Assignment # 2 !!!!) 2. Use. 2. Use artificial variables. In 620-261 we prefer the. In 620-261 we prefer the second approach.
24
24 These variables are called “artificial” because they are used temporarily, and ultimately will disappear from the model (be set to zero). Their sole purpose in life is to facilitate the construction of a. Their sole purpose in life is to facilitate the construction of a basic feasible solution.
25
25 Example 5.6.6 Convince yourself that the first is equivalent to the second provided the artificial variable (x 3 ) is equal to zero!!!!! If you are not convinced see your ophthalmologist! How do we force x 3 to be equal to ?? How do we force x 3 to be equal to zero ?? This is a that will be addressed shortly. This is a good question that will be addressed shortly.
26
26 An Overall Example 5.6.7
27
27 There are a number of violations here! Opt = min An equality constraint A >= constraint A negative RHS
28
28 To fix the “min” violation, we consider a modified objective function, namely Z’ = - Z = -3x 1 - 5 x 2 so the objective now is: so the objective now is: max -3x 1 - 5 x 2 max -3x 1 - 5 x 2 : Constraints: The first is in standard form (x 1 <= 4). To bring it to the canonical form we simply use a, say x 3, and write The first is in standard form (x 1 <= 4). To bring it to the canonical form we simply use a slack variable, say x 3, and write x 1 + x 3 = 4 x 1 + x 3 = 4
29
29 The second constraints (-2x 2 = -12) has two violations. The negative RHS is handled by a multiplication by -1 to produce 2x 2 = 12. So we just have to deal with the “=“ violation.
30
30 The “=“ violation is handled by an artificial variable, say x 4. The resulting canonical form of the constraint is thus 2x 2 + x 4 = 12 2x 2 + x 4 = 12 The third constraint (3x 1 + 2x 2 >= 18) violates the “ = 18) violates the “<=“ condition. It is handled by a surplus variable and an artificial variable. The surplus variable, say x 5, will produce an “=“ constraint: 3x 1 + 2x 2 - x 5 = 18 3x 1 + 2x 2 - x 5 = 18
31
31 The “=“ violation” is then handled by an artificial variable, say x 6. This yields the following canonical form: 3x 1 + 2x 2 - x 5 + x 6 = 18 3x 1 + 2x 2 - x 5 + x 6 = 18
32
32 Complete Reformulation
33
33 Important Remark Moshe wrote “We (all of us!) shall adopt the convention that the auxiliary variables (slack, surplus, artificial) are “named” in such a way that the initial basis appears in the last m columns of the “LHS”.” I don’t like this and would prefer that the variables kept their original names.
34
34 _ In any case, observe that the initial basis consists of: Slack variables Artificial variables Artificial variables
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.