This preview shows pages 1–3. Sign up to view the full content.
This preview has intentionally blurred sections. Sign up to view the full version.
View Full Document
Unformatted text preview: Massachusetts Institute of Technology Handout 16 6.854J/18.415J: Advanced Algorithms Fri, October 30, 2009 David Karger Problem Set 7 Solutions Fri, October 30, 2009 Problem 1. (a) The algorithm repeats the following step k times, or until S = : Arbitrarily pick a point p S , and let C = { p  d ( p,p ) d } . Set aside C as a cluster, and set S = S \ C . We claim that this algorithm is a 2approximation. By the triangle inequality, the diameter of every cluster is at most 2 d . Furthermore, we argue that at the end of the algorithm, every point is in exactly one cluster. It is clear that each point is in at most one cluster. Now, assume by way of contradiction that there is some point q that was not assigned a cluster. Then it must be at distance greater than d from every point p around which we chose a cluster. However, each of these points is at distance greater than d , which implies any k clustering will have diameter greater than d , contradicting the optimality of d . (b) Let the algorithm above be A , and the proposed algorithm B . In each iteration, algorithm B selects a point as a center. Note that algorithm A does not specify which point to choose in each iteration; it picks an arbitrary point among the points not already clustered. We show that in each iteration, algorithm A can either choose the exact point algorithm B chooses as a center, or if it cannot, algorithm B is already a 2 approximation. If algorithm A chooses the exact same set of points as algorithm B , and algorithm A is a 2approximation, it follows that algorithm B is a 2approximation. The clustering in algorithm A shows that each point is at distance at most d from each point chosen; as a result, assigning each point to its closest center will result in a 2approximation. We now prove the necessary lemma. Lemma 0.1 Let p be the center algorithm B chooses in a given iteration i . Ei ther algorithm A can choose p as a center of a cluster in iteration i , or algorithm B has already achieved a 2approximation. Proof. Consider a given iteration. If algorithm A cannot choose p , this implies that p is at distance at most d from each of the centers of the clusters already created. But if algorithm B chooses p , it implies that every point is at distance at most d from the centers already chosen, which implies that assigning each point to its closest cluster gives a 2approximation. 2 Handout 16: Problem Set 7 Solutions Problem 2. (a) Consider any feasible subset S of jobs, i.e. a set of jobs that together can be completed by their due dates. Then we can schedule this set of jobs in terms of increasing deadline. We argue this by a swapping argument: consider a schedule of S in which each job is completed before its due date....
View
Full
Document
This note was uploaded on 11/24/2009 for the course CS 6.854/18.4 taught by Professor Davidkarger during the Fall '09 term at MIT.
 Fall '09
 DavidKarger
 Algorithms

Click to edit the document details