PSPACE-complete

Im Computerkomplexitätstheorie, a Entscheidungsproblem ist PSPACE-Complete Wenn es unter Verwendung einer Menge Speicher gelöst werden kann, die in der Eingangslänge polynomisch ist (Polynomraum) und wenn jedes andere Problem, das im Polynomraum gelöst werden kann in Polynomzeit in es transformiert. Die Probleme, die PSPACE-Complete sind PSPACEDie Klasse der Entscheidungsprobleme, die im Polynomraum lösbar sind, da eine Lösung für jedes solche Problem leicht verwendet werden kann, um ein anderes Problem in der PSPACE zu lösen.

Bekannte Probleme, die PSPACE-Complete sind, umfassen die Bestimmung der Eigenschaften von Reguläre Ausdrücke und Kontextsensitive Grammatiken, die Wahrheit von zu bestimmen Quantifizierte Boolesche Formeln, Schritt-für-Schritt-Änderungen zwischen Lösungen kombinatorischer Optimierungsprobleme und vielen Rätseln und Spielen.

Theorie

Ein Problem wird als PSPACE-Vervollständigung definiert, wenn es unter Verwendung einer Polynommenge des Gedächtnisses gelöst werden kann (es gehört zu PSPACE), und jedes Problem in PSPACE kann in der Polynomzeit in eine äquivalente Instanz des gegebenen Problems umgewandelt werden.[1]

Es wird weithin vermutet P (Polynomzeit) und Np (Nichtdeterministische Polynomzeit), aber das ist nicht bekannt.[2] Es ist bekannt, dass sie außerhalb der Klasse liegen NC, eine Klasse von Problemen mit hocheffizienter Parallelalgorithmen, weil Probleme in NC in einer Menge an Raumpolynom in der gelöst werden können Logarithmus der Eingangsgröße und die Klasse von Problemen, die in einer so kleinen Menge an Raum lösbar sind Raumhierarchie Theorem.

Die Transformationen, die normalerweise bei der Definition der PSPACE-Abschlussheit berücksichtigt werden, sind Polynomzeit Viele Reduktionen, Transformationen, die eine einzelne Instanz eines Problems eines Typs in eine äquivalente einzelne Instanz eines Problems eines anderen Typs führen. Es ist jedoch auch möglich, Vollständigkeit zu definieren Turing -Reduktionen, in welchem ​​Problem in einer Polynomzahl von Aufrufen an eine Unterroutine für das andere Problem gelöst werden kann. Es ist nicht bekannt, ob diese beiden Arten von Reduktionen zu verschiedenen Klassen von PSPACE-Vervollständigungsproblemen führen.[3] Andere Arten von Reduktionen, wie z. B. viele eins Reduktionen, die immer die Länge des transformierten Eingangs erhöhen, wurden ebenfalls berücksichtigt.[4]

Eine Version der Berman -Hartmanis -Vermutung Für PSPACE-Complete-Sets gibt es an, dass alle dieser Sets in dem Sinne gleich aussehen, dass sie alle durch Polynomzeit ineinander transformiert werden können Biujeionen.[5]

Beispiele

Formelle Sprachen

Angenommen regulären Ausdruck Das Bestimmen, ob es jede Zeichenfolge über seinem Alphabet erzeugt, ist eine PSPACE-Vervollständigung.[6]

Das erste bekannte PSPACE-Complete-Problem war das Wortproblem zum deterministisch Kontextsensitive Grammatiken. Im Wortproblem für kontextsensitive Grammatiken erhält man eine Reihe von grammatikalischen Transformationen, die die Länge eines Satzes erhöhen, aber nicht abnehmen können, und möchte feststellen, ob ein bestimmter Satz durch diese Transformationen erzeugt werden kann. Die technische Bedingung des "Determinismus" (was ungefähr, dass jede Transformation deutlich macht, dass sie verwendet wurde) stellt sicher, dass dieser Prozess im Polynomraum gelöst werden kann, und Kuroda (1964) zeigten, dass jedes (möglicherweise nicht deterministische) Programm in berechnet werden kann linearer Raum könnte in die Analyse einer kontextsensitiven Grammatik umgewandelt werden, auf eine Weise, die den Determinismus bewahrt.[7] 1970,, Savitchs Theorem zeigten, dass PSPACE unter dem Nichtdeterminismus geschlossen ist, was bedeutet, dass selbst nicht deterministische kontextsensitive Grammatiken in PSPACE sind.[1]

Logik

Ein Standard-PSPACE-Complete-Problem, das in vielen anderen PSACE-Completness-Ergebnissen verwendet wird, ist die Quantifiziertes Problem der Booleschen Formel, eine Verallgemeinerung der Boolesche Zufriedenheitsproblem. Das quantifizierte Problem mit der booleschen Formel nimmt einen booleschen Ausdruck als Eingabe an, wobei alle seine Variablen entweder universell oder externziell quantifiziert sind, zum Beispiel:

Die Ausgabe des Problems ist der Wert des quantifizierten Ausdrucks. Das Finden dieses Wertes ist PSPACE-Complete.[1]

Rekonfiguration

Rekonfiguration Probleme betreffen die Konnektivität von a Zustandsraum von Lösungen für ein kombinatorisches Problem. Zum Beispiel ist das Testen, ob zwei 4-Farben eines Diagramms durch Bewegungen miteinander verbunden werden können, die die Farbe eines Scheitelpunkts gleichzeitig ändern und bei jedem Schritt eine gültige 4-Farben-Pace-Complete beibehalten.[8] Obwohl das gleiche Problem für 3-Farben in der Polynomzeit gelöst werden kann.[9] Eine andere Familie von Rekonfigurationsproblemen, die ähnlich wie quantifizierte boolesche Formeln als Grundlage für PSPACE-Vervollständigkeitsnachweise vieler anderer Probleme in diesem Bereich verwendet werden, beinhalten Nichtdeterministische Einschränkungslogik, in denen die Staaten sind Orientierungen eines Einschränkungsgrafiks unter bestimmten Einschränkungen, wie viele Kanten an jedem Scheitelpunkt nach innen ausgerichtet sein müssen und in denen sich die Bewegung von Zustand zu Zustand umgeht, um die Ausrichtung einer einzelnen Kante umzukehren.[10]

Rätsel und Spiele

Das quantifizierte Problem der booleschen Formel kann von zwei Spielern als Spiel interpretiert werden, ein Verifier und ein Falschfehler. Die Spieler machen Bewegungen, die Werte für die quantifizierten Variablen ausfüllen, in der Reihenfolge, in der sie verschachtelt sind, wobei die Überprüfungsfüllung in existenziell quantifizierten Variablen und die Fälumungsfüllung in allgemein quantifizierten Variablen; Das Spiel wird vom Verifizierer gewonnen, wenn die ausgefüllte Formel wahr wird, und vom Fälfen sonst. Eine quantifizierte Formel ist wahr, wenn und nur dann eine Gewinnstrategie aufweist. Ebenso das Problem der Bestimmung des Gewinners oder Verlierers vieler anderer Kombinatorische Spiele Es stellt sich heraus, dass PSPACE-Complete ist. Beispiele für Spiele, die PSPACE-Complete sind (wann verallgemeinert damit sie auf einem gespielt werden können Brett) sind die Spiele Verhexen und Reversi. Einige andere verallgemeinerte Spiele wie z. Schach, Dame (Entwürfe) und gehen sind Expime-Complete Weil ein Spiel zwischen zwei perfekten Spielern sehr lang sein kann, ist es unwahrscheinlich, dass sie in PSPACE sind. Aber sie werden PSPACE-Vervollständigung, wenn eine Polynomgrenze für die Anzahl der Bewegungen durchgesetzt wird.[11]

Es ist auch möglich, dass Rätsel, die von einem einzelnen Spieler gespielt werden, PSPACE-Complete sein. Diese können oft als Rekonfigurationsprobleme interpretiert werden,[10] und schließen die Solitaire Games ein Hauptverkehrszeit, Mahjong, Atomix und Sokoban, und die mechanischer Computer Turing Tumble.[11]

PSPACE-Completness basiert auf Komplexität als Funktion der Eingangsgröße , in der Grenze als wächst ohne gebunden. Rätsel oder Spiele mit einer begrenzten Anzahl von Positionen wie Schach auf einem konventionellen Board kann nicht PSPACE-Complete sein, da sie mit einem sehr großen in konstantem Zeitraum und in konstantem Raum gelöst werden können Nachschlagwerk. Um PSPACE-Complete-Versionen dieser Spiele zu formulieren, müssen sie so geändert werden Board stattdessen. In einigen Fällen, wie z. B. für Schach, sind diese Erweiterungen künstlich.

Verweise

  1. ^ a b c Garey, Michael R.; Johnson, David S. (1979), "Abschnitt 7.4: Polynomraum Vollständigkeit", Computer und Unverdaulichkeit: Ein Leitfaden zur Theorie der NP-VervollständigungW.H. Freeman, pp.170–177, ISBN 0-7167-1045-5
  2. ^ Arora, Sanjeev; Barak, Boaz (2009), Rechenkomplexität: ein moderner Ansatz, Cambridge University Press, p. 92, ISBN 978-1-139-47736-9
  3. ^ Watanabe, Osamu; Tang, Shou Wen (1992), "Über Polynomzeit-Turing und viele Vollständigkeit in Pspace", Theoretische Informatik, 97 (2): 199–215, doi:10.1016/0304-3975 (92) 90074-P, HERR 1163815
  4. ^ Hitchcock, John M.; Pavan, Aduri (2013), "Längenstärkende Reduktionen für PSPACE-Completness", in Chatterjee, Krishnendu; Sgall, Jirí (Hrsg.), Mathematische Grundlagen der Informatik 2013 - 38. Internationales Symposium, MFCS 2013, Klosterneuburg, Österreich, 26. bis 30. August 2013, Proceedings, Vorlesungsnotizen in Informatik, Vol. 8087, Springer, S. 540–550, doi:10.1007/978-3-642-40313-2_48, HERR 3126236
  5. ^ Berman, L.; Hartmanis, J. (1977), "über Isomorphismen und Dichte von NP und anderen vollständigen Sätzen", Siam Journal über Computing, 6 (2): 305–322, doi:10.1137/0206023, HDL:1813/7101, HERR 0455536
  6. ^ Hunt, Harry B. III (1973), "Über die Zeit- und Bandkomplexität von Sprachen, I", in Aho, Alfred V.; Borodin, Allan; Constable, Robert L.; Floyd, Robert W.; Harrison, Michael A.; Karp, Richard M.; Strong, H. Raymond (Hrsg.), Verfahren des 5. jährlichen ACM -Symposiums für Theorie des Computers, 30. April - 2. Mai 1973, Austin, Texas, USA, Assoziation für Computermaschinen, S. 10–19, doi:10.1145/800125.804030, HDL:1813/6007
  7. ^ Kuroda, S.-Y. (1964), "Klassen von Sprachen und linear-rund-Automaten", Informationen und Berechnung, 7: 207–223, doi:10.1016/s0019-9958 (64) 90120-2, HERR 0169724
  8. ^ Bonsma, Paul; Cereceda, Luis (2009), "Pfade zwischen Grafikfarben finden: PSPACE-Completess und Superpolynomentfernungen", Theoretische Informatik, 410 (50): 5215–5226, doi:10.1016/j.tcs.2009.08.023, HERR 2573973
  9. ^ Johnson, Matthew; Kratsch, Dieter; Kratsch, Stefan; Patel, Viresh; Paulusma, Daniël (2016), "Kürzeste Wege zwischen den Grafikfarben finden", Algorithmus, 75 (2): 295–321, doi:10.1007/s00453-015-0009-7, HERR 3506195
  10. ^ a b Hearn, Robert A.; Demaine, Erik D. (2009), Spiele, Rätsel und Berechnung, A k Peters
  11. ^ a b Eppstein, David, Rechenkomplexität von Spielen und Rätseln

Weitere Lektüre