Homework 1 for Instructions and Policy - Approximation Algorithms | CS 598, Assignments of Computer Science

Material Type: Assignment; Class: Human-in-the-loop Data Mgnt; Subject: Computer Science; University: University of Illinois - Urbana-Champaign; Term: Spring 2009;

Typology: Assignments

Pre 2010

Uploaded on 03/16/2009

koofers-user-mbq
koofers-user-mbq 🇺🇸

10 documents

1 / 2

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Spring 2009, CS 598CSC: Approximation Algorithms
Homework 1
Due: 02/18/2009 in class
Instructions and Policy: You are not allowed to consult any material outside of the textbook and
class notes in solving these problems. Each student should write up their own solutions indepen-
dently. You need to indicate the names of the people you discussed a problem with; ideally you
should discuss with no more than two other people.
Please write clearly and concisely - clarity and brevity will be rewarded. Refer to known facts as
necessary. Your job is to convince us that you know the solution, as quickly as possible.
Problem 1 Let G= (V , A)be a directed graph with arc weights c:A R+. Define the density
of a directed cycle Cas PaCc(a)/|V(C)|where V(C)is set of vertices in C.
1. A cycle with the minimum density is called a minimum mean cycle and such a cycle can be
computed in polynomial time. How?
Hint 1: Given density λ, give a polynomial-time algorithm to test if Gcontains a cycle of
density < λ. Now use binary search.
Hint 2: There is a polynomial time algorithm to detect if a graph has a negative cycle (a
cycle with sum of arc lengths negative).
2. Consider the following algorithm for ATSP. Given G(with csatisfying asymmetric triangle
inequality), compute a minimum mean cycle C. Pick an arbitrary vertex vfrom Cand
recurse on the graph G0=G[VC{v}]. A solution to the problem on Gcan be computed
by patching Cwith a tour in the graph G0. Prove that the approximation ratio for this heuristic
is at most 2Hnwhere Hn= 1 + 1/2 + . . . + 1/n is the nth harmonic number.
Problem 2 Consider the k-dimensional knapsack problem. We are given nnon-negative k-dimensional
vectors ¯v1,¯v2,...,¯vn. Each vector has a non-negative weight, wifor ¯vi. We are also given a k-
dimensional knapsack ¯
Vand the goal is to find a maximum weight subset of vectors that pack in
to V. A subset of vectors pack into ¯
Vif their vector addition is less than ¯
V(co-ordinate wise).
Prove that there is a pseudo-polynomial time algorithm for this problem when kis a fixed con-
stant independent of n. What is the running time of your algorithm? Prove that even for k= 2
and unit weights the problem does not admit an FPTAS. (Hint: use a reduction from the Partition
problem. For an item aiconsider a vector (ai, A ai)for some large enough A.) Extra credit:
Obtain a PTAS for this problem when kis a fixed constant independent of n(might need to use LP
techniques).
Problem 3 Consider a budgeted version of the maximum coverage problem. We are given msets
S1, S2, . . . , Sm, each a subset of a set U. Each set Sihas a non-negative cost ciand we are also
1
pf2

Partial preview of the text

Download Homework 1 for Instructions and Policy - Approximation Algorithms | CS 598 and more Assignments Computer Science in PDF only on Docsity!

Spring 2009, CS 598CSC: Approximation Algorithms Homework 1 Due: 02/18/2009 in class

Instructions and Policy: You are not allowed to consult any material outside of the textbook and class notes in solving these problems. Each student should write up their own solutions indepen- dently. You need to indicate the names of the people you discussed a problem with; ideally you should discuss with no more than two other people.

Please write clearly and concisely - clarity and brevity will be rewarded. Refer to known facts as necessary. Your job is to convince us that you know the solution, as quickly as possible.

Problem 1 Let G = (V, A) be a directed graph with arc weights c : A → R+. Define the density of a directed cycle C as

a∈C c(a)/|V^ (C)|^ where^ V^ (C)^ is set of vertices in^ C.

  1. A cycle with the minimum density is called a minimum mean cycle and such a cycle can be computed in polynomial time. How? Hint 1: Given density λ, give a polynomial-time algorithm to test if G contains a cycle of density < λ. Now use binary search. Hint 2: There is a polynomial time algorithm to detect if a graph has a negative cycle (a cycle with sum of arc lengths negative).
  2. Consider the following algorithm for ATSP. Given G (with c satisfying asymmetric triangle inequality), compute a minimum mean cycle C. Pick an arbitrary vertex v from C and recurse on the graph G′^ = G[V − C ∪ {v}]. A solution to the problem on G can be computed by patching C with a tour in the graph G′. Prove that the approximation ratio for this heuristic is at most 2 Hn where Hn = 1 + 1/2 +... + 1/n is the nth harmonic number.

Problem 2 Consider the k-dimensional knapsack problem. We are given n non-negative k-dimensional vectors v¯ 1 , ¯v 2 ,... , v¯n. Each vector has a non-negative weight, wi for v¯i. We are also given a k- dimensional knapsack V¯ and the goal is to find a maximum weight subset of vectors that pack in to V. A subset of vectors pack into V¯ if their vector addition is less than V¯ (co-ordinate wise). Prove that there is a pseudo-polynomial time algorithm for this problem when k is a fixed con- stant independent of n. What is the running time of your algorithm? Prove that even for k = 2 and unit weights the problem does not admit an FPTAS. (Hint: use a reduction from the Partition problem. For an item ai consider a vector (ai, A − ai) for some large enough A.) Extra credit: Obtain a PTAS for this problem when k is a fixed constant independent of n (might need to use LP techniques).

Problem 3 Consider a budgeted version of the maximum coverage problem. We are given m sets S 1 , S 2 ,... , Sm, each a subset of a set U. Each set Si has a non-negative cost ci and we are also

given a budget B. The goal is to pick sets of total cost at most B so as to maximize the number of elements covered. Show that if ci ≤ B for 1 ≤ i ≤ m then the Greedy algorithm yields a 1 − 1 /e −  approximation (for sufficiently small ). For any fixed  > 0 obtain a 1 − 1 /e −  approximation. (Hint: consider the PTAS for knapsack from the lectures. You might find the inequality 1 − x ≤ e−x^ useful.) Extra credit: Obtain a 1 − 1 /e approximation for this problem.

Problem 4 In the submodular set cover problem, we are given a universe U of elements, and a monotone submodular function f : 2U^ → R+. The goal is to pick a smallest U ′^ ⊆ U such that f (U ′) = f (U). In the submodular maximum coverage problem, we are also given an integer k, and the goal is to pick a set U ′^ ⊆ U of size at most k to maximize f (U ′).

  1. Prove that the greedy algorithm gives a 1 − 1 /e approximation for submodular maximum coverage.
  2. Consider a k × matrix M where each entry Mi,j is a subset of a universe U of size n ≥. We say a row Mi of M is covered by U ′^ ⊆ U if there are distinct elements e 1 , e 2 ,... e in U ′^ such that ej ∈ Mi,j for each 1 ≤ j ≤ `. Prove that the problem of finding a smallest U ′^ ⊆ U such that each row is covered by U ′^ is a special case of the submodular set cover problem. Describe how to evaluate the submodular function f ; that is, give an algorithm to compute f (U ′) for any U ′^ ⊆ U.

Problem 5 For Metric-TSP consider the nearest neighbour heuristic discussed in class. Prove that the heuristic yields an O(log n) approximation. (Hint: use the basic idea in the online greedy algorithm for the Steiner tree problem). Extra Credit: Give an example to show that there is no constant c such that the heuristic is a c-approximation algorithm.