Problém s maximálním pokrytím - Maximum coverage problem

The problém s maximálním pokrytím je klasická otázka v počítačová věda, teorie výpočetní složitosti, a operační výzkum Je to problém, o kterém se často učí aproximační algoritmy.

Jako vstup dostanete několik sad a číslo . Sady mohou mít některé prvky společné. Musíte vybrat maximálně z těchto sad tak, aby byl pokryt maximální počet prvků, tj. sjednocení vybraných sad má maximální velikost.

Formálně (nevážený) maximální pokrytí

Instance: Číslo a sbírka sad .
Cíl: Najít podmnožinu sad, takové a počet zahrnutých prvků je maximalizován.

Problém s maximálním pokrytím je NP-tvrdé a nelze jej v rámci aproximovat za standardních předpokladů. Tento výsledek v zásadě odpovídá aproximačnímu poměru dosaženému použitým obecným chamtivým algoritmem maximalizace submodulárních funkcí s omezením mohutnosti.[1]

Formulace ILP

Problém s maximálním pokrytím lze formulovat následovně celočíselný lineární program.

maximalizovat(maximalizovat součet zahrnutých prvků)
podléhá(ne více než sady jsou vybrány)
(li pak alespoň jedna sada je vybráno)
(li pak je zakryt)
(li pak je vybrán pro obal)

Chamtivý algoritmus

The chamtivý algoritmus pro maximální pokrytí vybírá sady podle jednoho pravidla: v každé fázi vyberte sadu, která obsahuje největší počet nekrytých prvků. Je možné ukázat, že tento algoritmus dosahuje přibližného poměru .[2] Výsledky přibližnosti ukazují, že chamtivý algoritmus je v podstatě nejlepším možným algoritmem aproximace polynomiálního času pro maximální pokrytí, pokud .[3]

Známá rozšíření

Výsledky nepřístupnosti se vztahují na všechna rozšíření problému maximálního pokrytí, protože problém maximálního pokrytí považují za speciální případ.

Problém maximálního pokrytí lze použít na situace v silničním provozu; jedním takovým příkladem je výběr, které autobusové trasy v síti veřejné dopravy by měly být instalovány s detektory výmolů, aby se maximalizovalo pokrytí, když je k dispozici pouze omezený počet senzorů. Tento problém je známým rozšířením problému maximálního pokrytí a byl poprvé prozkoumán v literatuře Junade Ali a Vladimir Dyo.[4]

Vážená verze

Ve vážené verzi každý prvek má váhu . Úkolem je najít maximální pokrytí, které má maximální váhu. Základní verze je speciální případ, kdy jsou všechny váhy .

maximalizovat . (maximalizace váženého součtu zahrnutých prvků).
podléhá ; (ne více než sady jsou vybrány).
; (li pak alespoň jedna sada je vybrána).
; (li pak je zakryt)
(li pak pro obal).

Chamtivý algoritmus pro vážené maximální pokrytí v každé fázi vybere sadu, která obsahuje maximální váhu nekrytých prvků. Tento algoritmus dosahuje přibližného poměru .[1]

Rozpočtové maximální pokrytí

Ve verzi s maximálním pokrytím v rozpočtu platí nejen každý prvek mít váhu , ale také každá sada má náklady . Namísto který omezuje počet sad v krytu rozpočtu je dáno. Tento rozpočet omezuje celkové náklady na krytí, které lze zvolit.

maximalizovat . (maximalizace váženého součtu zahrnutých prvků).
podléhá ; (cena vybraných sad nesmí překročit ).
; (li pak alespoň jedna sada je vybrána).
; (li pak je zakryt)
(li pak pro obal).

Chamtivý algoritmus již nebude vyrábět řešení se zárukou výkonu. Chování tohoto algoritmu v nejhorším případě může být velmi daleko od optimálního řešení. Aproximační algoritmus je rozšířen následujícím způsobem. Nejprve definujte upravený chamtivý algoritmus, který vybere sadu který má nejlepší poměr vážených nekrytých prvků k nákladům. Zadruhé, mezi obálkami mohutnosti , najít nejlepší krytí, které neporušuje rozpočet. Zavolej tento obal . Za třetí, najděte všechny obálky mohutnosti které neporušují rozpočet. Pomocí těchto obalů mohutnosti jako výchozí body použijte upravený chamtivý algoritmus a zachovejte dosud nejlepší pokrytí. Zavolej tento obal . Na konci procesu bude přibližné nejlepší krytí buď nebo . Tento algoritmus dosahuje přibližného poměru pro hodnoty . Toto je nejlepší možný poměr přiblížení, pokud .[5]

Zobecněné maximální pokrytí

V generalizované verzi s maximálním pokrytím každá sada má náklady , prvek má jinou váhu a cenu v závislosti na tom, která sada ji pokrývá je pokryta sadou hmotnost je a jeho cena je . Rozpočet je uveden pro celkové náklady na řešení.

maximalizovat . (maximalizace váženého součtu zahrnutých prvků v sadách, ve kterých jsou zahrnuty).
podléhá ; (cena vybraných sad nesmí překročit ).
; (živel může být pokryta maximálně jednou sadou).
; (li pak alespoň jedna sada je vybrána).
; (li pak je pokryta sadou )
(li pak pro obal).

Zobecněný algoritmus maximálního pokrytí

Algoritmus využívá koncept zbytkové ceny / váhy. Zbytková cena / hmotnost se měří proti předběžnému řešení a je to rozdíl mezi cenou / hmotností a cenou / hmotností získanou předběžným řešením.

Algoritmus má několik fází. Nejprve najděte řešení pomocí chamtivého algoritmu. V každé iteraci chamtivého algoritmu je k předběžnému řešení přidána sada, která obsahuje maximální zbytkovou hmotnost prvků dělenou zbytkovou cenou těchto prvků spolu se zbytkovou cenou sady. Zadruhé porovnejte řešení získané prvním krokem s nejlepším řešením, které používá malý počet sad. Zatřetí, vraťte ze všech zkoumaných řešení to nejlepší. Tento algoritmus dosahuje přibližného poměru .[6]

Související problémy

Poznámky

  1. ^ A b G. L. Nemhauser, L. A. Wolsey a M. L. Fisher. Analýza aproximací pro maximalizaci funkcí podmodulární množiny I, Mathematical Programming 14 (1978), 265–294
  2. ^ Hochbaum, Dorit S. (1997). „Přibližování problémů s obalem a balením: Sada krytů, Vrcholový kryt, Nezávislá sada a související problémy“. V Hochbaum, Dorit S. (ed.). Aproximační algoritmy pro NP-těžké problémy. Boston: PWS Publishing Company. str. 94–143. ISBN  978-053494968-6.
  3. ^ Feige, Uriel (Červenec 1998). „Prahová hodnota ln n pro přibližné nastavení krytu ". Deník ACM. New York, NY, USA: Sdružení pro výpočetní techniku. 45 (4): 634–652. doi:10.1145/285055.285059. ISSN  0004-5411. S2CID  52827488.
  4. ^ Ali, Junade; Dyo, Vladimir (2017). Pokrytí a umístění mobilních senzorů pro vozidla na předem stanovených trasách: chamtivý heuristický přístup. Sborník ze 14. mezinárodní společné konference o elektronickém podnikání a telekomunikacích. Svazek 2: WINSYS. 83–88. doi:10.5220/0006469800830088. ISBN  978-989-758-261-5.
  5. ^ Khuller, Samir; Moss, Anna; Naor, Joseph (Seffi) (1999). Msgstr "Problém rozpočtovaného maximálního pokrytí". Dopisy o zpracování informací. 70: 39–45. CiteSeerX  10.1.1.49.5784. doi:10.1016 / S0020-0190 (99) 00031-9.
  6. ^ Cohen, Reuven; Katzir, Liran (2008). "Zobecněný problém maximálního pokrytí". Dopisy o zpracování informací. 108: 15–22. CiteSeerX  10.1.1.156.2073. doi:10.1016 / j.ipl.2008.03.017.

Reference

externí odkazy