Co wiadomo o dokładnej złożoności najkrótszego problemu superstrun? Czy można to rozwiązać szybciej niż ? Czy znane są algorytmy, które rozwiązują najkrótszy superstrun bez redukcji do TSP?
UPD: tłumi czynniki wielomianowe.
Najkrótszy problem superstrun to problem, którego odpowiedzią jest najkrótszy ciąg, który zawiera każdy ciąg z danego zestawu ciągów. Pytanie dotyczy rozszerzenia optymalizacji znanego problemu NP-Short Shortest Superstring (Garey i Johnson, str. 228).
cc.complexity-theory
ds.algorithms
graph-theory
tsp
exp-time-algorithms
Alex Golovnev
źródło
źródło
Odpowiedzi:
Zakładając, że łańcuchy mają długość wielomianową w , wtedy tak, jest co najmniej 2 n - Ω ( √n rozwiązanie czasowe. Powodem jest dobrze znana redukcja z najkrótszego najczęstszego problemu superstrunu do ATSP z wielomianowymi wagami liczb całkowitych, które z kolei można rozwiązać przez interpolację wielomianową, jeśli można policzyć cykle Hamiltona w ukierunkowanej multigrafii. Ten ostatni problem ma2n-Ω( √2n−Ω(n/logn√) rozwiązanie czasowe.
Björklund 20122n−Ω(n/logn√)
Redukcję z ATSP z wagą dla każdej pary wierzchołków kształcie U , V do Hamiltona zliczania cykli jest następujący:wuv u,v
Dla , w którym w sumie stanowi górne ograniczenie wszystkich sumy n wag w przypadku ATSP, budować jeden wykres G r gdzie zastąpić każdą wagę w u , v w r W U v łuków z u do v .r=1,2,⋯,wsum wsum n Gr wuv rwuv u v
Rozwiązując liczenie cykli hamiltonowskich dla każdego , można za pomocą interpolacji wielomianowej skonstruować wielomian ∑ w suma l = 0 a l r l o wartości l równej liczbie tras TSP na oryginalnym wykresie wagi l . Dlatego też umieszczenie najmniejszą l tak, że L nie jest równa zeru rozwiązuje problemu.Gr ∑wsuml=0alrl al l l al
źródło
Studiowałem problem i znalazłem kilka wyników. Najkrótszy wspólny superstrun (SCS) można rozwiązać w czasie tylko przestrzenią wielomianową ( Kohn, Gottlieb, Kohn ; Karp ; Bax, Franklin ).2n
Najbardziej znanym przybliżeniem jest (Paluch).21130
Najbardziej znanym przybliżeniem kompresji jest (Paluch).34
Jeśli SCS można aproksymować współczynnikiem stosunku do binarnego alfabetu, to można go aproksymować współczynnikiem α w stosunku do dowolnego alfabetu ( Vassilevska-Williams ).α α
SCS nie może być aproksymowany współczynnikiem lepszym niż chyba że P = NP ( Karpinski, Schmied ).1.0029
Maksymalnej kompresji nie można aproksymować współczynnikiem lepszym niż chyba że P = NP ( Karpinski, Schmied ).1.0048
Byłbym wdzięczny za wszelkie uzupełnienia i sugestie.
źródło
Oto najkrótsza problemem superstrun: dostaniesz ciągów s 1 , ... , y n nad jakimś alfabetu Ď i chcesz znaleźć najkrótszą ciąg nad Ď który zawiera każdy s I jako podciąg kolejnych znaków, czyli podciąg.n s1,…,sn Σ Σ si
Dla każdego ciąguu patrzymy na wszystkie podzbiory S.′ na k - 1 ciągi, które nie obejmują u i ustaw wartość dla (u,u∪S′ ) to the maximum over
strings v in S′ of the sum of the maximum overlap of u with v with C((v,S′ )).
The final runtime is no more than O(n22n+n2l ) where l is the maximum string length.
There are better algorithms if you assume thatl is small, or the pairwise overlaps are small, the alphabet size is small etc, but I am not aware of any algorithm that's faster than 2n .
źródło