Mengenüberdeckungsproblem

Eine Instanz des Mengenüberdeckungsproblems

Das Mengenüberdeckungsproblem (oft auch Set Cover Problem) ist eine klassische Fragestellung in der Kombinatorik, der theoretischen Informatik und der kombinatorischen Optimierung. Das Mengenüberdeckungsproblem gehört zur Liste der 21 klassischen NP-vollständigen Probleme, von denen Richard Karp 1972 die Zugehörigkeit zu dieser Klasse zeigen konnte.

Problembeschreibung

Gegeben sei eine endliche Menge U {\displaystyle U} und eine Menge S = { S 1 , , S n } {\displaystyle {\cal {{S}=\{S_{1},\ldots ,S_{n}\}}}} , die n {\displaystyle n} Teilmengen S i {\displaystyle S_{i}} von U {\displaystyle U} enthält. Gesucht ist nun eine möglichst kleine Teilmenge X S {\displaystyle X\subseteq S} , dessen Elemente die Menge U {\displaystyle U} überdecken.

In folgendem Beispiel, welches nebenstehend abgebildet ist, sind U = { 1 , , 5 } {\displaystyle U=\{1,\ldots ,5\}} und S = { { 1 , 2 , 3 } , { 2 , 4 } , { 3 , 4 } , { 4 , 5 } } {\displaystyle {\cal {{S}=\{\{1,2,3\},\{2,4\},\{3,4\},\{4,5\}\}}}} . Die Vereinigung aller Menge aus S {\displaystyle {\cal {S}}} ist offensichtlich die Menge U {\displaystyle U} . Allerdings können alle Elemente aus U {\displaystyle U} auch mit den Teilmengen { 1 , 2 , 3 } {\displaystyle \{1,2,3\}} und { 4 , 5 } {\displaystyle \{4,5\}} dargestellt werden, welche eine Lösung des Set Cover Problems in diesem Beispiel darstellen.

Das gewichtete Mengenüberdeckungsproblem

Im gewichteten Mengenüberdeckungsproblem (Minimum Weight Set Cover Problem) werden jeder Teilmenge S i S {\displaystyle S_{i}\in {\cal {S}}} außerdem Kosten c i R {\displaystyle c_{i}\in \mathbb {R} } zugewiesen und es gilt eine kostenminimale Überdeckung der Menge U {\displaystyle U} zu bestimmen. Für c i = 1 {\displaystyle c_{i}=1} entspricht dies dem klassischen Set Cover Problem.

Formulierung als Optimierungsproblem

Das gewichtete Mengenüberdeckungsproblem kann als ganzzahliges lineares Optimierungsproblem modelliert werden. Dazu sei y i { 0 , 1 } {\displaystyle y_{i}\in \{0,1\}} eine binäre Entscheidungsvariable, die angibt, ob die Teilmenge S i {\displaystyle S_{i}} Teil der optimalen Auswahl X {\displaystyle X} ist ( y i = 1 {\displaystyle y_{i}=1} ) oder nicht ( y i = 0 {\displaystyle y_{i}=0} ). Die zu minimierende Zielfunktion ist die gewichtete Summe aller ausgewählten Teilmengen i = 1 n c i y i {\textstyle \sum _{i=1}^{n}c_{i}y_{i}} und die Nebenbedingungen i : v S i y i 1   u U {\displaystyle \sum _{i:v\in S_{i}}y_{i}\geq 1\ \forall u\in U} garantieren, dass jedes Element u U {\displaystyle u\in U} in mindestens einer ausgewählten Menge S i {\displaystyle S_{i}} enthalten ist.

Literatur

  • Egon Balas, Manfred W. Padberg: On the Set-Covering Problem. Operations Research, Vol. 20, Nr. 6, 1972

Erfüllbarkeitsproblem der Aussagenlogik | Cliquenproblem | Mengenpackungsproblem | Knotenüberdeckungsproblem | Mengenüberdeckungsproblem | Feedback Arc Set | Feedback Vertex Set | Hamiltonkreisproblem | Integer Linear Programming | 3-SAT | graph coloring problem | Covering by cliques | Problem der exakten Überdeckung | 3-dimensional matching | Steinerbaumproblem | Hitting set | Rucksackproblem | Job sequencing | Partitionsproblem | Maximaler Schnitt