Parametrisierte Komplexität - Parameterized complexity

In der Informatik ist parametrisierte Komplexität ein Zweig der Computational Complexity Theory , der sich auf die Klassifizierung von Rechenproblemen nach ihrer inhärenten Schwierigkeit in Bezug auf mehrere Parameter der Eingabe oder Ausgabe konzentriert. Die Komplexität eines Problems wird dann als Funktion dieser Parameter gemessen . Dies ermöglicht die Klassifizierung von NP-schweren Problemen auf einer feineren Skala als in der klassischen Umgebung, bei der die Komplexität eines Problems nur als Funktion der Anzahl der Bits in der Eingabe gemessen wird. Die erste systematische Arbeit zur parametrisierten Komplexität wurde von Downey & Fellows (1999) durchgeführt .

Unter der Annahme P ≠ NP gibt es viele natürliche Probleme, die eine superpolynomielle Laufzeit erfordern , wenn die Komplexität nur in Bezug auf die Eingabegröße gemessen wird, die jedoch in einer Zeit berechenbar sind, die in der Eingabegröße polynomiell und in a . exponentiell oder schlimmer ist Parameter k . Wenn also k auf einen kleinen Wert festgelegt ist und das Wachstum der Funktion über k relativ klein ist, können solche Probleme trotz ihrer traditionellen Klassifizierung als "unbeherrschbar" immer noch als "behandelbar" betrachtet werden.

Die Existenz effizienter, exakter und deterministischer Lösungsalgorithmen für NP-vollständige oder anderweitig NP-schwere Probleme wird als unwahrscheinlich erachtet, wenn die Eingabeparameter nicht festgelegt sind; alle bekannten Lösungsalgorithmen für diese Probleme erfordern eine exponentielle (oder zumindest superpolynomielle) Zeit in Bezug auf die Gesamtgröße der Eingabe. Einige Probleme können jedoch durch Algorithmen gelöst werden, die nur in der Größe eines festen Parameters exponentiell sind, während die Größe der Eingabe polynomiell ist. Ein solcher Algorithmus wird als lenkbarer (fpt-)Algorithmus mit festen Parametern bezeichnet , da das Problem für kleine Werte des festen Parameters effizient gelöst werden kann.

Probleme, bei denen ein Parameter k festgelegt ist, werden parametrisierte Probleme genannt. Ein parametrisierte Problem , dass für eine solche FPT-Algorithmus ermöglicht wird gesagt , eine sein fester Parameter lenkbar Problem und gehört zur Klasse FPT , und der frühe Name der Theorie der parametrisierte Komplexität wurde fest Parameter Lenkbarkeit .

Viele Probleme haben die folgende Form: ein Objekt gegeben x und eine nicht negative ganze Zahl k , ist x hat eine Eigenschaft, der davon abhängt k ? Für das Problem der Scheitelpunktüberdeckung kann der Parameter beispielsweise die Anzahl der Scheitelpunkte in der Überdeckung sein. In vielen Anwendungen, beispielsweise bei der Modellierung der Fehlerkorrektur, kann man davon ausgehen, dass der Parameter im Vergleich zur Gesamteingabegröße "klein" ist. Dann ist es schwierig, einen Algorithmus zu finden, der nur in k und nicht in der Eingabegröße exponentiell ist .

Auf diese Weise kann parametrisierte Komplexität als zweidimensionale Komplexitätstheorie betrachtet werden. Dieses Konzept ist wie folgt formalisiert:

Ein parametrisiertes Problem ist eine Sprache mit einem endlichen Alphabet. Die zweite Komponente wird als Parameter des Problems bezeichnet.
Ein parametrisiertes Problem L ist mit festen Parametern behandelbar, wenn die Frage " ?" kann in der Laufzeit entschieden werden , wobei f eine beliebige Funktion ist, die nur von k abhängt . Die entsprechende Komplexitätsklasse heißt FPT .

Zum Beispiel gibt es einen Algorithmus, der das Problem der Scheitelpunktüberdeckung zeitlich löst , wobei n die Anzahl der Scheitelpunkte und k die Größe der Scheitelpunktüberdeckung ist. Dies bedeutet, dass die Scheitelpunktüberdeckung mit der Größe der Lösung als Parameter mit festen Parametern steuerbar ist.

Komplexitätsklassen

FPT

FPT enthält die lenkbaren Probleme mit festen Parametern , die für eine berechenbare Funktion f rechtzeitig gelöst werden können . Typischerweise wird diese Funktion als einfach exponentiell betrachtet, wie z. B. aber die Definition lässt Funktionen zu, die noch schneller wachsen. Dies ist für einen großen Teil der Frühgeschichte dieser Klasse von wesentlicher Bedeutung. Der entscheidende Teil der Definition besteht darin, Funktionen des Formulars auszuschließen , wie z . Die Klasse FPL (fixed parameter linear) ist die Klasse von Problemen, die für eine berechenbare Funktion f zeitlich lösbar sind . FPL ist somit eine Unterklasse von FPT.

Ein Beispiel ist das Erfüllbarkeitsproblem , parametrisiert durch die Anzahl der Variablen. Eine gegebene Formel der Größe m mit k Variablen kann durch Brute Force in der Zeit überprüft werden . Eine Knotenüberdeckung der Größe k in einem Graphen der Ordnung n in der Zeit gefunden werden , so dass dieses Problem auch in FPT ist.

Ein Beispiel für ein Problem, von dem angenommen wird, dass es in FPT nicht auftritt, ist die Graphfärbung , die durch die Anzahl der Farben parametrisiert wird. Es ist bekannt, dass 3-Färbung NP-hart ist , und ein Algorithmus für Graph k- Färbung in der Zeit für würde in polynomieller Zeit in der Größe der Eingabe laufen. Wenn also die durch die Anzahl der Farben parametrisierte Graphenfärbung in FPT wäre, dann gilt P = NP .

Es gibt eine Reihe alternativer Definitionen von FPT. Beispielsweise kann die Laufzeitanforderung durch ersetzt werden . Ein parametrisiertes Problem liegt auch in FPT vor, wenn es einen sogenannten Kernel hat. Kernelization ist eine Vorverarbeitungstechnik, die die ursprüngliche Instanz auf ihren "harten Kernel" reduziert, eine möglicherweise viel kleinere Instanz, die der ursprünglichen Instanz entspricht, aber eine Größe hat, die durch eine Funktion im Parameter begrenzt ist.

FPT wird unter einer parametrisierten Reduktion namens fpt-reduction geschlossen , die gleichzeitig die Instanzgröße und den Parameter beibehält .

Offensichtlich enthält FPT alle in Polynomialzeit berechenbaren Probleme. Darüber hinaus enthält es alle Optimierungsprobleme in NP, die ein effizientes Polynomial-Time-Approximation-Schema (EPTAS) ermöglichen .

W- Hierarchie

Die W- Hierarchie ist eine Sammlung von Rechenkomplexitätsklassen. Ein parametrisiertes Problem liegt in der Klasse W [ i ], wenn jede Instanz (in fpt-Zeit) in eine kombinatorische Schaltung umgewandelt werden kann, die höchstens Schuss i hat , so dass genau dann, wenn es eine befriedigende Zuweisung zu den Eingängen gibt, die weist 1 genau k Eingängen zu. Der Schuss ist die größte Anzahl logischer Einheiten mit unbegrenztem Auffächern auf einem beliebigen Pfad von einem Eingang zum Ausgang. Die Gesamtzahl der logischen Einheiten auf den Pfaden (als Tiefe bezeichnet) muss durch eine Konstante begrenzt werden, die für alle Instanzen des Problems gilt.

Beachten Sie das und für alle . Auch die Klassen in der W- Hierarchie sind unter fpt-Reduktion geschlossen.

Viele natürliche Rechenprobleme besetzen die unteren Ebenen W [1] und W [2].

W [1]

Beispiele für W [1]-vollständige Probleme sind

  • Entscheiden, ob ein gegebener Graph eine Clique der Größe k . enthält
  • Entscheiden, ob ein gegebener Graph eine unabhängige Menge der Größe k . enthält
  • Entscheidung, ob eine gegebene nichtdeterministische Single-Tape-Turingmaschine innerhalb von k Schritten akzeptiert ("Short Turing Machine Acceptance"-Problem). Dies gilt auch für nichtdeterministische Turing-Maschinen mit f ( k )-Bändern und sogar f ( k ) von f ( k )-dimensionalen Bändern, aber selbst mit dieser Erweiterung ist die Beschränkung auf die f ( k )-Bandalphabetgröße mit festen Parametern handhabbar. Entscheidend ist, dass die Verzweigung der Turingmaschine bei jedem Schritt von n , der Größe der Eingabe , abhängen darf . Auf diese Weise kann die Turing-Maschine n O( k ) Berechnungspfade erkunden .

W [2]

Beispiele für W [2]-vollständige Probleme sind

  • Entscheiden, ob ein gegebener Graph eine dominierende Menge der Größe k . enthält
  • Entscheiden, ob eine gegebene nichtdeterministische Multi-Tape-Turing-Maschine innerhalb von k Schritten akzeptiert ("kurze Multi-Tape-Turing-Maschinen-Akzeptanz"-Problem). Entscheidend ist, dass die Verzweigung von n abhängen darf (wie bei der W[1]-Variante), ebenso wie die Anzahl der Bänder. Eine alternative W [2]-vollständige Formulierung erlaubt nur Single-Tape-Turing-Maschinen, aber die Alphabetgröße kann von n abhängen .

W [ t ]

kann unter Verwendung der Familie der Weighted Weft- t -Depth- d SAT-Probleme definiert werden für : ist die Klasse parametrisierter Probleme, die fpt-reduziert auf dieses Problem, und .

Hier ist Weighted Weft- t -Depth- d SAT das folgende Problem:

  • Eingabe: Eine Boolesche Formel mit einer Tiefe von höchstens d und einem Schuss von höchstens t und einer Zahl k . Die Tiefe ist die maximale Anzahl von Toren auf einem beliebigen Pfad von der Wurzel zu einem Blatt, und der Schuss ist die maximale Anzahl von Toren des Auffächerns von mindestens drei auf jedem Pfad von der Wurzel zu einem Blatt.
  • Frage: Hat die Formel eine befriedigende Zuweisung des Hamming-Gewichts genau k ?

Es kann gezeigt werden, dass für das Problem Weighted t -Normalize SAT für Unterfpt-Reduktionen vollständig ist . Hier ist Weighted t -Normalize SAT das folgende Problem:

  • Eingabe: Eine Boolesche Formel der Tiefe höchstens t mit einem UND-Gatter darüber und einer Zahl k .
  • Frage: Hat die Formel eine befriedigende Zuweisung des Hamming-Gewichts genau k ?

W [ P ]

W [ P ] ist die Klasse von Problemen, die von einer nichtdeterministischen Turingmaschine entschieden werden können, die bei der Berechnung höchstens nichtdeterministische Entscheidungen trifft (eine k- beschränkte Turingmaschine). Flum & Grohe (2006)

Es ist bekannt, dass FPT in W[P] enthalten ist, und es wird angenommen, dass die Inklusion streng ist. Die Lösung dieses Problems würde jedoch eine Lösung des P-gegen-NP- Problems implizieren .

Andere Verbindungen zur nicht parametrisierten Rechenkomplexität sind, dass FPT gleich W [ P ] ist, wenn und nur wenn die Erfüllbarkeit der Schaltung in der Zeit entschieden werden kann , oder wenn und nur wenn es eine berechenbare, nicht abnehmende, unbeschränkte Funktion f gibt, so dass alle Sprachen von einem nichtdeterministischen Polynom erkannt werden -Zeit-Turingmaschine mit nichtdeterministischen Entscheidungen sind in  P .

W [ P ] kann man sich grob als die Klasse von Problemen vorstellen, bei denen wir eine Menge S von n Elementen haben und eine Teilmenge der Größe k finden wollen, so dass eine bestimmte Eigenschaft gilt. Wir können eine Auswahl als Liste von k ganzen Zahlen codieren , die im Binärformat gespeichert sind. Da die höchste dieser Zahlen n sein kann , werden Bits für jede Zahl benötigt. Daher werden Gesamtbits benötigt, um eine Auswahl zu codieren. Daher können wir eine Teilmenge mit nichtdeterministischen Auswahlmöglichkeiten auswählen .

XP

XP ist die Klasse parametrisierter Probleme, die für eine berechenbare Funktion f rechtzeitig gelöst werden können . Diese Probleme werden scheibenweises Polynom genannt, in dem Sinne, dass jede "Scheibe" von festem k einen polynomischen Algorithmus hat, wenn auch möglicherweise mit einem anderen Exponenten für jedes k. Vergleichen Sie dies mit FPT, das lediglich einen anderen konstanten Vorfaktor für jeden Wert von k zulässt. XP enthält FPT, und es ist bekannt, dass diese Eindämmung durch Diagonalisierung streng ist.

para-NP

para-NP ist die Klasse parametrisierter Probleme, die durch einen nichtdeterministischen Algorithmus zeitlich für eine berechenbare Funktion f gelöst werden können . Es ist bekannt, dass genau dann, wenn .

Ein Problem ist para-NP-schwer, wenn es bereits für einen konstanten Wert des Parameters -schwer ist . Das heißt, es gibt eine "Scheibe" von festem k , die -hart ist. Ein parametrisiertes Problem, das -hard ist, kann nicht zur Klasse gehören , es sei denn, . Ein klassisches Beispiel für ein -hart parametrisiertes Problem ist die Graphfärbung , parametrisiert durch die Anzahl k der Farben, für die bereits -hart ist (siehe Graphfärbung#Computational Complexity ).

Eine Hierarchie

Die A-Hierarchie ist eine Sammlung von Rechenkomplexitätsklassen ähnlich der W-Hierarchie. Während jedoch die W-Hierarchie eine in NP enthaltene Hierarchie ist, ahmt die A-Hierarchie die Polynomialzeit-Hierarchie der klassischen Komplexität genauer nach. Es ist bekannt, dass A[1] = W[1] gilt.

Anmerkungen

  1. ^ Chen, Kanj & Xia 2006
  2. ^ Grohe (1999)
  3. ^ Buss, Jonathan F., Islam, Tarique (2006). "Vereinfachung der Schusshierarchie" . Theoretische Informatik . 351 (3): 303–313. doi : 10.1016/j.tcs.2005.10.002 .CS1-Wartung: mehrere Namen: Autorenliste ( Link )
  4. ^ Flum & Grohe , p. 39.

Verweise

Externe Links