Durezza di una sottocassa di Set Cover


10

Quanto è difficile il problema Imposta copertina se il numero di elementi è limitato da una funzione (ad esempio, ) dove è la dimensione dell'istanza del problema. formalmente,lognn

Lascia che e dove e . Quanto è difficile decidere il seguente problemaU={e1,,em}F={S1,,Sn}SiUm=O(logn)

SET-COVER'={<U,F,k>: there exists at most k subsets  Si1,,SikF that cover U}.

Cosa succede se m=O(n) ?

Qualsiasi risultato basato su congetture ben note (ad es. Unique Games, ETH) è buono.

Modifica 1: Una motivazione per questo problema è scoprire quando il problema diventa difficile man mano che aumenta m . Chiaramente, il problema è in P se m=O(1) e NP-difficile se m=O(n) . Qual è la soglia per la durezza NP del problema?

Modifica 2: esiste un banale algoritmo per decidere in tempo (che elenca tutti i sottoinsiemi di dimensione di ). Pertanto, il problema non è NP-difficile se poiché ETH implica che non esiste un algoritmo nel tempo O (2 ^ {n ^ {o (1)}}) per qualsiasi NP-difficile problema (dove n è la dimensione del problema NP-difficile).m F m = O ( log n ) O ( 2 n o ( 1 ) ) nO(nm)mFm=O(logn)O(2no(1))n


2
Esiste un algoritmo migliore per decidere il problema nel tempo (più precisamente il numero di Bell per ): per ogni partizione degli elementi in sottoinsiemi, verificare se esiste un set di input che copre ciascun sottoinsieme. Quindi per il problema può essere risolto in tempo polinomiale. Questo non risponde alla tua domanda su , comunque. m m = O ( registro n / registro registro n ) m = O ( registro n )mO(m)mm=O(logn/loglogn)m=O(logn)
David Eppstein,

Risposte:


11

Quando , è possibile utilizzare la programmazione dinamica per trovare l'ottimale nel tempo polinomiale. La tabella contiene celle con valori booleani per ogni e , che indicano se esistono insiemi che coprono il elementi a .T , X{ 0 , , k } X UXm=O(logn)T,X{0,...,K}XUX

Quando , dire , il problema rimane NP-difficile. Data un'istanza di SET-COVER, aggiungi nuovi elementi e nuovi set, costituiti da sottoinsiemi non vuoti dei nuovi elementi, tra cui (quando è abbastanza grande, ). Aumenta anche di uno. I nuovi sono e .mCm=O(n) mx1,,xmCnm ( 2 C - 1 m ) 2 { x 1 , , x m } m ( 2 C - 1 m ) 2 < 2 m k m , n m = 2 m n = n + ( 2 C - 1 m ) 2X1,...,Xm(2C-1m)2{X1,...,Xm}m(2C-1m)2<2mKm,nm=2mn=n+(2C1m)2(C1m)2


Più in generale, il caso è NP-difficile, e il caso non è NP-difficile assumendo ETH, poiché esiste un algoritmo. m = n o ( 1 ) p o l y ( n , 2 m )m=nO(1)m=no(1)poly(n,2m)
Yuval Filmus,

11

Il caso di è tra tempo come notato da Yuval, ma nota anche per puoi risolvere il problema in tempo (tempo polinomiale) mediante ricerca esaustiva. Supponendo che l'ipotesi del tempo esponenziale forte (che CNF-SAT sulle formule con variabili e clausole richieda almeno tempo), questi due limiti di tempo sono il "limite" di ciò che possiamo aspettarci in tempo polinomiale, nel senso seguente.n O ( c ) k = O ( 1 ) O ( n km ) N O ( N ) 2 N - o ( N )m=clognnO(c)k=O(1)O(nkm)NO(N)2No(N)

Nel mio articolo SODA'10 con Mihai Patrascu studiamo il problema essenzialmente isomorfo di trovare un insieme dominante di dimensione in un grafico nodo arbitrario , dimostrando che se l' insieme -dominating può essere risolto in tempo per alcuni e , quindi esiste un algoritmo temporale per CNF-SAT su variabili e clausolen k n k - ε k 2 ε > 0 2 N ( 1 - ε / 2 ) p o l y ( M ) N Mknknkεk2ε>02N(1ε/2)poly(M)NM

Notando la relazione tra i quartieri dei vertici in un'istanza dell'insieme dominante e gli insiemi in un'istanza di copertura dell'insieme e controllando la riduzione, scoprirai che questa riduzione mostra anche la risoluzione di -Set Cover con insiemi su un universo di dimensioni in implica un algoritmo CNF-SAT per le formule CNF con clausole e variabili esecuzione in time . Ai fini della confutazione dell'ETH forte, è sufficiente risolvere CNF-SAT nel caso in cui . Da qui un algoritmo per il tuo problema in esecuzione inknmnkεf(m)MN2N(1ε/2)f(M)M=O(N)nkε2m/α(m)il tempo per qualche funzione illimitata produrrebbe un nuovo algoritmo SAT sorprendente.α(m)

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.