Maksimal dekningsproblem - Maximum coverage problem

Den maksimal dekning problem er et klassisk spørsmål i informatikk , beregningsorientert kompleksitet teori , og operasjoner forskning . Det er et problem som er mye undervist i tilnærmingsalgoritmer .

Som input får du flere sett og et tall . Settene kan ha noen elementer til felles. Du må velge på de fleste av disse settene slik at det maksimale antallet elementer dekkes, dvs. foreningen av de valgte settene har maksimal størrelse.

Formelt (uvektet) maksimal dekning

Forekomst: Et nummer og en samling sett .
Mål: Finn en delmengde sett, slik at og antallet dekkede elementer er maksimert.

Det maksimale dekningsproblemet er NP-hardt , og kan ikke tilnærmes innenfor standardforutsetninger. Dette resultatet samsvarer i hovedsak med tilnærmingsforholdet oppnådd av den generiske grådige algoritmen som brukes for maksimering av submodulære funksjoner med en kardinalitetsbegrensning .

ILP -formulering

Problemet med maksimal dekning kan formuleres som følgende lineære heltallsprogram .

maksimere (maksimere summen av dekkede elementer)
underlagt (ikke mer enn sett er valgt)
(hvis minst ett sett er valgt)
(hvis det er dekket)
(hvis da er valgt for omslaget)

Grådig algoritme

Den grådige algoritmen for maksimal dekning velger sett i henhold til en regel: Velg hvert sett på hvert trinn som inneholder det største antallet avdekte elementer. Det kan vises at denne algoritmen oppnår et tilnærmingsforhold på . I tilnærmelsesresultater viser at den grådige algoritmen i hovedsak er den best mulige tilnærmingsalgoritmen for polynomisk tid for maksimal dekning med mindre .

Kjente utvidelser

Inapproximability -resultatene gjelder for alle utvidelser av problemet med maksimal dekning, ettersom de holder problemet med maksimal dekning som et spesialtilfelle.

Problemet med maksimal dekning kan brukes på veitrafikksituasjoner; et slikt eksempel er å velge hvilke bussruter i et offentlig transportnettverk som skal installeres med hulldektorer for å maksimere dekningen, når bare et begrenset antall sensorer er tilgjengelig. Dette problemet er en kjent forlengelse av problemet med maksimal dekning og ble først utforsket i litteratur av Junade Ali og Vladimir Dyo.

Vektet versjon

I den vektede versjonen har hvert element en vekt . Oppgaven er å finne en maksimal dekning som har maksimal vekt. Grunnversjonen er et spesialtilfelle når alle vekter er .

maksimere . (maksimere den veide summen av dekkede elementer).
underlagt ; (ikke mer enn sett er valgt).
; (hvis minst ett sett er valgt).
; (hvis det er dekket)
(hvis da er valgt for omslaget).

Den grådige algoritmen for den veide maksimale dekningen i hvert trinn velger et sett som inneholder maksimalvekten til udekkede elementer. Denne algoritmen oppnår et tilnærmingsforhold på .

Budsjettert maksimal dekning

I den budsjetterte versjonen for maksimal dekning har ikke bare hvert element en vekt , men også hvert sett har en kostnad . I stedet for det begrenser antall sett i dekselet et budsjett er gitt. Dette budsjettet begrenser den totale kostnaden for dekselet som kan velges.

maksimere . (maksimere den veide summen av dekkede elementer).
underlagt ; (kostnaden for de valgte settene kan ikke overstige ).
; (hvis minst ett sett er valgt).
; (hvis det er dekket)
(hvis da er valgt for omslaget).

En grådig algoritme vil ikke lenger produsere løsninger med ytelsesgaranti. Nemlig den verste tilfelle av denne algoritmen kan være veldig langt fra den optimale løsningen. Tilnærmelsesalgoritmen utvides på følgende måte. Først definerer du en modifisert grådig algoritme, som velger settet som har det beste forholdet mellom vektede avdekte elementer til kostnad. For det andre, blant dekk til kardinalitet , finn det beste dekselet som ikke bryter budsjettet. Ring dette dekselet . For det tredje, finn alle dekk til kardinalitet som ikke bryter budsjettet. Bruk disse kardinalitetsdekslene som utgangspunkt, bruk den modifiserte grådige algoritmen, og behold det beste omslaget som er funnet hittil. Ring dette dekselet . På slutten av prosessen vil det omtrentlige beste omslaget være enten eller . Denne algoritmen oppnår et tilnærmingsforhold på for verdier på . Dette er det best mulige tilnærmingsforholdet med mindre .

Generalisert maksimal dekning

I den generelle versjonen med maksimal dekning har hvert sett en kostnad , elementet har en annen vekt og kostnad, avhengig av hvilket sett som dekker det. Nemlig hvis er dekket av sett vekten av er og kostnaden er . Det gis et budsjett for den totale kostnaden for løsningen.

maksimere . (maksimere den veide summen av dekkede elementer i settene de er dekket i).
underlagt ; (kostnaden for de valgte settene kan ikke overstige ).
; (elementet kan bare dekkes av maksimalt ett sett).
; (hvis minst ett sett er valgt).
; (hvis det dekkes av settet )
(hvis da er valgt for omslaget).

Generalisert maksimal dekningsalgoritme

Algoritmen bruker begrepet restkostnad/vekt. Restkostnaden/vekten måles mot en foreløpig løsning, og det er forskjellen mellom kostnad/vekt fra kostnad/vekt oppnådd av en foreløpig løsning.

Algoritmen har flere stadier. Finn først en løsning ved hjelp av grådig algoritme. I hver iterasjon av den grådige algoritmen blir den foreløpige løsningen lagt til settet som inneholder den maksimale gjenværende vekten av elementer dividert med restkostnaden for disse elementene sammen med restkostnaden for settet. For det andre, sammenlign løsningen fra det første trinnet med den beste løsningen som bruker et lite antall sett. For det tredje, returner det beste ut av alle undersøkte løsninger. Denne algoritmen oppnår et tilnærmingsforhold på .

Relaterte problemer

Merknader

Referanser

Eksterne linker