Härtesprünge in der rechnerischen Komplexität?

34

Das Problem der minimalen Bandbreite besteht darin, eine Reihenfolge von Graphknoten auf einer ganzzahligen Linie zu finden, die den größten Abstand zwischen zwei benachbarten Knoten minimiert. Eine Raupe ist ein Baum, der aus einem Hauptpfad gebildet wird, indem -lange, kantendisjunkte Pfade höchstens von ihren Knoten entfernt wachsen ( wird als Haarlänge bezeichnet). Das Problem der minimalen Bandbreite ist in für 2-Raupen, aber es ist vollständig für 3-Raupen.k k P N PkkkPNP

Hier ist eine sehr interessante Tatsache: Das Problem der minimalen Bandbreite ist in Polynomzeit für 1-Raupen (Haarlänge höchstens 1) lösbar, für zyklische 1-Raupen ist es jedoch vollständig (bei zyklischen Raupen wird eine Kante hinzugefügt, um die Endpunkte zu verbinden des Hauptweges). Das Hinzufügen von genau einer Kante macht das Problem vollständig.N PNPNP

Was ist das auffälligste Beispiel für einen Problemhärtesprung, bei dem eine kleine Variation der Eingabeinstanz einen Komplexitätssprung von der Polynomzeitlösbarkeit zur Vollständigkeit verursacht?NP

Mohammad Al-Turkistany
quelle
6
Dauerhaft gegen Determinante. Dies sind zwei verschiedene Probleme (ich schätze, es ist keine Antwort), aber der Härtesprung ist ziemlich auffällig.
Jagadish
@Jagadish, ich stimme zu. Trotzdem denke ich, dass Sie es als Antwort posten können.
Mohammad Al-Turkistany
8
Die Permanenz einer 0-1-Matrix kann als der erwartete Wert der Determinante der Matrix angesehen werden, wenn die 1-Einträge zufällig durch +1 oder -1 ersetzt werden.
Dana Moshkovitz
@ Dana, könntest du bitte deinen Kommentar zu einer separaten Antwort machen? (vorzugsweise mit Hinweis)
Mohammad Al-Turkistany
Community Wiki?
Niel de Beaudrap

Antworten:

46

Eines der interessanteren angewandten Beispiele für Härtesprünge ist in folgendem Problem zu beobachten:

Stellen Sie sich eine Fußball-Meisterschaft mit Mannschaften vor: Das Problem, zu entscheiden, ob eine bestimmte Mannschaft die Liga (noch) gewinnen kann, ist P, wenn in einem Spiel die siegreiche Mannschaft 2 Punkte erhält, die eine 0 verliert und jede Mannschaft 1 Punkte erhält Punkt in einem Unentschieden. Aber wenn wir die Regeln so ändern, dass das Gewinnerteam 3 Punkte erhält, wird das gleiche Problem zu N P -hart.nPNP

Das Ergebnis kann für jede -Punktregel für jedes k > 2 und sogar für nur drei verbleibende Runden verallgemeinert werden .(0,1,k)k>2

Quelle: „Komplexitätstheorie“ von Ingo Wegener ( http://portal.acm.org/citation.cfm?id=1076319 )

Dimitri Scheftelowitsch
quelle
12
Das erinnert mich an TSP: Sie können eine ungefähre 1,5 mit Gewichten von 1 oder 2 erhalten, aber nicht mit Gewichten von 1 oder 3
Suresh Venkat
24

Dies beantwortet die im Fragentitel gestellte Frage, aber nicht die in der Frage gestellte.

Ein schockierendes Beispiel für Einsprunghärte ergibt sich aus der Frage: "Wie viele befriedigende Aufgaben hat eine planare Formel, Modulo ?" Es wurde allgemein angenommen, dass dies # P-schwer ist, und es ist für "die meisten" Werte von n , aber wenn n eine Mersenne-Ganzzahl ist (zum Beispiel n = 7 , weil 7 die Form 2 3 - 1 hat ), dann ist die Antwort kann in polynomialer Zeit berechnet werden.nnnn=723-1

Dies wurde erstmals von Valiant in seiner bahnbrechenden Arbeit über holographische Algorithmen entdeckt.

Aaron Sterling
quelle
4
Das ist nicht ganz richtig Die Formel muss nicht nur planar sein. Es muss auch monoton sein, zweimal gelesen werden und Klauseln der Größe , wobei n = 2 k - 1 ist . Die Darstellung von Valiant in Holographic Algorithms besteht darin, die Klauselgröße auf k = 3 festzulegen und dann den Modul zu variieren. Die charakteristische Härte 0 (dh # P-Kabelbaum) war bekannt. Valiant hat die Härte Mod 2 und die Zugfestigkeit Mod 7 bewiesen. Beachten Sie, dass diese Härte P = # 2 P- Härte ist, nicht # P-Härte. Ich glaube die Komplexität mod anderer Werte ist offen. Später gaben Jin-Yi Cai und Pinyan Lu die Traktabilität für alle k .kn=2k-1k=3P=#2Pk
Tyson Williams
2
Weitere Informationen, einschließlich der Papierreferenzen, finden Sie unter Holographic_algorithm # History auf Wikipedia.
Tyson Williams
21

INDEPENDENT SET ist NP-vollständig für (Kreuz-, Dreieck-) freie Graphen , kann jedoch für (Stuhl-, Dreieck-) freie Graphen in linearer Zeit gelöst werden . (Die X-freien Graphen sind solche, die keinen Graphen von X als induzierten Subgraphen enthalten.)

Stuhl: Bild des Stuhlgraphen von ISGCI Dreieck: Bild des Dreiecksgraphen von ISGCI Kreuz:Bild des Kreuzgraphen von ISGCI

Beachten Sie, dass das Kreuz vom Stuhl durch Hinzufügen einer einzelnen Kante erhalten wird.

András Salamon
quelle
12
Was ist mit diesem einfacheren Beispiel: INDEPENDENT SET ist NP-c für -freie Graphen, kann aber für K 1 , 3 -freie (dh klauenfreie) Graphen in linearer Zeit gelöst werden. K1,4K1,3
Vb le
19

Ich bin mir nicht sicher, ob ich Ihrer Charakterisierung zustimmen würde, dass das Hinzufügen einer einzelnen Kante zur Eingabe das Problem NP-vollständig macht, da man tatsächlich zulässt, dass zu jeder der unendlich vielen Eingabeinstanzen eine Kante hinzugefügt wird.

Hier ist ein Beispiel für ein Problem, das eine scharfe Zweiteilung in der von Ihnen vorgeschlagenen Richtung aufweist.

Das Problem der Bestimmung, ob es einen Graphhomomorphismus von dem Eingabegraph G zu einem festen Schablonendiagramm H gibt, liegt in P, wenn H ein Graph mit einer Selbstschleife oder ein zweigliedriger schleifenloser Graph ist. Wenn H nicht zweiteilig ist (dies kann oft durch Hinzufügen einer einzelnen Kante erreicht werden), ist das Problem NP-vollständig.

Der Schlüssel hier ist, dass die 2-Färbung in P ist (dies entspricht einem Homomorphismus zu , dem Pfad auf 3 Eckpunkten), während die 3-Färbung NP-vollständig ist (dies entspricht einem Homomorphismus zu K 3 , dem Dreieck).P3K3

András Salamon
quelle
14

Hier ist ein weiteres interessantes Beispiel für die Erkennung induzierter Subgraphen:

Ein Theta ist ein Graph mit nicht benachbarten Eckpunkten x,y , drei Pfaden P1,P2,P3 von x nach y , wobei zwei beliebige Pfade einen Zyklus mit einer Länge von mehr als 3 induzierten.

Eine Pyramide ist ein Graph mit einem Scheitelpunkt x , einem Dreieck y1,y2,y3 und Pfaden Pich von x bis yich für jedes ich=1,2,3 mit höchstens einem Pfad mit der Länge eins.

Schließlich ist ein Prisma ein Graph mit zwei Dreiecken x1,x2,x3 und y1,y2,y3 und Pfaden Pich von xich bis yich für jedes ich=1,2,3 .

In Zahlen lässt sich leicht beschreiben:

Theta, Prisma und Pyramide

Für die Detektion von induziertem Theta und Pyramide ist es bekannt, dass es sich in Polynomzeit befindet. (Tatsächlich benötigt der bekannteste Algorithmus für Theta die Zeit O(n11) und für die Pyramide die Zeit O(n9) .) Für die Erkennung eines induzierten Prismas wird das Problem jedoch NP-schwer.

Man kann " Detecting Induced Subgraphs " von Leveque, Lin, Maffray und Trotignon als Referenz sehen. Der Grund, warum Theta und Pyramide relativ einfach sind, hängt mit dem "Drei-in-einem-Baum" -Problem zusammen, das in " Das Drei-in-einem-Baum-Problem " von Chudnovsky und Seymour beschrieben wird.

Hsien-Chih Chang 張顯 張顯
quelle
13

ähm ... ich bin sicher, Sie suchen nach weniger trivialen Beispielen ... aber ich möchte darauf hinweisen, dass die Zahl gegen 3 etwas Besonderes ist . 2 - S A T bis 3 - S A T , 2 - C O L vs 3 - C O L usw. Intuitiv habe ich immer gedacht, dass ein Knoten mit höchstens 2 Kanten höchstens eine Linie bilden kann. aber ein Knoten mit 3 Kanten kann einen Baum bilden, wenn wir uns von 2-3 bewegen, erhalten wir eine kombinatorische Explosion.232-SEINT3-SEINT2-COL3-COL

gabgoh
quelle
9
Auf der anderen Seite ist MAX 2SAT hart. Also 2 ist nicht so besonders.
Suresh Venkat
1
2 UND perfekte Vollständigkeit scheinen jedoch etwas Besonderes zu sein. :)
Daniel Apon
Auch perfektes 2D-Matching vs. perfektes 3D-Matching.
Mohammad Al-Turkistany
13

Ich denke, dass es nicht sinnvoll ist, über Instanzen zu sprechen. Wir können über zwei Verteilungen von Eingabeinstanzen mit unterschiedlichen Schwierigkeiten sprechen, aber es wäre interessanter, wenn es eine Beziehung zwischen der Verteilung oder zwischen Instanzen in den Verteilungen gibt.

Wir können eine parametrisierte Familie von Verteilungen betrachten und dann darüber sprechen, was passiert, wenn wir den Parameter ändern. Sie interessieren sich vielleicht für das sogenannte Schwellenwertphänomen , "bei dem ein System aufgrund einer geringfügigen Änderung eines Parameters eine schnelle qualitative Änderung erfährt ...". Schauen Sie sich diese Umfrage an: Ehud Friedgut , " Hunting for Sharp Thresholds ", Random Structures Algorithms 26, 2005.

Ich denke, eines der auffälligsten und schönsten Beispiele ist das zufällige k-SAT mit der Klauseldichte , der Phasenübergang ist wirklich erstaunlich.Δ

Kaveh
quelle
11

Folgern Typen für Lambda - Ausdrücke ist DEXPTIME-komplett mit pränexe und Rang-2 polymorphen Systemen des Typs (bei Typ quantifiers höchstens eine Ebene tief verschachtelt ist), wird aber unentscheidbar für Rang-3 und höher. Seltsamerweise kann eine zusätzliche Verschachtelungsebene ein Problem unentscheidbar machen.

Alex Rubinsteyn
quelle
10

Finden des Grundzustands eines planaren Ising-Modells mit 0 Magnetfeldern ist in P, mit einem Magnetfeld ungleich Null ist es NP-hart. Die Teilungsfunktion des planaren Ising-Modells mit dem Magnetfeld 0 ist in P, mit dem Magnetfeld ungleich Null ist es NP-hart.

Jaroslaw Bulatow
quelle
9

Hier ist ein nettes Problem mit einem interessanten Komplexitätssprung wie der minimalen Bandbreite, die Sie in Ihrer Frage angesprochen haben.

Lassen Sie ein Graph und seine T einen Spannbaum von G . Der Umweg für eine Kante u v E ( G ) ist der einzigartige u - v Pfad in T . Die Überlastung von e E ( T ) , bezeichnet durch C n g G , T ( e ) ist die Anzahl von Umleitungen , die enthalten , e . Die Überlastung von G in T , bezeichnet mit c n g GGTGuvE(G)uvTeE(T)cnGG,T(e)eGT , ist die maximale Überlastung über alle Kanten in T . Der SpanningTreeStaus von G , bezeichnet durch s t c ( G ) ist die minimale Staus über alle Spannbäume von G . Das Spanning Tree Congestion-Problem fragt, ob ein gegebener Graph höchstens einige k Spanning Tree-Staus aufweist.cnGG(T)TGstc(G)Gk

Der folgende Komplexitätssprung ist dargestellt in: Bodlaender et al., Parametrisierte Komplexität des Überlastungsproblems , Algorithmica 64 (2012) 85–111 :

Für jedes feste und d ist das Problem in linearer Zeit für Graphen mit höchstens d Grad lösbar . Wenn wir dagegen nur einen Scheitelpunkt unbegrenzten Grades zulassen , wird das Problem für jedes feste k 8 sofort N P -vollständig .kddNPk8

vb le
quelle
8

Ich frage mich, warum niemand dies erwähnt hat:

Horn-Sat gegen K-Sat

Ich denke, jeder weiß, was es ist. Wenn nicht:

Horn-Sat soll herausfinden, ob eine Menge von Horn-Klauseln erfüllt werden kann (jede Klausel hat höchstens 1 positives Literal).

K-Sat ermittelt, ob eine Reihe von Klauseln erfüllt werden kann (jede Klausel kann mehr als 1 positive Literale enthalten).

Das Zulassen von mehr als einem positiven Literal in jeder Klausel macht das Problem von P-complete zu NP-complete.

George
quelle
7

Grafik-Färbung

Wie in einer anderen Antwort erwähnt, ist 2-COL in der Polynomzeit lösbar, während 3-COL NP-vollständig ist. Wenn Sie jedoch die Anzahl der Farben erhöhen, wird das Problem nach einem (unbekannten?) Punkt einfacher!

Wenn wir beispielsweise N Scheitelpunkte und N Farben haben, kann das Problem gelöst werden, indem jedem Scheitelpunkt eine andere Farbe zugewiesen wird.

George
quelle
JEDER planare Graph ist 4-farbig. [1]: projecteuclid.org/DPubS/Repository/1.0/…
rphv
6

In ähnlicher Weise: Permanent vs Determinant.

Jagadisch
quelle
3
Der Unterschied zwischen perm und det ist tatsächlich viel bedeutender und von einer anderen Art als die anderen Härtesprünge, die in der Frage und den anderen Antworten diskutiert werden. Negation ist sehr mächtig: In gewissem Sinne erlaubt es uns, det leicht zu berechnen, aber nicht perm; Valiant hat ein Papier "Negation kann exponentiell mächtig sein" portal.acm.org/citation.cfm?id=804412 ; Viele Untergrenzen sind für die monotone Komplexität bekannt (selbst im algebraischen Modell, bei dem die Monotonie Negationen und negative Konstanten ausschließt), aber nur sehr wenige von ihnen führen zu einer nicht-monotonen Komplexität.
Joshua Grochow
3
Ein weiteres Beispiel: Für Strassens Algorithmus zur Multiplikation von 2x2-Matrizen ist ebenfalls eine Negation erforderlich. Ohne sie ist der triviale Algorithmus zum Multiplizieren von 2x2-Matrizen nicht zu übertreffen.
Joshua Grochow
6

Ich habe gerade einen Artikel gelesen, der sich mit der Hypergraph-Partitionierung befasst . Das Problem ist wie folgt definiert:

Bei zwei gegebenen Parametern und l ist 1 lkl1l<kPklH=(V,E)t1,,tk|V|=n=ich=1ktich|E|=mVkt1,,tkEl

Im Allgemeinen ist nachgewiesen, dass:

  • Pk1n,mk2
  • Pkl2l<k

Wenn dies nicht "springen" genug ist, lesen Sie weiter. Für Hypergraphen mit disjunkten Hyperkanten wird Folgendes angezeigt:

  • Pk1k2
  • Pklm2l<k

Laurent Lyaudet. 2010. NP-harte und lineare Varianten der Hypergraph-Partitionierung. Theor. Comput. Sci. 411, 1 (Januar 2010), 10-21. http://dx.doi.org/10.1016/j.tcs.2009.08.035

Raphael
quelle
5

Interessante Komplexitätssprünge sind für das Job-Shop-Scheduling-Problem bekannt.

In dem Job-Shop-Problem haben wir eine Menge von Jobs, die auf einer gegebenen Menge M von m verarbeitet werden müssennMmjμjO1j,O2j,,OμjjOichjpichjmichjMCjj

Cmeinx=meinxjCjCj

J||γγ

J2|n=k|FJ|n=2|FJ2 (n=k)2 (k)F

J3|n=3|CmeinxJ3|n=3|C

J2||CmeinxJ2||C

Somit können wir hier sehen, dass es einen Sprung gibt, wenn wir von zwei Jobs / Maschinen auf drei wechseln.

Oleksandr Bondarenko
quelle
1
Gut, ich bin mit der speziellen Terminologie verwirrt. Könnten Sie bitte die Terminologie vereinfachen (oder noch besser entfernen)?
Mohammad Al-Turkistany
1

lnn(1-O(1))lnn

Andras Farago
quelle
0

Ich denke, das Pascal-Dreieck wäre es. Jede Zeile im Pascal-Dreieck summiert sich zu 2n . Die Elemente sind Binomialkoeffizienten. Wenn Sie also ein Problem finden, dessen Leistung mit Hilfe von Binomialkoeffizienten beschrieben werden kann, müssen Sie bereits alle Probleme lösen, die mit der n-ten Zeile des Pascal-Dreiecks zusammenhängen2n(ein+b)n=ich0 ..n(nich)einichbn-ichkann als Polynom (von 'a') dargestellt werden, dessen Faktoren Binomialkoeffizient multipliziert mit Potenzen von 'b' sind. Wenn 'b' konstant ist, ist dies ein Polynom n-ter Ordnung (beschrieben durch zwei Variablen), die wie ein Pascal-Dreieck angeordnet sind. Wenn Sie dann alle Probleme in der n. Reihe lösen, müssen SieDTIME(2npb(ein)ein=b=12n=p1(1)DTichME(2n)(k<n)P=NP=DTichME(2n)P=NP

Esa Pulkkinen
quelle