12.07.2015 Views

Design of Approximation Algorithms

Design of Approximation Algorithms

Design of Approximation Algorithms

SHOW MORE
SHOW LESS
  • No tags were found...

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

48 Greedy algorithms and local searchLemma 2.15: Let S be the set <strong>of</strong> banks at the start <strong>of</strong> some iteration <strong>of</strong> Algorithm 2.2, and leti ∈ B be the bank chosen in the iteration. Thenv(S ∪ {i}) − v(S) ≥ 1 (v(O) − v(S)).kTo get some intuition <strong>of</strong> why this is true, consider the optimal solution O. We can allocateshares <strong>of</strong> the value <strong>of</strong> the objective function v(O) to each bank i ∈ O: the value v ij for eachj ∈ P can be allocated to a bank i ∈ O that attains the maximum <strong>of</strong> max i∈O v ij . Since |O| ≤ k,some bank i ∈ O is allocated at least v(O)/k. So after choosing the first bank i to add to S, wehave v({i}) ≥ v(O)/k. Intuitively speaking, there is also another bank i ′ ∈ O that is allocatedat least a 1/k fraction <strong>of</strong> whatever wasn’t allocated to the first bank, so that there is an i ′ suchthat v(S ∪ {i ′ }) − v(S) ≥ 1 k(v(O) − v(S)), and so on.Given the lemma, we can prove the performance guarantee <strong>of</strong> the algorithm.Theorem 2.16: Algorithm 2.2 gives a (1 − 1 e)-approximation algorithm for the float maximizationproblem.Pro<strong>of</strong>. Let S t be our greedy solution after t iterations <strong>of</strong> the algorithm, so that S 0 = ∅ andS = S k . Let O be an optimal solution. We set v(∅) = 0. Note that Lemma 2.15 implies thatv(S t ) ≥ 1 k v(O) + ( 1 − 1 k)v(S t−1 ). By applying this inequality repeatedly, we havev(S) = v(S k )≥ 1 k v(O) + (1 − 1 )v(S k−1 )k≥ 1 (k v(O) + 1 − 1 k(≥v(O) 1 +k) ( 1k v(O) + (1 − 1 k) )v(S k−2 )(1 − 1 ) (+ 1 − 1 ) 2 (+ · · · + 1 − 1 ) ) k−1k k k) k= v(O) · 1 − ( 1 − 1 kk 1 − ( 1 − 1 )k( (= v(O) 1 − 1 − 1 ) ) kk(≥ v(O) 1 − 1 ),ewhere in the final inequality we use the fact that 1 − x ≤ e −x , setting x = 1/k.To prove Lemma 2.15, we first prove the following.Lemma 2.17: For the objective function v, for any X ⊆ Y and any l /∈ Y ,v(Y ∪ {l}) − v(Y ) ≤ v(X ∪ {l}) − v(X).Pro<strong>of</strong>. Consider any payee j ∈ P . Either j is paid from the same bank account in both X ∪ {l}and X, or it is paid by l from X ∪ {l} and some other bank in X. Consequently,v(X ∪ {l}) − v(X) = ∑ ()max v ij − max v ij = ∑ { ()}max 0, v lj − max v ij . (2.6)i∈X∪{l} i∈X i∈Xj∈Pj∈PElectronic web edition. Copyright 2011 by David P. Williamson and David B. Shmoys.To be published by Cambridge University Press

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!