# Difference between revisions of "Set covering problem"

(Added a conclusions section.) |
Khaledfahat (talk | contribs) |
||

Line 6: | Line 6: | ||

== Methodology == | == Methodology == | ||

− | The mathematical formulation of the set covering problem is define as follows. We define | + | The mathematical formulation of the set covering problem is define as follows. We define U = {u<sub>1</sub>, ….. u<sub>m</sub>} as the universe of elements and S = {s<sub>1</sub>, ….s<sub>n</sub>} as a collection of subsets such that s<sub>i</sub> <math>\in</math>U and the union of s<sub>i</sub> cover U (i.e. <math>\cup</math>s<sub>i</sub> = U ). Addionally, each set s<sub>i</sub> must cover at least one element of U and has associated cost c that is larger than zero (i.e. c<sub>i</sub> > 0). The objective is to find the minimum cost sub-collection of sets X <math>\in</math> S that covers all the elements in the universe U. |

− | |||

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

− | |||

− | |||

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

'''Decision variables''' | '''Decision variables''' | ||

− | <math> | + | <math> y_i = \begin{cases} 1, & \text{if subset }i\text{ is selected} \\ 0, & \text{otherwise } \end{cases}</math> |

− | |||

'''Objective function''' | '''Objective function''' | ||

+ | minimize <math>\sum_{i=1}^n c_i y_i</math> | ||

'''Constraints ''' | '''Constraints ''' | ||

+ | <math> \sum_{i=1}^n a_ij y_i >= 1, \forall j= 1,....,m</math> | ||

+ | |||

+ | <math> y_i \in \{0, 1\}, \forall i = 1,....,n</math> | ||

+ | |||

+ | The objective function <math>\sum_{i=1}^n c_i y_i</math> is defined to minimize the number of subset s<sub>i</sub> that cover all elements in the universe by minimizing its total cost. The first constraint implies that every element j in the universe U must be be covered where a<sub>ij</sub> =1 if j <math>\in</math> s<sub>i</sub> and 0 otherwise. The second constraints | ||

==Example== | ==Example== | ||

− | ==Applications== | + | == 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 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 location problem | ;The optimal location problem | ||

− | : This set covering problems is concerned with maximizing the coverage of some public facility placed at different locations.<span style="font-size: 8pt; position:relative; bottom: 0.3em;">3</span> Consider the problem of placing fire stations to serve the towns of some city.<span style="font-size: 8pt; position:relative; bottom: 0.3em;">4</span> If each fire station can serve its town and all adjacent towns, we can formulate a set covering problem where each subset consists of a set of adjacent towns. The problem is then solved to minimize the required number of fire stations to serve the whole city. | + | :This set covering problems is concerned with maximizing the coverage of some public facility placed at different locations.<span style="font-size: 8pt; position:relative; bottom: 0.3em;">3</span> Consider the problem of placing fire stations to serve the towns of some city.<span style="font-size: 8pt; position:relative; bottom: 0.3em;">4</span> If each fire station can serve its town and all adjacent towns, we can formulate a set covering problem where each subset consists of a set of adjacent towns. The problem is then solved to minimize the required number of fire stations to serve the whole city. |

− | ;The optimal route selection problem | + | ; The optimal route selection problem |

:Consider the problem of selecting the optimal bus routes to place pothole detectors. Due to scarcity of the physical sensors, the problem does not allow for placing a detector at every road. The task of finding the maximum coverage using a limited number of detectors could be formulated as a set covering problem.<span style="font-size: 8pt; position:relative; bottom: 0.3em;">5</span> Specifically, giving a collection of routes '''''U''','' where each route itself is divided into segments. The segments of two routes can overlap. The goal is then to select the routes that maximize number of covered segments. | :Consider the problem of selecting the optimal bus routes to place pothole detectors. Due to scarcity of the physical sensors, the problem does not allow for placing a detector at every road. The task of finding the maximum coverage using a limited number of detectors could be formulated as a set covering problem.<span style="font-size: 8pt; position:relative; bottom: 0.3em;">5</span> Specifically, giving a collection of routes '''''U''','' where each route itself is divided into segments. The segments of two routes can overlap. The goal is then to select the routes that maximize number of covered segments. | ||

;The airline crew scheduling problem | ;The airline crew scheduling problem | ||

− | :An important application of large-scale set covering is the airline crew scheduling problem, which pertains to assigning airline staff to work shifts.<sup>2,6</sup> Thinking of the collection of flights as a universal set to be covered, we can formulate a set covering problem to search for the optimal assignment of employees to flights. | + | :An important application of large-scale set covering is the airline crew scheduling problem, which pertains to assigning airline staff to work shifts.<sup>2,6</sup> Thinking of the collection of flights as a universal set to be covered, we can formulate a set covering problem to search for the optimal assignment of employees to flights. |

: | : | ||

− | ==Conclusion== | + | ==Conclusion == |

The set covering problem, which aims to find the least number of subsets that cover some universal set, is a widely known NP-hard combinatorial problem. Due to its applicability to route planning and airline crew scheduling, several methods have been proposed to solve it. Its straightforward formulation allows for the use of off-the-shelf optimizers to solve it. Moreover, heuristic techniques and greedy algorithms can be used to solve large-scale set covering problems for industrial applications. | The set covering problem, which aims to find the least number of subsets that cover some universal set, is a widely known NP-hard combinatorial problem. Due to its applicability to route planning and airline crew scheduling, several methods have been proposed to solve it. Its straightforward formulation allows for the use of off-the-shelf optimizers to solve it. Moreover, heuristic techniques and greedy algorithms can be used to solve large-scale set covering problems for industrial applications. | ||

Line 47: | Line 48: | ||

#RUBIN, J. (1973). A Technique for the Solution of Massive Set Covering Problems, with Application to Airline Crew Scheduling. ''Transportation Science,'' ''7''(1), 34-48. Retrieved November 23, 2020, from <nowiki>http://www.jstor.org/stable/25767684</nowiki> | #RUBIN, J. (1973). A Technique for the Solution of Massive Set Covering Problems, with Application to Airline Crew Scheduling. ''Transportation Science,'' ''7''(1), 34-48. Retrieved November 23, 2020, from <nowiki>http://www.jstor.org/stable/25767684</nowiki> | ||

#Church, R., ReVelle, C. The maximal covering location problem. ''Papers of the Regional Science Association'' 32, 101–118 (1974). <nowiki>https://doi.org/10.1007/BF01942293</nowiki> | #Church, R., ReVelle, C. The maximal covering location problem. ''Papers of the Regional Science Association'' 32, 101–118 (1974). <nowiki>https://doi.org/10.1007/BF01942293</nowiki> | ||

− | #Aktaş, E., Özaydın, Ö, Bozkaya, B., Ülengin, F., & Önsel, Ş. (2013). Optimizing Fire Station Locations for the Istanbul Metropolitan Municipality. ''Interfaces,'' ''43''(3), 240-255. doi:10.1287/inte.1120.0671 | + | # Aktaş, E., Özaydın, Ö, Bozkaya, B., Ülengin, F., & Önsel, Ş. (2013). Optimizing Fire Station Locations for the Istanbul Metropolitan Municipality. ''Interfaces,'' ''43''(3), 240-255. doi:10.1287/inte.1120.0671 |

#Ali, J., & Dyo, V. (2017). Coverage and Mobile Sensor Placement for Vehicles on Predetermined Routes: A Greedy Heuristic Approach. ''Proceedings of the 14th International Joint Conference on E-Business and Telecommunications''. doi:10.5220/0006469800830088 | #Ali, J., & Dyo, V. (2017). Coverage and Mobile Sensor Placement for Vehicles on Predetermined Routes: A Greedy Heuristic Approach. ''Proceedings of the 14th International Joint Conference on E-Business and Telecommunications''. doi:10.5220/0006469800830088 | ||

#Marchiori, E., & Steenbeek, A. (2000). An Evolutionary Algorithm for Large Scale Set Covering Problems with Application to Airline Crew Scheduling. ''EvoWorkshops''. | #Marchiori, E., & Steenbeek, A. (2000). An Evolutionary Algorithm for Large Scale Set Covering Problems with Application to Airline Crew Scheduling. ''EvoWorkshops''. |

## Revision as of 23:46, 23 November 2020

Authors: Sherry Liang, Khalid Alanazi, Kumail Al Hamoud

## Introduction

The set covering problem is a significant NP-hard problem in combinatorial optimization. In the set covering problem, two sets are given: a set * U* of elements and a set

*of subsets of the set*

**S***. Each subset in*

**U***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 The problem has many applications in the airline industry, and it was explored on an industrial scale as early as the 1970s.2*

**U**## Methodology

The mathematical formulation of the set covering problem is define as follows. We define U = {u_{1}, ….. u_{m}} as the universe of elements and S = {s_{1}, ….s_{n}} as a collection of subsets such that s_{i} U and the union of s_{i} cover U (i.e. s_{i} = U ). Addionally, each set s_{i} must cover at least one element of U and has associated cost c that is larger than zero (i.e. c_{i} > 0). The objective is to find the minimum cost sub-collection of sets X S that covers all the elements in the universe U.

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

**Decision variables**

**Objective function**

minimize

**Constraints **

The objective function is defined to minimize the number of subset s_{i} that cover all elements in the universe by minimizing its total cost. The first constraint implies that every element j in the universe U must be be covered where a_{ij} =1 if j s_{i} and 0 otherwise. The second constraints

## Example

## 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 location problem
- This set covering problems is concerned with maximizing the coverage of some public facility placed at different locations.3 Consider the problem of placing fire stations to serve the towns of some city.4 If each fire station can serve its town and all adjacent towns, we can formulate a set covering problem where each subset consists of a set of adjacent towns. The problem is then solved to minimize the required number of fire stations to serve the whole city.
- The optimal route selection problem
- Consider the problem of selecting the optimal bus routes to place pothole detectors. Due to scarcity of the physical sensors, the problem does not allow for placing a detector at every road. The task of finding the maximum coverage using a limited number of detectors could be formulated as a set covering problem.5 Specifically, giving a collection of routes
where each route itself is divided into segments. The segments of two routes can overlap. The goal is then to select the routes that maximize number of covered segments.**U**, - The airline crew scheduling problem
- An important application of large-scale set covering is the airline crew scheduling problem, which pertains to assigning airline staff to work shifts.
^{2,6}Thinking of the collection of flights as a universal set to be covered, we can formulate a set covering problem to search for the optimal assignment of employees to flights.

## Conclusion

The set covering problem, which aims to find the least number of subsets that cover some universal set, is a widely known NP-hard combinatorial problem. Due to its applicability to route planning and airline crew scheduling, several methods have been proposed to solve it. Its straightforward formulation allows for the use of off-the-shelf optimizers to solve it. Moreover, heuristic techniques and greedy algorithms can be used to solve large-scale set covering problems for industrial applications.

## References

- Grossman, T., & Wool, A. (1997). Computational experience with approximation algorithms for the set covering problem.
*European Journal of Operational Research,**101*(1), 81-92. doi:10.1016/s0377-2217(96)00161-0 - RUBIN, J. (1973). A Technique for the Solution of Massive Set Covering Problems, with Application to Airline Crew Scheduling.
*Transportation Science,**7*(1), 34-48. Retrieved November 23, 2020, from http://www.jstor.org/stable/25767684 - Church, R., ReVelle, C. The maximal covering location problem.
*Papers of the Regional Science Association*32, 101–118 (1974). https://doi.org/10.1007/BF01942293 - Aktaş, E., Özaydın, Ö, Bozkaya, B., Ülengin, F., & Önsel, Ş. (2013). Optimizing Fire Station Locations for the Istanbul Metropolitan Municipality.
*Interfaces,**43*(3), 240-255. doi:10.1287/inte.1120.0671 - Ali, J., & Dyo, V. (2017). Coverage and Mobile Sensor Placement for Vehicles on Predetermined Routes: A Greedy Heuristic Approach.
*Proceedings of the 14th International Joint Conference on E-Business and Telecommunications*. doi:10.5220/0006469800830088 - Marchiori, E., & Steenbeek, A. (2000). An Evolutionary Algorithm for Large Scale Set Covering Problems with Application to Airline Crew Scheduling.
*EvoWorkshops*.