Was ist über die genaue Komplexität des kürzesten Superstring-Problems bekannt? Kann es schneller gelöst werden als ? Gibt es bekannte Algorithmen, die den kürzesten Superstring lösen, ohne ihn auf TSP zu reduzieren?
UPD: unterdrückt Polynomfaktoren.
Das kürzeste Superstring-Problem ist ein Problem, dessen Antwort die kürzeste Zeichenfolge ist, die jede Zeichenfolge aus einem gegebenen Satz von Zeichenfolgen enthält. Die Frage ist nach der Optimierungserweiterung eines berühmten NP-harten Problems Shortest Superstring (Garey und Johnson, S.228).
cc.complexity-theory
ds.algorithms
graph-theory
tsp
exp-time-algorithms
Alex Golovnev
quelle
quelle
Antworten:
Angenommen, die Zeichenfolgen haben ein Längenpolynom in , dann gibt es mindestens eine Zeitlösung. Der Grund ist die bekannte Reduktion vom kürzesten gemeinsamen Superstring-Problem auf ATSP mit polynomgroßen Ganzzahlgewichten, die Sie wiederum durch Polynominterpolation lösen können, wenn Sie Hamilton-Zyklen in einem gerichteten Multigraph zählen können. Das letztere Problem hat eine Zeitlösung. Björklund 20122 n - Ω ( √n 2n-Ω( √2n - Ω ( n / logn√) 2n - Ω ( n / logn√)
Die Reduktion von ATSP mit Gewichten für jedes Paar von Eckpunkten auf die Hamiltonsche Zykluszählung lautet wie folgt: u , vwu v u , v
Für , wobei eine Obergrenze für alle Summen von Gewichten in der ATSP-Instanz ist, erstellen Sie einen Graphen in dem Sie jedes Gewicht ersetzen. mit Bögen von nach . w Summe n G r w u v R w u v u vr = 1 , 2 , ⋯ , wSumme wSumme n Gr wu v rwu v u v
Durch Lösen der Hamiltonschen für jedes können Sie durch Polynominterpolation ein Polynom mit , das der Anzahl der TSP-Touren im Originalgraphen entspricht Gewicht . Daher löst das Lokalisieren des kleinsten so dass nicht Null ist, das Problem.Σ w Summe l = 0 a l r l a l l l a lGr ∑wSummel = 0alrl al l l al
quelle
Ich habe das Problem untersucht und einige Ergebnisse gefunden. Der kürzeste gemeinsame Superstring (SCS) kann in Zeit mit nur polynomialem Raum gelöst werden ( Kohn, Gottlieb, Kohn ; Karp ; Bax, Franklin ).2n
Die bekannteste Näherung ist (Paluch).2 1130
Die bekannteste Annäherung an die Komprimierung ist (Paluch).34
Wenn SCS durch einen Faktor über dem binären Alphabet angenähert werden kann, kann es durch einen Faktor α über einem beliebigen Alphabet angenähert werden ( Vassilevska-Williams ).α α
SCS kann nicht mit einem Verhältnis besser als sei denn, P = NP ( Karpinski, Schmied ).1.0029
Die maximale Kompression kann nicht mit einem Verhältnis besser als sei denn, P = NP ( Karpinski, Schmied ).1.0048
Für Ergänzungen und Anregungen wäre ich dankbar.
quelle
Hier ist das kürzeste Superstring-Problem: Sie erhalten Strings s 1 , ... , s n über einem Alphabet Σ und möchten den kürzesten String über Σ finden , der jedes s i als Folge aufeinanderfolgender Zeichen enthält, dh einen Teilstring.n s1, … , Sn Σ Σ si
Wenn wir über genaue Algorithmen für das Problem sprechen, entspricht das Ermitteln der Länge der kürzesten Superzeichenfolge dem Ermitteln der maximalen Komprimierung C, die die Summe aller aufeinanderfolgenden Zeichenfolgenüberlappungen in der letzten Superzeichenfolge ist, dh C = ∑ i | s i | - L .L C C=∑i|si|−L
Soweit ich weiß, läuft der schnellste exakte Algorithmus für den kürzesten Superstring in ( 2 n ), wobei n die Anzahl der Strings ist. Dies ist ein einfacher dynamischer Programmieralgorithmus, der dem dynamischen Programmieralgorithmus für den längsten Pfad (und andere Probleme) ähnelt:O∗ 2n n
Für jede Teilmenge der Zeichenfolgen und der Zeichenfolge v in S berechnen wir die maximale Komprimierung für alle Superzeichenfolgen über S, wobei v die erste Zeichenfolge ist, die in der Superzeichenfolge erscheint, und speichern diese als C (( v , S )). Wir tun dies, indem wir zuerst alle Teilmengen mit nur einem Element verarbeiten und dann die C (( v , S )) - Werte für Teilmengen S auf k Zeichenfolgen aus denen auf k - 1 Zeichenfolgen aufbauen . Speziell:S v S S v v,S v,S S k k−1
quelle