Twardość podtytuły Zestawu okładki


10

Jak trudny jest problem Ustaw okładkę, jeśli liczba elementów jest ograniczona przez jakąś funkcję (np. ), gdzie jest rozmiarem wystąpienia problemu. Formalnie,nlog⁡nn

Niech i gdzie i . Jak trudno jest rozwiązać następujący problemF = { S 1 , ⋯ , S n } S i ⊆ U m = O ( log n )U={e1,⋯,em}F={S1,⋯,Sn}Si⊆Um=O(log⁡n)

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

Co jeśli ?m=O(n)

Każdy wynik oparty na dobrze znanych przypuszczeniach (np. Unique Games, ETH) jest dobry.

Edycja 1: Motywacją tego problemu jest ustalenie, kiedy problem staje się trudniejszy, gdy rośnie . Najwyraźniej problemem jest P, jeśli i NP-trudny, jeśli . Jaki jest próg twardości NP problemu?m = O ( 1 ) m = O ( n )mm=O(1)m=O(n)

Edycja 2: Istnieje trywialne algorytm uzna, że w czasie (który wylicza wszystkie podzbiory o rozmiarze o ). Dlatego problemem nie jest NP-trudny, jeśli ponieważ ETH sugeruje, że nie ma algorytmu w czasie dla żadnego NP-twardego problem (gdzie jest wielkością problemu NP-trudnego).m F m = O ( log n ) O ( 2 n o ( 1 ) ) nO(nm)mFm=O(log⁡n)O(2no(1))n


2
Istnieje lepszy algorytm decydujący o problemie w czasie (a dokładniej liczba Bell dla m ): dla każdej partycji elementów na podzbiory sprawdź, czy istnieje zbiór wejściowy obejmujący każdy podzbiór. Tak więc dla m = O ( log n / log log n ) problem można rozwiązać w czasie wielomianowym. To jednak nie do końca odpowiada na twoje pytanie dotyczące m = O ( log n ) . mO(m)mm=O(log⁡n/log⁡log⁡n)m=O(log⁡n)
— David Eppstein,

Odpowiedzi:


11

Gdy , możesz użyć programowania dynamicznego, aby znaleźć optymalny czas wielomianowy. Tabela zawiera logiczny wartościach komórek T £ -l , X każdego £ -l ∈ { 0 , ... , K } i X ⊆ U , wskazujący, czy istnieje £ -l zestawy, które obejmują elementy w X .m=O(log⁡n)Tℓ,Xℓ∈{0,…,k}X⊆UℓX

Gdy , powiedzm≤C √m=O(n) , problem pozostaje trudny do rozwiązania. Biorąc pod uwagę instancję SET-COVER, dodajmnowe elementyx1,…,xmoraz(2C - 1 m)2nowe zestawy, składające się z niepustych podzbiorów nowych elementów, w tym{x1,…,xm.}(gdymjest wystarczająco duży,(2C - 1 m)2<2m). Zwiększ takżekm≤Cnmx1,…,xm(2C−1m)2{x1,…,xm}m(2C−1m)2<2mkpo jednym. Nowe jest m ' = 2 m i n ' = n + ( 2 C - 1 m ) 2 ≥ ( C - 1 m ' ) 2 .m,nm′=2mn′=n+(2C−1m)2≥(C−1m′)2


Mówiąc bardziej ogólnie, przypadek jest trudny NP, a przypadek m = n o ( 1 ) nie jest trudny NP przy założeniu ETH, ponieważ istnieje algorytm p o l y ( n , 2 m ) . m=nO(1)m=no(1)poly(n,2m)
— Yuval Filmus,

11

Przypadek jest w czasie n O ( c ), jak zauważył Yuval, ale należy również pamiętać, że dla k = O ( 1 ) problem można rozwiązać w czasie O ( n k ⋅ m ) (czas wielomianowy) o Wyczerpujące wyszukiwanie. Zakładając hipotezę silnego czasu wykładniczego (że CNF-SAT w formułach z N zmiennymi i klauzulami O ( N ) wymaga co najmniej 2 N - o ( N )m=clog⁡nnO(c)k=O(1)O(nk⋅m)NO(N)2N−o(N)czas), te dwie granice czasowe są „granicą” tego, czego możemy się spodziewać w czasie wielomianowym, w następującym znaczeniu.

W moim artykule SODA'10 z Mihai Patrascu badamy zasadniczo izomorficzny problem znalezienia dominującego zestawu wielkości na dowolnym wykresie n- węzłowym, pokazując, że jeśli zbiór k- dominujący można rozwiązać w czasie n k - ε dla pewnego k ≥ 2 i ε > 0 , wówczas istnieje algorytm czasowy 2 N ( 1 - ε / 2 ) p o l y ( M ) dla CNF-SAT dla N zmiennych i Mknknk−εk≥2ε>02N(1−ε/2)poly(M)NM klauzule

Zwracając uwagę na zależność między dzielnicach wierzchołków w zbiór dominujący instancji oraz zestawów w zbiorze przykład pokrywy i kontroli stopnia redukcji, można zauważyć, że ta redukcja też pokazy rozwiązywania -Set przykryć n zestawów nad wszechświatem rozmiar m w n k - ε ⋅ f ( m ) implikuje algorytm CNF-SAT dla formuł CNF z klauzulami M i N zmiennymi działającymi w 2 N ( 1 - ε / 2 ) ⋅ f ( M )knmnk−ε⋅f(m)MN2N(1−ε/2)⋅f(M)czas. Do celów obalenia silnego ETH wystarczy rozwiązać CNF-SAT w przypadku, gdy . Stąd algorytm dla twojego problemu działającego w czasie n k - ε ⋅ 2 m / α ( m ) dla pewnej nieograniczonej funkcji α ( m ) dałby zaskakujący nowy algorytm SAT.M=O(N)nk−ε⋅2m/α(m)α(m)

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.