Chapter 12 Discrete Optimization Methods 12.1 Solving by Total Enumeration • If model has only a few discrete decision variables, the most effective method of analysis is often the most direct: enumeration of all the possibilities. [12.1] • Total enumeration solves a discrete optimization by trying all possible combinations of discrete variable values, computing for each the best corresponding choice of any continuous variables. Among combinations yielding a feasible solution, those with the best objective function value are optimal. [12.2] Swedish Steel Model with All-or-Nothing Constraints min 16(75)y1+10(250)y2 +8 x3+9 x4 +48 x5+60 x6 +53 x7 s.t. 75y1+ 250y2 + x3+ x4 + x5+ x6 + x7 = 1000 0.0080(75)y1+ 0.0070(250)y2+0.0085x3+0.0040x4 0.0080(75)y1+ 0.0070(250)y2+0.0085x3+0.0040x4 0.180(75)y1 + 0.032(250)y2 + 1.0 x5 0.180(75)y1 + 0.032(250)y2 + 1.0 x5 0.120(75)y1 + 0.011(250)y2 + 1.0 x6 0.120(75)y1 + 0.011(250)y2 + 1.0 x6 0.001(250)y2 + 1.0 x7 0.001(250)y2 + 1.0 x7 x3…x7 0 Cost = 9967.06 y1, y2 = 0 or 1 (12.1) 6.5 7.5 30.0 30.5 10.0 12.0 11.0 13.0 y1* = 1, y2* = 0, x3* = 736.44, x4* = 160.06 x5* = 16.50, x6* = 1.00, x7* = 11.00 Swedish Steel Model with All-or-Nothing Constraints Discrete Combination Corresponding Continuous Solution Objective Value y1 y2 x3 x4 x5 x6 x7 0 0 823.11 125.89 30.00 10.00 11.00 10340.89 0 1 646.67 63.33 22.00 7.25 10.75 10304.08 1 0 736.44 160.06 16.50 1.00 11.00 9967.06 1 1 561.56 94.19 8.50 0.00 10.75 10017.94 Exponential Growth of Cases to Enumerate • Exponential growth makes total enumeration impractical with models having more than a handful of discrete decision variables. [12.3] 12.2 Relaxation of Discrete Optimization Models Constraint Relaxations • Model (𝑃) is a constraint relaxations of model (P) if every feasible solution to (P) is also feasible in (𝑃) and both models have the same objective function. [12.4] • Relaxation should be significantly more tractable than the models they relax, so that deeper analysis is practical. [12.5] Example 12.1 Bison Booster The Boosters are trying to decide what fundraising projects to undertake at the next country fair. One option is customized Tshirts, which will sell for $20 each; the other is sweatshirts selling for $30. History shows that everything offered for sale will be sold before the fair is over. Materials to make the shirts are all donated by local merchants, but the Boosters must rent the equipment for customization. Different processes are involved, with the T-shirt equipment renting at $550 for the period up to the fair, and the sweatshirt equipment for $720. Display space presents another consideration. The Boosters have only 300 square feet of display wall area at the fair, and T-shirts will consume 1.5 square feet each, sweatshirts 4 square feet each. What plan will net the most income? Bison Booster Example Model • Decision variables: x1 number of T-shirts made and sold x2 number of sweatshirts made and sold y1 1 if T-shirt equipment is rented; =0 otherwise y1 1 if sweatshirt equipment is rented; =0 otherwise • Max 20x1 + 30x2 – 550y1 – 720y2 (Net income) s.t. 1.5x1 + 4x2 300 (Display space) x1 200y1 (T-shirt if equipment) x2 75y2 (Sweatshirt if equipment) (12.2) x1, x2 0 Net Income = 3450 y1, y2 = 0 or 1 x1* = 200, x2* = 0, y1* = 1, y2* = 0 Constraint Relaxation Scenarios • Double capacities 1.5x1 + 4x2 600 x1 400y1 x2 150y2 x1, x2 0 y1, y2 = 0 or 1 Net Income = 7450 𝑥 1* = 400, 𝑥 2* = 0, 𝑦1* = 1, 𝑦2 * = 0 • Dropping first constraint 1.5x1 + 4x2 300 x1 200y1 x2 75y2 x1, x2 0 y1, y2 = 0 or 1 Net Income = 4980 𝑥 1* = 200, 𝑥 2* = 75, 𝑦1* = 1, 𝑦2 * = 1 Constraint Relaxation Scenarios • Treat discrete variables as continuous 1.5x1 + 4x2 300 x1 200y1 x2 75y2 x1, x2 0 0 y1 1 0 y2 1 Net Income = 3450 𝑥 1* = 200, 𝑥 2* = 0, 𝑦1* = 1, 𝑦2 * = 0 Linear Programming Relaxations • Continuous relaxations (linear programming relaxations if the given model is an ILP) are formed by treating any discrete variables as continuous while retaining all other constraints. [12.6] • LP relaxations of ILPs are by far the most used relaxation forms because they bring all the power of LP to bear on analysis of the given discrete models. [12.7] Proving Infeasibility with Relaxations • If a constraint relaxation is infeasible, so is the full model it relaxes. [12.8] Solution Value Bounds from Relaxations • The optimal value of any relaxation of a maximize model yields an upper bound on the optimal value of the full model. The optimal value of any relaxation of a minimize model yields an lower bound. [12.9] Feasible solutions in relaxation Feasible solutions in true model True optimum Example 11.3 EMS Location Planning 8 2 9 1 6 4 5 10 3 7 Minimum Cover EMS Model 10 𝑀𝑖𝑛 𝑥𝑗 𝑗=1 s.t. x2 x1 + x2 x1 + x3 x3 x3 x2 x2 + x4 x3 + x4 x8 1 1 1 1 1 1 1 1 1 (12.3) x4 + x6 1 x4 + x5 1 x4 + x5 + x6 1 x4 + x5 + x7 1 x8 + x9 1 x2* = x3* = x4* = x6* x6 + x9 1 = x8* = x10* =1, x5 + x6 1 x1* = x5* = x7* = x9* x5 + x7 + x10 1 =0 x8 + x9 1 x9 + x10 1 x10 1 xi = 0 or 1 j=1,…,10 Minimum Cover EMS Model with Relaxation 10 𝑀𝑖𝑛 𝑥𝑗 𝑗=1 s.t. x2 x1 + x2 x1 + x3 x3 x3 x2 x2 + x4 x3 + x4 x8 1 1 1 1 1 1 1 1 1 x4 + x6 1 x4 + x5 1 x4 + x5 + x6 1 x4 + x5 + x7 1 x8 + x9 1 x6 + x9 1 x5 + x6 1 x5 + x7 + x10 1 x8 + x9 1 x9 + x10 1 x10 1 (12.4) 𝑥 2* = 𝑥 3 * = 𝑥 8* = 𝑥 10* =1, 𝑥 4* = 𝑥 5* = 𝑥 6* = 𝑥 9* = 0.5 0xj 1 j=1,…,10 Optimal Solutions from Relaxations • If an optimal solution to a constraint relaxation is also feasible in the model it relaxes, the solution is optimal in that original model. [12.10] Rounded Solutions from Relaxations • Many relaxations produce optimal solutions that are easily “rounded” to good feasible solutions for the full model. [12.11] • The objective function value of any (integer) feasible solution to a maximizing discrete optimization problem provides a lower bound on the integer optimal value, and any (integer) feasible solution to a minimizing discrete optimization problem provides an upper bound. [12.12] Rounded Solutions from Relaxation: EMS Model Ceiling 𝑥1 = 𝑥1 = 0 = 0 𝑥2 = 𝑥2 = 1 = 1 𝑥3 = 𝑥3 = 1 = 1 𝑥4 = 𝑥4 = 0.5 = 1 𝑥5 = 𝑥5 = 0.5 = 1 𝑥6 = 𝑥6 = 0.5 = 1 𝑥7 = 𝑥7 = 0 = 0 𝑥8 = 𝑥8 = 1 = 1 𝑥9 = 𝑥9 = 0.5 = 1 𝑥10 = 𝑥10 = 1 = 1 10 𝑗=1 𝑥 j= 8 (12.5) Floor 𝑥1 = 𝑥1 = 0 = 0 𝑥 2= 𝑥 2 = 1 = 1 𝑥 3= 𝑥 3 = 1 = 1 𝑥4 = 𝑥4 = 0.5 = 0 𝑥5 = 𝑥5 = 0.5 = 0 𝑥6 = 𝑥6 = 0.5 = 0 𝑥 7= 𝑥 7 = 0 = 0 𝑥 8= 𝑥 8 = 1 = 1 𝑥9 = 𝑥9 = 0.5 = 0 𝑥10= 𝑥10 = 1 = 1 10 𝑗=1 𝑥𝑗 = 4 12.3 Stronger LP Relaxations, Valid Inequalities, and Lagrangian Relaxation • A relaxation is strong or sharp if its optimal value closely bounds that of the true model, and its optimal solution closely approximates an optimum in the full model. [12.13] • Equally correct ILP formulations of a discrete problem may have dramatically different LP relaxation optima. [12.14] Choosing Big-M Constants • Whenever a discrete model requires sufficiently large big-M’s, the strongest relaxation will result from models employing the smallest valid choice of those constraints. [12.15] Bison Booster Example Model with Relaxation in Big-M Constants • Max 20x1 + 30x2 – 550y1 – 720y2 (Net income) (12.2) s.t. 1.5x1 + 4x2 300 (Display space) x1 200y1 (T-shirt if equipment) x2 75y2 (Sweatshirt if equipment) x1, x2 0 Net Income = 3450 x1* = 200, x2* = 0, y1* = 1, y2* = 0 y1, y2 = 0 or 1 • Max 20x1 + 30x2 – 550y1 – 720y2 (Net income) (12.6) s.t. 1.5x1 + 4x2 300 (Display space) x1 10000y1 (T-shirt if equipment) x2 10000y2 (Sweatshirt if equipment) x1, x2 0 Net Income = 3989 𝑥 1 = 200, 𝑥 2 = 0, 𝑦1 = 0.02, 𝑦2 = 0 y1, y2 = 0 or 1 Valid Inequalities • A linear inequality is a valid inequality for a given discrete optimization model if it holds for all (integer) feasible solutions to the model. [12.16] • To strengthen a relaxation, a valid inequality must cut off (render infeasible) some feasible solutions to the current LP relaxation that are not feasible in the full ILP model. [12.17] Example 11.10 Tmark Facilities Location 4 6 7 1 2 5 3 8 i Fixed Cost 1 2400 2 7000 3 3600 4 1600 5 3000 6 4600 7 9000 8 2000 Tmark Facilities Location Example with LP Relaxation 8 14 8 𝑚𝑖𝑛 (𝑟𝑖,𝑗 𝑑𝑗 )𝑥𝑖,𝑗 + 𝑖=1 𝑗=1 𝑓𝑖 𝑦𝑖 (12.8) 𝑖=1 8 s.t. 𝑥𝑖,𝑗 = 1 𝑓𝑜𝑟 𝑎𝑙𝑙 𝑗 (𝑐𝑎𝑟𝑟𝑦 𝑗 𝑙𝑜𝑎𝑑) 𝑖=1 14 1500𝑦𝑖 ≤ 𝑑𝑗 𝑥𝑖,𝑗 ≤ 5000𝑦𝑖 (𝑐𝑎𝑝𝑎𝑐𝑖𝑡𝑦 𝑜𝑓 𝑖) 𝑗=1 𝑥𝑖,𝑗 ≥ 0 𝑓𝑜𝑟 𝑎𝑙𝑙 𝑖, 𝑗 𝑦𝑖 = 0 𝑜𝑟 1 𝑓𝑜𝑟 𝑎𝑙𝑙 𝑖 y4*=y8*= 1 y1*=y2*= y3*=y5*= y6*=y7*= 0 Total Cost = 10153 𝑦1 = 0.230, 𝑦2 = 0.000, 𝑦3 = 0.000, 𝑦4 = 0.301, 𝑦5 = 0.115, 𝑦6 = 0.000, 𝑦7 = 0.000, 𝑦8 = 0.650 Total Cost = 8036.60 LP Relaxation Tmark Facilities Location Example with LP Relaxation 8 14 8 𝑚𝑖𝑛 (𝑟𝑖,𝑗 𝑑𝑗 )𝑥𝑖,𝑗 + 𝑖=1 𝑗=1 𝑓𝑖 𝑦𝑖 (12.8) 𝑖=1 8 s.t. 𝑥𝑖,𝑗 = 1 𝑓𝑜𝑟 𝑎𝑙𝑙 𝑗 (𝑐𝑎𝑟𝑟𝑦 𝑗 𝑙𝑜𝑎𝑑) 𝑖=1 14 1500𝑦𝑖 ≤ 𝑑𝑗 𝑥𝑖,𝑗 ≤ 5000𝑦𝑖 (𝑐𝑎𝑝𝑎𝑐𝑖𝑡𝑦 𝑜𝑓 𝑖) 𝑗=1 𝑥𝑖,𝑗 ≥ 0 𝑓𝑜𝑟 𝑎𝑙𝑙 𝑖, 𝑗 𝒙𝒊,𝒋 ≤ 𝒚𝒊 𝒇𝒐𝒓 𝒂𝒍𝒍 𝒊, 𝒋 𝑦𝑖 = 0 𝑜𝑟 1 𝑓𝑜𝑟 𝑎𝑙𝑙 𝑖 LP Relaxation 𝑦1 = 0.000, 𝑦2 = 0.000, 𝑦3 = 0.000, 𝑦4 = 0.537, 𝑦5 = 0.000, 𝑦6 = 0.000, 𝑦7 = 0.000, 𝑦8 = 1.000 Total Cost = 10033.68