Algorithms_Part12 - S. Dasgupta, C.H. Papadimitriou, and...

Info iconThis preview shows pages 1–3. Sign up to view the full content.

View Full Document Right Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: S. Dasgupta, C.H. Papadimitriou, and U.V. Vazirani 221 Let’s investigate the issue by describing what we expect of these three multipliers, call them y 1 , y 2 , y 3 . Multiplier Inequality y 1 x 1 ≤ 200 y 2 x 2 ≤ 300 y 3 x 1 + x 2 ≤ 400 To start with, these y i ’s must be nonnegative, for otherwise they are unqualified to multiply inequalities (multiplying an inequality by a negative number would flip the ≤ to ≥ ). After the multiplication and addition steps, we get the bound: ( y 1 + y 3 ) x 1 + ( y 2 + y 3 ) x 2 ≤ 200 y 1 + 300 y 2 + 400 y 3 . We want the left-hand side to look like our objective function x 1 + 6 x 2 so that the right-hand side is an upper bound on the optimum solution. For this we need y 1 + y 3 to be 1 and y 2 + y 3 to be 6 . Come to think of it, it would be fine if y 1 + y 3 were larger than 1 —the resulting certificate would be all the more convincing. Thus, we get an upper bound x 1 + 6 x 2 ≤ 200 y 1 + 300 y 2 + 400 y 3 if y 1 , y 2 , y 3 ≥ y 1 + y 3 ≥ 1 y 2 + y 3 ≥ 6 . We can easily find y ’s that satisfy the inequalities on the right by simply making them large enough, for example ( y 1 , y 2 , y 3 ) = (5 , 3 , 6) . But these particular multipliers would tell us that the optimum solution of the LP is at most 200 · 5 + 300 · 3 + 400 · 6 = 4300 , a bound that is far too loose to be of interest. What we want is a bound that is as tight as possible, so we should minimize 200 y 1 + 300 y 2 + 400 y 3 subject to the preceding inequalities. And this is a new linear program ! Therefore, finding the set of multipliers that gives the best upper bound on our original LP is tantamount to solving a new LP: min 200 y 1 + 300 y 2 + 400 y 3 y 1 + y 3 ≥ 1 y 2 + y 3 ≥ 6 y 1 , y 2 , y 3 ≥ By design, any feasible value of this dual LP is an upper bound on the original primal LP. So if we somehow find a pair of primal and dual feasible values that are equal, then they must both be optimal. Here is just such a pair: Primal : ( x 1 , x 2 ) = (100 , 300); Dual : ( y 1 , y 2 , y 3 ) = (0 , 5 , 1) . They both have value 1900 , and therefore they certify each other’s optimality (Figure 7.9). Amazingly, this is not just a lucky example, but a general phenomenon. To start with, the preceding construction—creating a multiplier for each primal constraint; writing a constraint 222 Algorithms Figure 7.9 By design, dual feasible values ≥ primal feasible values. The duality theorem tells us that moreover their optima coincide. Primal Primal feasible This duality gap is zero opt Dual feasible Objective value opt Dual Figure 7.10 A generic primal LP in matrix-vector form, and its dual. Primal LP: max c T x Ax ≤ b x ≥ Dual LP: min y T b y T A ≥ c T y ≥ in the dual for every variable of the primal, in which the sum is required to be above the objective coefficient of the corresponding primal variable; and optimizing the sum of the mul- tipliers weighted by the primal right-hand sides—can be carried out for any LP, as shown in...
View Full Document

Page1 / 20

Algorithms_Part12 - S. Dasgupta, C.H. Papadimitriou, and...

This preview shows document pages 1 - 3. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online