Covering problems explained

In combinatorics and computer science, covering problems are computational problems that ask whether a certain combinatorial structure 'covers' another, or how large the structure has to be to do that. Covering problems are minimization problems and usually integer linear programs, whose dual problems are called packing problems.

The most prominent examples of covering problems are the set cover problem, which is equivalent to the hitting set problem, and its special cases, the vertex cover problem and the edge cover problem.

Covering problems allow the covering primitives to overlap; the process of covering something with non-overlapping primitives is called decomposition.

General linear programming formulation

In the context of linear programming, one can think of any minimization linear program as a covering problem if the coefficients in the constraint matrix, the objective function, and right-hand side are nonnegative.[1] More precisely, consider the following general integer linear program:

minimize
n
\sum
i=1

cixi

subject to
n
\sum
i=1

ajixi\geqbjforj=1,...,m

xi\in\left\{0,1,2,\ldots\right\}fori=1,...,n

.
Such an integer linear program is called a covering problem if

aji,bj,ci\geq0

for all

i=1,...,n

and

j=1,...,m

.

Intuition: Assume having

n

types of object and each object of type

i

has an associated cost of

ci

. The number

xi

indicates how many objects of type

i

we buy. If the constraints

Ax\geqb

are satisfied, it is said that

x

is a covering
(the structures that are covered depend on the combinatorial context). Finally, an optimal solution to the above integer linear program is a covering of minimal cost.

Kinds of covering problems

There are various kinds of covering problems in graph theory, computational geometry and more; see . Other stochastic related versions of the problem can be found.[2]

Covering in Petri nets

For Petri nets, the covering problem is defined as the question if for a given marking, there exists a run of the net, such that some larger (or equal) marking can be reached. Larger means here that all components are at least as large as the ones of the given marking and at least one is properly larger.

Rainbow covering

In some covering problems, the covering should satisfy some additional requirements. In particular, in the rainbow covering problem, each of the original objects has a "color", and it is required that the covering contains exactly one (or at most one) object of each color. Rainbow covering was studied e.g. for covering points by intervals:[3]

The problem is NP-hard (by reduction from linear SAT).

Conflict-free covering

A more general notion is conflict-free covering.[4] In this problem:

Conflict-free set cover is the problem of finding a conflict-free subset of O that is a covering of P. Banik, Panolan, Raman, Sahlot and Saurabh[5] prove the following for the special case in which the conflict-graph has bounded arboricity:

Notes and References

  1. Book: Vazirani, Vijay V. . Vijay Vazirani . Approximation Algorithms . 2001 . Springer-Verlag . 3-540-65367-8 .
  2. Web site: Douek-Pinkovich, Y., Ben-Gal, I., & Raviv, T. (2022). The Stochastic Test Collection Problem: Models, Exact and Heuristic Solution Approaches . European Journal of Operational Research, 299 (2022), 945–959. }
  3. Arkin. Esther M.. Banik. Aritra. Carmi. Paz. Citovsky. Gui. Katz. Matthew J.. Mitchell. Joseph S. B.. Simakov. Marina. 2018-12-11. Selecting and covering colored points. Discrete Applied Mathematics. en. 250. 75–86. 10.1016/j.dam.2018.05.011. 0166-218X. free.
  4. Banik. Aritra. Sahlot. Vibha. Saurabh. Saket. 2020-08-01. Approximation algorithms for geometric conflict free covering problems. Computational Geometry. en. 89. 101591. 10.1016/j.comgeo.2019.101591. 209959954 . 0925-7721.
  5. Banik. Aritra. Panolan. Fahad. Raman. Venkatesh. Sahlot. Vibha. Saurabh. Saket. 2020-01-01. Parameterized Complexity of Geometric Covering Problems Having Conflicts. Algorithmica. en. 82. 1. 1–19. 10.1007/s00453-019-00600-w. 254027914 . 1432-0541.