Set Cover Algorithms for Very Large Datasets
Total Page:16
File Type:pdf, Size:1020Kb
Load more
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]). -
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. -
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. -
Жиз © © 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 . -
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}. -
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. -
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. -
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.................... -
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. -
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. -
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. -
A 2-Approximation Algorithm for the Minimum Weight Edge Dominating
View metadata, citation and similar papers at core.ac.uk brought to you by CORE provided by Elsevier - Publisher Connector Discrete Applied Mathematics 118 (2002) 199–207 A 2-approximation algorithm for the minimum weight edge dominating set problem Toshihiro Fujitoa;∗, Hiroshi Nagamochib aDepartment of Electronics, Nagoya University, Furo, Chikusa, Nagoya 464-8603, Japan bDepartment of Information and Computer Sciences, Toyohashi University of Technology, Hibarigaoka, Tempaku, Toyohashi 441-8580, Japan Received 25 April 2000; revised 2 October 2000; accepted 16 October 2000 Abstract We present a polynomial-time algorithm approximating the minimum weight edge dominating set problem within a factor of 2. It has been known that the problem is NP-hard but, when edge weights are uniform (so that the smaller the better), it can be e4ciently approximated within a factor of 2. When general weights were allowed, however, very little had been known about its approximability, and only very recently was it shown to be approximable within a factor of 2 1 by reducing to the edge cover problem via LP relaxation. In this paper we extend the 10 approach given therein, by studying more carefully polyhedral structures of the problem, and obtain an improved approximation bound as a result. While the problem considered is as hard to approximate as the weighted vertex cover problem is, the best approximation (constant) factor known for vertex cover is 2 even for the unweighted case, and has not been improved in a long time, indicating that improving our result would be quite di4cult. ? 2002 Elsevier Science B.V. All rights reserved.