Some practice problems. Answers will be provided. 1 Give a 1/2-approximation algorithm for the following problem: Acyclic subgraph: Instance: Directed graph G = (V, A) Solution: A0 ⊆ A such that G0 = (V, A0 ) does not have a directed cycle. Cost: Number of arcs |A0 | Goal : Maximize |A0 |. Hint: Arbitrarily number the vertices and pick the bigger of the two sets: the forward-going arcs (from low to high index) and the backward-going arcs. 2 Give a 2-approximation algorithm for the problem of finding a minimum maximal matching in an undirected graph. Figure 1: (a) The maximum matching, (b) A maximal matching, and (c) the minimum maximal matching. 3 A tournament G = (V, A) is a complete, directed graph. That means, for every pair of vertices i, j, either arc (i, j) ∈ A or arc (j, i) ∈ A and not both. A feedback vertex set S for G is a subset of the vertices such that removing S and its adjacent arcs leaves an acyclic graph (a graph without directed cycles). Feedback vertex set: Instance: Tournament G = (V, A) Solution: S ⊂ V such that the graph induced by V − S is acyclic Cost: |S| Goal : Minimize |S| 1 Give a 3-approximation for finding a minimum feedback vertex set. Hint: First show that if the remaining graph has no directed cycles of length 3, then it has no directed cycles at all. Then, formulate the problem as a set cover problem and use the fact that there is an f -approximation for set cover. 4 We showed that the LPT algorithm has an approximation ratio of 4/3. That means, for any instance, the LPT algorithm finds a schedule for which the length is at most 4/3 times the optimal length. In fact, by a refined analysis one can show that the ratio is even 1 4 − . 3 3m Give an example which shows that the analysis is tight. That means, give an 1 example for which the length of the LPT-schedule is exactly 34 − 3m times the optimal length. (If you can’t find an example yourself, you can certainly find one on the internet.) 5 The book (Section 2.1) mentions that the scheduling problem of section 2.1 (1|rj |Lmax ) is an NP-hard problem but it gives no proof. Show that the problem is NP-hard by reducing the 3-Partition problem to this scheduling problem. The 3-partion problem is known to be NP-hard (NP-complete). 3-Partition P3n Instance: Integers, a1 , a2 , . . . , a3n and an integer A such that i=1 ai = nA. Question: Can we partition 1, 2, . . . , 3n into n sets S1 , S2 , . . . , Sn such that P i∈Sj ai = A for all j = 1, .., n? Example: P If the instance is a1 = 2, a2 = 3, . . . , a9 = 10 then the answer is yes. Note, i ai = 54 = 3 · 18 and 2 + 7 + 9 = 3 + 5 + 10 = 4 + 6 + 8 = 18. The right way to look at such a reduction is as follows. Assume you do have some algorithm that can solve the scheduling problem in polynomial time. How can you use this (as a black box) to solve some instance of the 3-Partition problem? Hint: Given an instance of the 3-Partition problem construct an instance of the scheduling problem and show that the optimal value L∗max = 0 if and only if a 3-Partition exists. 2
© Copyright 2025 Paperzz