Set Cover and Its Application to Shortest Superstring

Total Page:16

File Type:pdf, Size:1020Kb

Set Cover and Its Application to Shortest Superstring Chapter Set cover and its application to shortest sup erstring Understanding the area of approximation algorithms involves identifying cornerstone problems problems whose study leads to discovering techniques that b ecome general principles in the area and problems that are general enough that other problems can b e reduced to them Problems such as matching maximum ow shortest path and minimum spanning tree are cornerstone problems in the design of exact algorithms In approximation algorithms the picture is less clear at present Even so problems such as minimum set cover and minimum Steiner tree can already b e said to o ccupy this p osition In this chapter we will rst analyse a natural greedy algorithm for the minimum set cover problem We will then show an unexp ected use of set cover to solve the minimum sup erstring problem An algorithm with a much b etter approximation guarantee will b e presented in Chapter for the latter problem the p oint here is to illustrate the wide applicabili ty of the set cover problem Minimum set cover Problem Minimum set cover Given a universe U of n elements and a collection of subsets of U S S with nonnegative costs sp ecied the minimum set cover problem asks for 1 k a minimum cost collection of sets whose union is U Perhaps the rst algorithm that comes to mind for this problem is one based on the greedy strategy of iteratively picking the most costeective set and removing the covered elements until all elements are covered Let C b e the set of elements already covered at the b eginning of an iteration During this iteration dene the costeectiveness of a set S to b e the average cost at cost(S ) Dene the price of an element to b e the average cost at which it covers new elements ie jS C j which it is covered Equivalently when a set S is picked we can think of its cost b eing distributed equally among the new elements covered to set their prices Set cover and its application to shortest superstring Algorithm Greedy set cover algorithm C while C U do Find the most costeective set in the current iteration say S cost(S ) ie the costeectiveness of S Let jS C j Pick S and for each e S C price e Output the picked sets Numb er the elements of U in the order in which they were covered by the algorithm resolving ties arbitrarily Let e e b e this numb ering 1 n OPT Lemma For each k f ng price e k nk +1 Pro of In any iteration the left over sets of the optimal solution can cover the remaining elements at a cost of at most OPT Therefore there must b e a set having costeectiveness at most OPT In the iteration in which element e was covered C contained at least n k elements k jC j Since e was covered by the most costeective set in this iteration it follows that k OPT OPT price e k n k jC j 2 From Lemma we immediately obtain Theorem The greedy algorithm is an H factor approximation algorithm for the minimum set n 1 1 cover problem where H n 2 n Pro of Since the cost of each set picked is distributed among the new elements covered the P n total cost of the set cover picked is equal to price e By Lemma this is at most k k =1 1 1 OPT 2 2 n Example Following is a tight example ... 1+ε 1/n 1/(n-1) 1 The greedy algorithm outputs the cover consisting of the n singleton sets since in each iteration some singleton is the most costeective set So the algorithm outputs a cover of cost H n n n On the other hand the optimal cover has a cost of 2 Surprisingly enough the obvious algorithm given ab ove is essentially the b est one can hop e for for the minimum set cover problem it is known that an approximation guarantee b etter than ln n is not p ossible assuming P NP In Chapter we p ointed out that nding a go o d lower b ound on OPT is a basic starting p oint in the design of an approximation algorithm for a minimization problem At this p oint the reader may b e wondering whether there is any truth to this claim We will show in Chapter that the correct way to view the greedy set cover algorithm is in the setting of LPduality theory this will not only provide the lower b ound on which this algorithm is based but will also help obtain algorithms for several generalizations of this problem Exercise The maximum coverage problem is the following Given a universe U of n elements with nonnegative weights sp ecied a collection of subsets of U S S and an integer k pick k 1 l sets so as to maximize the weight of elements covered Show that the obvious algorithm of greedily picking the b est set in each iteration until k sets are picked achieves an approximation factor of k k e Solving shortest sup erstring via set cover Let us motivate the shortest sup erstring problem The human DNA can b e viewed as a very long string over a four letter alphab et Scientists are attempting to decipher this string Since it is very long several overlapping short segments of this string are rst sequenced Of course the lo cations of these segments on the original DNA are not known It is hyp othesised that the shortest string which contains these segments as substrings is a go o d approximation to the original DNA string Problem Shortest sup erstring Given a nite alphab et and a set of n strings S fs s g nd a shortest string s that contains each s as a substring Without loss 1 n i of generality we may assume that no string s is a substring of another string s j i i j This problem is NPhard Perhaps the rst algorithm that comes to mind for nding a short sup erstring is the following greedy algorithm Dene the overlap of two strings s t as the maximum length of a sux of s that is also a prex of t The algorithm maintains a set of strings T initially T S At each step the algorithm selects from T two strings that have maximum overlap and replaces them with the string obtained by overlapping them as much as p ossible After n steps T will contain a single string Clearly this string contains each s as a substring i This algorithm is conjectured to have an approximation factor of To see that the approximation k k factor of this algorithm is no b etter than consider an input consisting of strings ab b c and k +1 b If the rst two strings are selected in the rst iteration the greedy algorithm pro duces the k k +1 k +1 string ab cb This is almost twice as long as the shortest sup erstring ab c We will obtain a H factor approximation algorithm by a reduction to the minimum set cover n problem The set cover instance denoted by S is constructed as follows For s s S and k i j if the last k symb ols of s are the same as the rst k symb ols of s let b e the string obtained i j ij k by overlapping these k p ositions of s and s Let I contain the strings for all valid choices of i j ij k i j k The set cover instance S consists of S as the universal set The sp ecied subsets of S are for each string S I dene set fsj s S s is a substring of g The cost of this set is.
Recommended publications
  • Theoretical Computer Science Efficient Approximation of Min Set
    View metadata, citation and similar papers at core.ac.uk brought to you by CORE provided by Elsevier - Publisher Connector Theoretical Computer Science 410 (2009) 2184–2195 Contents lists available at ScienceDirect Theoretical Computer Science journal homepage: www.elsevier.com/locate/tcs Efficient approximation of min set cover by moderately exponential algorithms N. Bourgeois, B. Escoffier ∗, V.Th. Paschos LAMSADE, CNRS FRE 3234 and Université Paris-Dauphine, France article info a b s t r a c t Article history: We study the approximation of min set cover combining ideas and results from polynomial Received 13 October 2008 approximation and from exact computation (with non-trivial worst case complexity upper Received in revised form 30 January 2009 bounds) for NP-hard problems. We design approximation algorithms for min set cover Accepted 1 February 2009 achieving ratios that cannot be achieved in polynomial time (unless problems in NP could Communicated by G. Ausiello be solved by slightly super-polynomial algorithms) with worst-case complexity much lower (though super-polynomial) than those of an exact computation. Keywords: 2009 Elsevier B.V. All rights reserved. Exponential algorithms ' Approximation algorithms min set cover 1. Introduction C Given a ground set C of cardinality n and a system S D fS1;:::; Smg ⊂ 2 , min set cover consists of determining a 0 minimum size subsystem S such that [S2S0 S D C. min set cover is a famous NP-hard problem dealt with in the seminal paper [22]. For the last ten years, the issue of exact resolution of NP-hard problems by algorithms having provably non-trivial upper time-complexity bounds has been very actively studied (see, for instance, the surveys [16,26,30]).
    [Show full text]
  • Set Cover Algorithms for Very Large Datasets
    Set Cover Algorithms For Very Large Datasets ∗ Graham Cormode Howard Karloff Anthony Wirth AT&T Labs–Research AT&T Labs–Research Department of Computer [email protected] [email protected] Science and Software Engineering The University of Melbourne [email protected] ABSTRACT 1. INTRODUCTION The problem of Set Cover—to find the smallest subcol- The problem of Set Cover arises in a surprisingly broad lection of sets that covers some universe—is at the heart number of places. Although presented as a somewhat ab- of many data and analysis tasks. It arises in a wide range stract problem, it captures many different scenarios that of settings, including operations research, machine learning, arise in the context of data management and knowledge planning, data quality and data mining. Although finding an mining. The basic problem is that we are given a collec- optimal solution is NP-hard, the greedy algorithm is widely tion of sets, each of which is drawn from a common universe used, and typically finds solutions that are close to optimal. of possible items. The goal is to find a subcollection of sets However, a direct implementation of the greedy approach, so that their union includes every item from the universe. which picks the set with the largest number of uncovered Places where Set Cover occurs include: items at each step, does not behave well when the in- • In operations research, the problem of choosing where put is very large and disk resident. The greedy algorithm to locate a number of facilities so that all sites are must make many random accesses to disk, which are unpre- within a certain distance of the closest facility can be dictable and costly in comparison to linear scans.
    [Show full text]
  • Approximation Algorithms
    Lecture 21 Approximation Algorithms 21.1 Overview Suppose we are given an NP-complete problem to solve. Even though (assuming P = NP) we 6 can’t hope for a polynomial-time algorithm that always gets the best solution, can we develop polynomial-time algorithms that always produce a “pretty good” solution? In this lecture we consider such approximation algorithms, for several important problems. Specific topics in this lecture include: 2-approximation for vertex cover via greedy matchings. • 2-approximation for vertex cover via LP rounding. • Greedy O(log n) approximation for set-cover. • Approximation algorithms for MAX-SAT. • 21.2 Introduction Suppose we are given a problem for which (perhaps because it is NP-complete) we can’t hope for a fast algorithm that always gets the best solution. Can we hope for a fast algorithm that guarantees to get at least a “pretty good” solution? E.g., can we guarantee to find a solution that’s within 10% of optimal? If not that, then how about within a factor of 2 of optimal? Or, anything non-trivial? As seen in the last two lectures, the class of NP-complete problems are all equivalent in the sense that a polynomial-time algorithm to solve any one of them would imply a polynomial-time algorithm to solve all of them (and, moreover, to solve any problem in NP). However, the difficulty of getting a good approximation to these problems varies quite a bit. In this lecture we will examine several important NP-complete problems and look at to what extent we can guarantee to get approximately optimal solutions, and by what algorithms.
    [Show full text]
  • What Is the Set Cover Problem
    18.434 Seminar in Theoretical Computer Science 1 of 5 Tamara Stern 2.9.06 Set Cover Problem (Chapter 2.1, 12) What is the set cover problem? Idea: “You must select a minimum number [of any size set] of these sets so that the sets you have picked contain all the elements that are contained in any of the sets in the input (wikipedia).” Additionally, you want to minimize the cost of the sets. Input: Ground elements, or Universe U= { u1, u 2 ,..., un } Subsets SSSU1, 2 ,..., k ⊆ Costs c1, c 2 ,..., ck Goal: Find a set I ⊆ {1,2,...,m} that minimizes ∑ci , such that U SUi = . i∈ I i∈ I (note: in the un-weighted Set Cover Problem, c j = 1 for all j) Why is it useful? It was one of Karp’s NP-complete problems, shown to be so in 1972. Other applications: edge covering, vertex cover Interesting example: IBM finds computer viruses (wikipedia) elements- 5000 known viruses sets- 9000 substrings of 20 or more consecutive bytes from viruses, not found in ‘good’ code A set cover of 180 was found. It suffices to search for these 180 substrings to verify the existence of known computer viruses. Another example: Consider General Motors needs to buy a certain amount of varied supplies and there are suppliers that offer various deals for different combinations of materials (Supplier A: 2 tons of steel + 500 tiles for $x; Supplier B: 1 ton of steel + 2000 tiles for $y; etc.). You could use set covering to find the best way to get all the materials while minimizing cost.
    [Show full text]
  • Жиз © © 9D%')( X` Yb Acedtac Dd Fgaf H Acedd F Gaf [3, 13]. X
    Covering Problems with Hard Capacities Julia Chuzhoy Joseph (Seffi) Naor Computer Science Department Technion, Haifa 32000, Israel E-mail: cjulia,naor ¡ @cs.technion.ac.il. - Abstract elements of . A cover is a multi-set of input sets that * + can cover all the elements, while - contains at most '() We consider the classical vertex cover and set cover copies of each ./ , and each copy covers at most problems with the addition of hard capacity constraints. elements. We assume that the capacity constraints are hard, This means that a set (vertex) can only cover a limited i.e., the number of copies and the capacity of a set cannot number of its elements (adjacent edges) and the number of be exceeded. The capacitated set cover problem is a natu- available copies of each set (vertex) is bounded. This is a ral generalization of a basic and well-studied problem that natural generalization of the classical problems that also captures practical scenarios where resource limitations are captures resource limitations in practical scenarios. present. We obtain the following results. For the unweighted A special case of the capacitated set cover problem that vertex cover problem with hard capacities we give a ¢ - we consider is the capacitated vertex cover problem, de- © £ approximation algorithm which is based on randomized fined as follows. An undirected graph 01¤1+2 is given !36 rounding with alterations. We prove that the weighted ver- and each vertex 3452 is associated with a cost , a * !36 sion is at least as hard as the set cover problem. This is capacity ',!36 , and a multiplicity .
    [Show full text]
  • Fractional Set Cover in the Streaming Model∗
    Fractional Set Cover in the Streaming Model∗ Piotr Indyk1, Sepideh Mahabadi2, Ronitt Rubinfeld3, Jonathan Ullman4, Ali Vakilian5, and Anak Yodpinyanee6 1 CSAIL, MIT, Cambridge, MA, USA [email protected] 2 CSAIL, MIT, Cambridge, MA, USA [email protected] 3 CSAIL, MIT and TAU, Cambridge, MA, USA [email protected] 4 CCIS, Northeastern University, Boston, MA, USA [email protected] 5 CSAIL, MIT, Cambridge, MA, USA [email protected] 6 CSAIL, MIT, Cambridge, MA, USA [email protected] Abstract We study the Fractional Set Cover problem in the streaming model. That is, we consider the relaxation of the set cover problem over a universe of n elements and a collection of m sets, where each set can be picked fractionally, with a value in [0, 1]. We present a randomized (1 + ε)- approximation algorithm that makes p passes over the data, and uses Oe(mnO(1/pε) + n) memory space. The algorithm works in both the set arrival and the edge arrival models. To the best of our knowledge, this is the first streaming result for the fractional set cover problem. We obtain our results by employing the multiplicative weights update framework in the streaming settings. 1998 ACM Subject Classification F.2.2 Nonnumerical Algorithms and Problems Keywords and phrases Streaming Algorithms, Fractional Set Cover, LP relaxation, Multiplica- tive Weight Update Digital Object Identifier 10.4230/LIPIcs.APPROX/RANDOM.2017.12 1 Introduction Set Cover is one of the classical NP-hard problems in combinatorial optimization. In this problem the input consists of a set (universe) of n elements U = {e1, ··· , en} and a collection of m sets F = {S1, ··· ,Sm}.
    [Show full text]
  • Lecture 14: Label Cover Hardness: Application to Set Cover
    CSE 533: The PCP Theorem and Hardness of Approximation (Autumn 2005) Lecture 14: Label Cover Hardness: Application to Set Cover Lecturer: Venkat Guruswami Scribe: Prasad Raghavendra In the previous lecture, we have seen the complete proof of NP hardness of GapLabelCover Prob- lem. From this point onwards, we shall use the results derived so far to obtain hardness of approxi- mation results for some important problems. Towards this, we start with the problem of Set-Cover in this lecture. However, since the hardness of GapLabelCover will be used in showing so many inapproximability results, we take a closer look at the various parameters of the problem. 1 Label Cover Problem Definition 1.1. Label Cover Instance: A label cover instance consists of (G = (V1,V2,E), Σ, Π) where • G is a bipartite graph between vertex sets V1 and V2 and an edge set E. • G is left and right regular. Denote by D1 and D2 the degrees of vertices in V1 and V2 respectively. • Each vertex in V1 ∪ V2 is to be assigned a label from the alphabet Σ. • For each edge e, there is a constraint Πe which is a function from Σ on to itself. Thus the set of all constraints in G are Π = {Πe :Σ → Σ|e ∈ E} The property that each constraint is a function from Σ on to itself, is also referred to as the Projection Property. A labelling of the graph, is a mapping σ : V → Σ which assigns a label for each vertex of G.A labelling σ is said to satisfy an edge e = (u, v) if and only if Πe(σ(u)) = σ(v) Let us define the following ’Promise’ of the Label-Cover Problem.
    [Show full text]
  • Parameterized Algorithms for Partial Cover Problems
    Parameterized Algorithms for Partial Cover Problems Omid Amini∗ Fedor V. Fomin† Saket Saurabh † Abstract Covering problems are fundamental classical problems in optimization, computer science and complexity theory. Typically an input to these problems is a family of sets over a finite universe and the goal is to cover the elements of the universe with as few sets of the family as possible. The variations of covering problems include well known problems like Set Cover, Vertex Cover, Dominating Set and Facility Location to name a few. Recently there has been a lot of study on partial covering problems, a natural generalization of covering problems. Here, the goal is not to cover all the elements but to cover the specified number of elements with the minimum number of sets. In this paper we study partial covering problems in graphs in the realm of param- eterized complexity. Classical (non-partial) version of all these problems have been intensively studied in planar graphs and in graphs excluding a fixed graph H as a minor. However, the techniques developed for parameterized version of non-partial covering problems cannot be applied directly to their partial counterparts. The ap- proach we use, to show that various partial covering problems are fixed parameter tractable on planar graphs, graphs of bounded local treewidth and graph excluding some graph as a minor, is quite different from previously known techniques. The main idea behind our approach is the concept of implicit branching. We find implicit branching technique to be interesting on its own and believe that it can be used for some other problems.
    [Show full text]
  • Advanced Algorithms Computer Science, ETH Z¨Urich
    Advanced Algorithms Computer Science, ETH Z¨urich Mohsen Ghaffari These notes will be updated regularly. Please read critically; there are typos throughout, but there might also be mistakes. Feedback and comments would be greatly appreciated and should be emailed to ghaff[email protected]. Last update: March 10, 2020 Contents Notation and useful inequalities I Approximation algorithms1 1 Greedy algorithms3 1.1 Minimum set cover........................3 2 Approximation schemes 11 2.1 Knapsack............................. 12 2.2 Bin packing............................ 14 2.3 Minimum makespan scheduling................. 20 3 Randomized approximation schemes 27 3.1 DNF counting........................... 27 3.2 Counting graph colorings..................... 32 4 Rounding ILPs 37 4.1 Minimum set cover........................ 38 4.2 Minimizing congestion in multi-commodity routing...... 43 5 Probabilistic tree embedding 51 5.1 A tight probabilistic tree embedding construction....... 52 5.2 Application: Buy-at-bulk network design............ 60 5.3 Extra: Ball carving with O(log n) stretch factor........ 61 II Streaming and sketching algorithms 65 6 Warm up 67 6.1 Typical tricks........................... 67 6.2 Majority element......................... 68 7 Estimating the moments of a stream 71 7.1 Estimating the first moment of a stream............ 71 7.2 Estimating the zeroth moment of a stream........... 73 7.3 Estimating the kth moment of a stream............. 80 8 Graph sketching 89 8.1 Warm up: Finding the single cut................ 90 8.2 Warm up 2: Finding one out of k > 1 cut edges........ 92 8.3 Maximal forest with O(n log4 n) memory............ 93 III Graph sparsification 97 9 Preserving distances 99 9.1 α-multiplicative spanners....................
    [Show full text]
  • Lecture 3: Approximation Algorithms 1 1 Set Cover, Vertex Cover, And
    Advanced Algorithms 02/10, 2017 Lecture 3: Approximation Algorithms 1 Lecturer: Mohsen Ghaffari Scribe: Simon Sch¨olly 1 Set Cover, Vertex Cover, and Hypergraph Matching 1.1 Set Cover Problem (Set Cover) Given a universe U of elements f1; : : : ; ng, and collection of subsets S = fS1;:::;Smg of subsets of U, together with cost a cost function c(Si) > 0, find a minimum cost subset of S, that covers all elements in U. The problem is known to be NP-Complete, therefore we are interested in algorithms that give us a good approximation for the optimum. Today we will look at greedy algorithms. Greedy Set Cover Algorithm [Chv79] Let OPT be the optimal cost for the set cover problem. We will develop a simple greedy algorithm and show that its output will differ by a certain factor from OPT. The idea is simply to distribute the cost of picking a set Si over all elements that are newly covered. Then we always pick the set with the lowest price-per-item, until we have covered all elements. In pseudo-code have have C ; Result ; while C 6= U c(S) S arg minS2S jSnCj c(S) 8e 2 (S n C) : price-per-item(e) jSnCj C C [ S Result Result [ fSg end return Result Theorem 1. The algorithm gives us a ln n + O(1) approximation for set cover. Proof. It is easy to see, that all n elements are covered by the output of the algorithm. Let e1; : : : ; en be the elements in the order they are covered by the algorithm.
    [Show full text]
  • 1 Approximation Algorithms: Overview
    15-850: Advanced Algorithms CMU, Fall 2018 Lecture #23: Approximation Algorithms October 23, 2018 Lecturer: Anupam Gupta Scribe: Hang Liao and Zhen Zhou 1 Approximation Algorithms: Overview In this lecture, we'll go through approximation algorithm for two NP-hard problems: Set Cover and Bin-packing. Before going into the algorithm, let's make a few definitions and notations to help clarify the terminology. Denote c(A(I)) as the general cost of that algorithm A gives for instance I, and denote c(OP T (I)) as the optimal cost for instance I. In the context of this lecture, we are only looking at minimization problems. Therefore, we can define the approximation ratio for minimization problems as: c(ALG(I)) r = max I c(OP T (I)) For the rest of the lecture notes, we'll use informal notations like ALG = r · OP T to denote that the algorithm ALG has an approximation ratio of r. We'll also say that ALG is an r approximation algorithm. Approximation algorithm has been a long standing topic in theoretical computer science, it is usually used to get solutions that are relatively good compared to optimized solution. As an overview, we can classify the approximation problems by hardness: (For the following, assume OP T is the best algorithm for every instance) • Problems in P: Fully Poly-Time Approximation Scheme (FPTAS): For problems in this category, 8 > 0, there exists an approximation algorithm A, with approximation ratio r = 1 1 + , that runs in time poly(jIj; ). (Note: If an algorithm A has an approximation ratio r = 1 + , then for all instances I, c(A(I)) ≤ (1 + )c(OP T (I)).) • Poly-Time Approximation Scheme (PTAS): This category includes problems such as the Traveling Salesman Problem in Euclidean space.
    [Show full text]
  • On the Approximability of a Geometric Set Cover Problem
    Electronic Colloquium on Computational Complexity, Report No. 19 (2011) On the Approximability of a Geometric Set Cover Problem Valentin E. Brimkov1, Andrew Leach2,JimmyWu2, and Michael Mastroianni2 1 Mathematics Department, SUNY Buffalo State College, Buffalo, NY 14222, USA 2 Mathematics Department, University at Buffalo, Buffalo, NY 1426-2900, USA Abstract. Given a finite set of straight line segments S in R2 and some k ∈ N, is there a subset V of points on segments in S with |V |≤k such that each segment of S contains at least one point in V ? This is a special case of the set covering problem where the family of subsets given can be taken as a set of intersections of the straight line segments in S. Requiring that the given subsets can be interpreted geometrically this way is a major restriction on the input, yet we have shown that the problem is still strongly NP-complete. In light of this result, we studied the performance of two polynomial-time approximation algorithms which return segment coverings. We obtain certain theoretical results, and in particular we show that the performance ratio for each of these algorithms is unbounded, in general. Keyword: guarding set of segments, set cover, vertex cover, approximation algorithm, worst case perfor- mance 1 Introduction Given a finite set of straight line segments, we wish to find a minimum number of points so that every segment contains at least one chosen point. Consider any physical structure that can be modeled by a finite set of straight line segments. Some examples could be a network of streets in a city, tunnels in a mine, corridors in a building or pipes in a factory.
    [Show full text]