Über die Bedeutung des Nichtdeterminismus
Hier geht es um zwei verschiedene Bedeutungen des Nichtdeterminismus. Die Quantenmechanik wird gewöhnlich als "nicht deterministisch" beschrieben, aber das Wort "nicht deterministisch" wird in der theoretischen Informatik auf spezielle Weise verwendet.
Eine Bedeutung, die für die Quantenmechanik gilt, ist einfach "nicht deterministisch ". Dies ist normalerweise eine vernünftige Art, das Wort zu interpretieren, und tatsächlich sind weder Quanten-Turing-Maschinen noch probabilistische Turing-Maschinen deterministisch in der Art, wie sie Entscheidungsprobleme lösen.
Bei der Beschreibung von Rechenmodellen wird nichtdeterministisch jedoch speziell verwendet, um zu bedeuten, dass die Maschine (in gewissem Sinne) Entscheidungen treffen kann, die nicht durch ihren Zustand oder ihre Eingabe bestimmt werden, um ein bestimmtes Ziel zu erreichen. Diese Bedeutung wird an anderer Stelle bei der Beschreibung von Berechnungsmodellen verwendet, z. B. bei nicht deterministischen endlichen Automaten .
Quanten-Turing-Maschinen sind also ein Rechenmodell, das nicht deterministisch ist, sondern sich von einer "nicht deterministischen Turing-Maschine " unterscheidet.
Nichtdeterministische Turingmaschinen
Eine nicht deterministische Turing-Maschine ist eine Maschine, die mehrere mögliche Übergänge untersuchen kann. Der Übergang, den es bei einem bestimmten Schritt ausführt, hängt vom Status und dem Symbol, das es liest, ab, ist jedoch nicht davon abhängig. Es gibt zwei Möglichkeiten, wie dies allgemein dargestellt wird:
Insbesondere zum Zwecke der Definition der Komplexitätsklasse NP kann man die Maschine als Treffen von Entscheidungen (oder Vermutungen) bei jedem Schritt beschreiben, um zu versuchen, einen akzeptierenden Zustand zu erreichen . Wenn Sie sich vorstellen, dass die nicht deterministische Maschine einen Entscheidungsbaum untersucht, sucht sie nach einem akzeptierenden Pfad im Baum. Während es keinen Mechanismus gibt, der beschreibt, wie ein solcher Pfad gefunden werden sollte, stellen wir uns vor, dass er einen akzeptierenden Pfad finden wird, wenn nur einer existiert.
Es ist auch durchaus üblich , zu sagen , dass eine nichtdeterministische Maschine alle möglichen Pfade in dem Entscheidungsbaum parallel untersucht, und gibt eine Antwort „ja“ , wenn jeder von ihnen erweisen sich als eine akzeptierende Weg sein.
Neuere Behandlungen des Nichtdeterminismus berücksichtigen nicht nur die Existenz, sondern auch die Anzahl der akzeptierenden Pfade. und dies ist gut geeignet für die Beschreibung der parallelen Erkundung aller Pfade. Wir können zusätzliche Einschränkungen auferlegen, zum Beispiel, dass alle Berechnungspfade die gleiche Länge haben (dass die Maschine immer die gleiche Zeit benötigt, um eine Berechnung durchzuführen) und dass jeder Pfad bei jedem Schritt oder bei jedem zweiten Schritt eine Schätzung ausführt, selbst wenn Die Vermutung wird nicht verwendet. Wenn wir dies tun, können wir probabilistische Berechnungsmodelle wie zufällige Turing-Maschinen (motivierende Komplexitätsklassen wie BPP ) in Bezug auf die Anzahl formulierenWege einer nichtdeterministischen Turingmaschine zu akzeptieren. Wir können dies auch umkehren und nichtdeterministische Turing-Maschinen in Form von randomisierten Computern beschreiben, die auf irgendeine Weise zwischen Ergebnissen mit einer Wahrscheinlichkeit von null und solchen mit einer Wahrscheinlichkeit von ungleich null unterscheiden können .
Quantenturing-Maschinen
Der Hauptunterschied zwischen einer Quantenturing-Maschine und einer nicht deterministischen Maschine besteht darin, dass eine Quantenturing-Maschine einen Übergang zu einer Überlagerung von einem oder mehreren möglichen Übergängen durchführt, anstatt einen einzelnen Übergang aus zwei oder mehreren Schritten nicht deterministisch auszuwählen. Der vollständige Zustand der Maschine wird als Einheitsvektor in einem komplexen Vektorraum definiert, der durch lineare Kombinationen von Basiszuständen definiert wird, die durch klassische Zustände des Bandes, die Position des Maschinenkopfes und den "internen Zustand" des Maschinenkopfes beschrieben werden . (Siehe z . B. Seite 9, Definition 3.2.2 der QuantenkomplexitätstheorieFür die vollständige Beschreibung, wie Quanten-Turing-Maschinen Übergänge durchführen.) Die Bedingung, unter der die Quanten-Turing-Maschine eine Eingabe akzeptiert, ist ebenfalls restriktiver und beinhaltet von Natur aus eine Wahrscheinlichkeit, die eine erhebliche Wahrscheinlichkeit erfordert, das richtige Ergebnis zu beobachten, um erfolgreich zu sein.
Infolgedessen unterscheiden sich Quanten-Turing-Maschinen von nichtdeterministischen Maschinen darin, dass die Art und Weise, wie sie ihre Übergänge ausführen, nicht vollständig unbekannt ist. Auch wenn der Übergang "mysteriös erscheint", ist es mit der Zeit dieselbe Art von Evolution, auf die unsere beste Theorie der Materie hinweist, dass sie in der realen Welt stattfindet. Obwohl es üblich ist, Quantencomputer so zu beschreiben, dass sie "verschiedene Rechenpfade parallel erkunden", ist dies nicht besonders nützlich: Die Amplituden auf den verschiedenen Pfaden bedeuten, dass sie nicht alle die gleiche Bedeutung haben, und anders als nicht deterministische Turing-Maschinen ist nicht genug, um eine Amplitude ungleich Null für ein bestimmtes Ergebnis zu haben; Es muss möglich sein, eine sehr große Wahrscheinlichkeit für das Erreichen des korrekten Ergebnisses zu erhalten, z. B. 2/3. (Die Klasse der Probleme BQPdie eine Quanten Turing - Maschine effizient lösen erfordert eine Wahrscheinlichkeitslücke der gleichen Art wie BPP für randomisierte Berechnung hat.) Darüber hinaus sehr viel im Gegensatz zu nichtdeterministischen Turing - Maschinen, eine Quanten Maschine Turing diejenigen miteinander interferieren können , nachdem sie gespalten haben , Das ist bei der typischen Formulierung einer nichtdeterministischen Turing-Maschine einfach unmöglich (und macht die Beschreibung in Form eines Entscheidungsbaums in erster Linie weniger nützlich).
Vergleich der beiden Modelle
Wir wissen nicht, ob eine dieser Maschinen leistungsstärker ist als die andere. Die unterschiedlichen Arten, in denen sie nicht deterministisch sind, scheinen sich zu unterscheiden und sind schwer zu vergleichen.
Was die Probleme betrifft, die jede Maschine schnell lösen kann, die die andere nicht kann (soweit wir wissen):
- Wir wissen nicht, wie eine Quantenturing-Maschine das Problem der ZUFRIEDENHEIT schnell lösen kann . Eine nichtdeterministische Turingmaschine kann das leicht.
- Arbeiten von Aaronson und Archipov ( The Computational Complexity of Linear Optics ) legen nahe, dass es unwahrscheinlich ist, dass nichtdeterministische Turingmaschinen bestimmte Experimente der linearen Optik, die mit einer Quantenturingmaschine simuliert werden könnten, effizient simulieren können.
Aber selbst wenn jemand zeigt, wie man die beiden Maschinentypen miteinander in Beziehung setzt - und selbst in dem äußerst unwahrscheinlichen Szenario, dass jemand BQP = NP zeigt (die Probleme, die eine Quantenturingmaschine und eine nicht deterministische Turingmaschine jeweils schnell lösen können) ) - Die beiden Maschinen, die diese Berechnungsmodelle definieren, unterscheiden sich erheblich voneinander.