# Set covering problem

Authors: Sherry Liang, Khalid Alanazi, Kumail Al Hamoud

The set covering problem is a significant NP-hard problem in combinatorial optimization. In the set covering problem, two sets are given: a set S of elements and a set A of subsets of the set S. Each subset in A is associated with a predetermined cost, and the union of all the subsets covers the set S. This combinatorial problem then concerns finding the optimal number of subsets whose union covers the universal set while minimizing the total cost.1

## Methodology

The mathematical formulation of the set covering problem is define as follows. We define U as the universe of elements such that U = {u1, ….. um} and S = {s1, ….sn} as a collection of subsets such that si C U and their union cover U. Addionally, each set si should cover at least one element of U and has associated cost c that is larger than zero, cj > 0. The objective is to find the minimum cost subcollection of sets X C S that covers all the elements in U.

An integer linear program (ILP) model can be formulated for the set covering problem as follows:

Decision variables

```x    = begin{cases}1 & if  subset  i is selected
```

0 & otherwiseend{cases}

``` i
```

Objective function

Constraints

## Applications

The applications of the set covering problem span a wide range of applications, but its usefulness is evident in industrial and governmental planning. Variations of the set covering problem that are of practical significance include the following.

The optimal covering location problem
This set covering problems is concerned with maximizing the population coverage of some public facility.2 Consider the problem of placing hospitals at different cities around some state.
The cell tower coverage problem
The airline crew scheduling problem