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,n
Niech i gdzie i . Jak trudno jest rozwiązać następujący problemF = { S 1 , ⋯ , S n } S i ⊆ U m = O ( log n )
Co jeśli ?
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 )
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 ) ) n
źródło
Odpowiedzi:
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(logn) 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≤Cn−−√ m x1,…,xm (2C−1m)2 {x1,…,xm} m (2C−1m)2<2m k po jednym. Nowe jest m ' = 2 m i n ' = n + ( 2 C - 1 m ) 2 ≥ ( C - 1 m ' ) 2 .m,n m′=2m n′=n+(2C−1m)2≥(C−1m′)2
źródło
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=clogn nO(c) k=O(1) O(nk⋅m) N O(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 Mk n k nk−ε k≥2 ε>0 2N(1−ε/2)poly(M) N M 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 )k n m nk−ε⋅f(m) M N 2N(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)
źródło