P (polynomische Zeit) vs. NP (nicht-polynomische Zeit) ist eine Frage, die sich mit den zugrunde liegenden Komplexitätswurzeln bestimmter Problembereiche befasst. Ein P-Problem ist beispielsweise ein Problem, bei dem die Lösungszeit in polynomischer Zeit zunimmt. Wir haben ein Array von Zahlen: [a, b, c, d, e, f, g], und die Aufgabe besteht darin, diese Zahlen zu sortieren. Aktuelle Algorithmen lösen dieses Problem, indem sie jede Zahl einzeln durchgehen, und wenn die aktuelle Zahl kleiner als die letzte ist (falls wir aufsteigend sortieren), wird die Zahl um eine Stelle nach hinten verschoben. Je mehr Zahlen wir dem Array hinzufügen, desto länger dauert eine vollständige Sortierung. Diese Zunahme erfolgt jedoch schrittweise und vorhersehbar.
Bei NP-Problemen ist die Komplexität des Problems wesentlich größer. Ein solches NP-Problem ist beispielsweise das „Problem des Handlungsreisenden“ (TSP). Bei diesem Problem wird eine Karte mit einer bestimmten Anzahl von Städten vorgegeben: sagen wir Städte [a, b, c, d, e, f, g]. Ziel ist es, die kürzeste Route zwischen all diesen Städten zu finden. In diesem Fall erhöht sich die zum Finden der Lösung benötigte Zeit drastisch, je mehr Städte wir hinzufügen.
Zum besseren Verständnis stellen wir uns vor, dass bei einem P-Problem die Zeiterhöhung einer Addition ähnelt, bei der mit jedem neuen Datum, das zum Satz hinzugefügt wird, die Zeit um die Summe der im Datensatz gefundenen Datenpunkte zur aktuellen Zeit zunimmt. Bei unserem Sortierproblem beispielsweise beträgt die Zeit, die zum Lösen des Problems benötigt wird, wenn wir eine Zahl haben, 1 (nicht 0, da am Ende eine Überprüfung erforderlich ist), und mit der Hinzufügung der zweiten Zahl wird die Zeit zu 1 + 2 = 3. Die dritte Zahl (+3) bringt die Zeit auf 6, die vierte (+4) auf 10 und so weiter.
Bei den NP-Problemen, im Fall von TSP, multiplizieren wir beispielsweise für jede hinzugefügte Stadt die Nummer der hinzugefügten Stadt mit der aktuell benötigten Zeit. Bei einer einzelnen Stadt ist die Zeit 1, bei zwei Städten wird die Zeit 1 x 2 = 2 und bei 3 Städten erhalten wir 2 x 3 = 6. Die vierte Stadt erhöht die Zeit auf 6 x 4 = 24 und so weiter. Natürlich ist dies kein gültiges und realistisches Szenario für eine Zeiterhöhung, aber es ist eine gute Möglichkeit, zu visualisieren, wie viel mehr Zeit benötigt wird, wenn der Datensatz eines NP-Problems im Vergleich zum Datensatz eines P-Problems zunimmt.
Nachdem wir nun die beiden Problemtypen verstanden haben, stellt sich für uns die folgende Frage: Ist P gleich NP (was bedeutet, dass wir mit den richtigen Werkzeugen und Algorithmen jedes Problem, NP oder P, effizient in polynomieller Zeit lösen könnten) oder sind sie unterschiedlich (was bedeutet, dass die Komplexität eine inhärente Eigenschaft des Problembereichs ist und es daher Probleme gibt, die wir nie vollständig bewältigen können, egal wie weit unser Wissen und Verständnis fortgeschritten ist).
Wer mit dem P-NP-Problem vertraut ist, meint, dass sie von Natur aus unterschiedlich sind und dass es Probleme gibt, die wir vielleicht nie effizient lösen können. Doch wozu dient unsere Neugier und unser Verständnis, wenn nicht dazu, diese Trennung zwischen den beiden Problemtypen aufzuheben?
In den folgenden Abschnitten werde ich meine Sichtweise und die Blickwinkel darlegen, die ich zur Betrachtung dieses Problems gefunden habe. Am Ende des Artikels hoffe ich, dass ich Ihnen ein ganzheitliches Verständnis dieser beiden miteinander verflochtenen Problembereiche klar vermitteln konnte.
Um die Natur der Probleme besser zu verstehen, werden wir uns ein wenig auf den Pfaden der Philosophie bewegen und uns nach der Natur von Einfachheit und Komplexität fragen. Wenn Komplexität letztlich etwas anderes ist als Einfachheit, könnten wir einfach und wahrheitsgemäß annehmen, dass es Probleme (NP) gibt, für die komplexe Lösungsräume (d. h. Quantensuperpositionalität) erforderlich sind, um das Problem in einigermaßen polynomieller Zeit zu lösen.
Im Fall des TSP-Problems würde ein komplexer Lösungsraum einen Lösungspfad bezeichnen, der alle Städte und ihre jeweiligen Positionen berücksichtigt und alle diese beibehält, um ein vernünftiges Gleichgewicht zwischen den Städten zu finden. Aber selbst wenn wir alle erforderlichen Gewichte berücksichtigen, ist die Stadt, von der wir ausgehen, genauso wichtig wie der Weg, den der Algorithmus zurücklegt, um die effizienteste Route zu finden, richtig? Wenn wir von Stadt A ausgehen, nimmt der effizienteste Pfad eine bestimmte Form an; wenn wir von Stadt B ausgehen, sieht der effizienteste Pfad anders aus.
Oder vielleicht ist das eine falsche Schlussfolgerung. Schließlich gibt es nur einen einzigen und letzten Endes ist der effizienteste Weg der effizienteste, einfach weil er die kürzeste Verbindung zwischen allen Städten darstellt. Wir suchen nicht nach dem kürzesten Weg von Stadt A nach Stadt B, sondern nach dem kürzesten Weg, der alle Städte miteinander verbindet. In dieser Ansicht könnten wir die kürzeste Route visualisieren, ähnlich einem „kollabierten“ Zustand, in dem die Gesamtentfernung zwischen den Städten am kürzesten ist.
Wenn wir „Brute-Force“-Algorithmen verwenden, die alle möglichen Pfade bilden und diese dann vergleichen, sind alle diese Pfade das Ergebnis derselben „Brute-Force“-Argumentation des Algorithmus, und jede Instanz der Pfadbildung ist letztlich eine lineare Argumentation. Und wenn wir zufällig die kürzeste Route finden würden, hätten die „Brute-Force“- und „Zufalls“-Aspekte des Algorithmus keine Möglichkeit zu wissen, ob diese Route letztlich die kürzeste ist.
Dieser Ansatz scheint von den Fähigkeiten des maschinellen Lernens zu profitieren, das letztlich darauf trainiert ist, Näherungen vorzunehmen. Stellen Sie sich vor, Sie trainieren eine KI mit Stadtkarten und dem kürzesten Weg zwischen ihnen. Auf diese Weise könnten wir statt „Brute-Force“-Algorithmen zu „Educated-Guess“-Algorithmen wechseln, die eine spürbare Effizienzsteigerung erbringen.
Oh, aber dann bräuchten wir immer noch einen absoluten Weg, um diesen kürzesten Pfad zu finden. Und derzeit gibt es keine Möglichkeit, mit 100-prozentiger Genauigkeit zu wissen, ob der vor uns liegende Pfad der kürzeste ist. In diesem Sinne zielen Heuristiken und andere mathematische Modelle darauf ab, ein Verständnis der logischen Grundlage zu vermitteln, das uns den effizientesten Pfad verrät. Doch diese Ansätze sind derzeit unvollständig, und wir wissen nicht einmal, ob sie uns, wenn sie vollständig sind, immer noch die genaueste Antwort oder nur eine „rohe“ Vermutung liefern können.
Ich bin vielleicht ein wenig vom Thema Einfachheit und Komplexität abgekommen. Oder vielleicht davon, sie auf eine wirklich philosophische Weise anzugehen. In diesem Sinne habe ich im Grunde nur gefragt, ob wir in unserem Ansatz irgendwie ein bestimmtes Komplexitätsniveau erreichen könnten und ob wir ein „Ja“ erhalten würden, sobald wir die richtige Lösung gefunden hätten. Aber da der kürzeste Weg auf jeder Karte mit einer beliebigen Anzahl von Städten existiert, muss er bestimmte Werte und bestimmte Details haben, die ihn aus der Masse hervorstechen lassen, oder?
Oder vielleicht tauchen diese Details erst nach endlosen Schleifen durch verschiedene Pfade in Form der insgesamt zurückgelegten Entfernung auf. Aber diese Annahme ist vielleicht einfach irrational. Schließlich ist der kürzeste Pfad der kürzeste, egal, wie oft wir ihn durchlaufen. Je öfter wir verschiedene Schleifen durchlaufen, desto besser verstehen wir, welcher kürzer und welcher größer ist. Diese Schlussfolgerung ist jedoch möglicherweise nur in Fällen erforderlich, in denen wir zwischen atomar kleinen Schleifen mit unzureichend genauen Messinstrumenten unterscheiden möchten.
Es ist nun verständlich, dass das Problem hier nicht darin besteht, die Wahrheit der Untersuchung herauszufinden, sondern vielmehr die Leistungsfähigkeit der Werkzeuge, die wir verwenden, um sie zu testen. Wenn es darum geht, einen Baum zu fällen, verwenden wir eine Axt. Wenn es darum geht, Musik zu hören, verwenden wir unsere Kopfhörer. Wenn es darum geht, Mathematik zu formalisieren und zu verstehen, verwenden wir logisch aufgebaute Werkzeuge.
Und vielleicht ist das die Schönheit, die der Mathematik innewohnt. Wir nehmen etwas Einfaches, verschmelzen es mit einem anderen einfachen Ding, und zusammen bilden sie etwas Komplexes, das es uns beispielsweise ermöglicht, uns diagonal zu bewegen. Oder einen perfekten Kreis zu zeichnen oder so. Aber wie viele solcher einfachen Werkzeuge können dann miteinander verbunden werden? Ab wann können wir zwei komplexe Werkzeuge miteinander vermischen? Und wenn ja, können wir dieses höher komplexe Werkzeug nur erreichen, indem wir die beiden niedrigeren Komplexe verschmelzen, oder auch, indem wir alle niedrigeren einfachen Werkzeuge verschmelzen, die sie bilden?
Heuristiken sind in diesem Sinne wie jene Werkzeuge, mit deren Zusammenspiel wir eine Möglichkeit finden können, mit 100-prozentiger Genauigkeit zu beantworten, ob wir den kürzesten Weg zwischen den Städten gefunden haben oder nicht. In dieser Hinsicht sind Heuristiken wie ein Lösungsbeweiser, aber um diese Lösung zu finden, benötigen wir möglicherweise andere Ansätze. Letzten Endes sind die Wurzeln von P vs. NP so tief mit der Natur der Komplexität selbst verbunden, dass wir uns fragen müssten, ob wir zwei (und sogar mehr) unterschiedliche Wege in einer einzigen linearen Zeit gehen könnten.
Es ist interessant, hier draußen zu sein. Da draußen. Nach einer dreißigminütigen Schreibpause wurde eine Pause genutzt, um die folgenden Ideen in die beste Reihenfolge und auf die verständlichste Weise zu bringen. Und tatsächlich sind die Ideen klarer denn je; sie brachen sogar in einen sich vollständig schließenden Zyklus zusammen. Und dann entpuppte sich dieser Zyklus als ein Punkt, als leuchtender Teil des Ganzen, und er leuchtet nicht, weil er in Bezug auf das gesamte System in irgendeiner Weise besonders ist, sondern weil er der aktuelle Raum, das aktuelle Verständnis und der Ort ist, an dem wir sitzen. Es ist ein Ort, an dem wir, wenn wir nach oben schauen, sowohl Komplexität als auch Einfachheit finden. Wenn wir nach unten schauen, finden wir dasselbe. Wenn wir zur Seite schauen, ist es nicht anders.
In dieser Hinsicht ist es so wahr, dass wir finden, wonach wir suchen. Wenn wir nach der Natur von NP suchen, dem ewig Komplexen, finden wir sie tatsächlich in ihrer äußerst komplexen Natur. Dabei entfernen wir auch die Einfachheit daraus, um sicherzustellen, dass wir die Leiter wegwerfen, nachdem wir sie erklommen haben. Aber wenn wir dann nach Wegen suchen, die beiden Ansichten in Einklang zu bringen, P und NP als bloße Teile eines ganzheitlichen Verständnisses zusammenzuführen, in dem ein Problem, damit es existiert, eine klare Lösung erfordert, dann können wir verstehen, dass mit genügend Streben und Hingabe letztendlich eine Lösung gefunden werden kann. Und egal, wie schwer diese Lösung auch zu finden sein mag, es besteht immer das Potenzial, sie auf die fließendste und greifbarste Weise zu erreichen.
Und um die Verwirrung durch die Worte zu beseitigen, möchte ich sagen, dass ich dafür eintrete, dass P letztlich gleich NP ist. Und zwar ganz einfach, weil, wenn wir die Lösung noch nicht gefunden haben, das nicht bedeutet, dass sie nicht da ist und darauf wartet, dass wir darüber stolpern. Und wenn Sie mich optimistisch nennen, möchte ich sagen, dass ich mich selbst als realistisch betrachte.
Vielleicht habe ich die Schlussfolgerung schon geschrieben, bevor ich den Artikel beendet habe. Aber mir gefällt dieser Stil. Er vermittelt das Gefühl eines „lebendigen“ Stils, bei dem ich nicht einfach eine Idee auf die andere aufbaue, sondern die Hoffnung hege, dass ich mich bis zum Ende so klar ausgedrückt habe.
Die Art der wissenschaftlichen Abhandlungen besteht darin, dass Sie zuerst Ihre Zusammenfassung verfassen, etwa: „P ist gleich NP, weil Einfachheit und Komplexität miteinander verknüpft sind.“, und anschließend Ihre Punkte und Gedanken dazu äußern, warum und in welcher Weise dies zutrifft.
Bei einem Artikel hingegen besteht das Ziel darin, der Person, die ihn liest, etwas verständlich zu machen; das ist vergleichbar mit Unterrichten. Wissenschaftliche Forschung hingegen wird mit dem Ziel verfasst, dass Leute, die sich bereits mit dem Thema auskennen, ihre Gedanken und Meinungen zu den dargelegten „Argumenten“ äußern. Wenn jemand über Kenntnisse verfügt, die all diese Punkte und noch mehr miteinander verknüpfen können, dann werden diese „Argumente“ neu formuliert, logisch vervollständigt und wissenschaftlich begründet und werden zu einer „Entdeckung“.
Stellen Sie sich vor, man würde beide Stile miteinander verschmelzen. Was würde dabei herauskommen? Es wäre wie ein allmähliches Wachstum der Ideen, bei dem eine Erkenntnis nach der anderen entsteht. Die Zusammenfassung würde in diesem Sinne an Bedeutung verlieren, da nicht einmal der Autor wüsste, wohin der Weg führen würde. In diesem Sinne hat der Autor möglicherweise eine vage Idee oder einen selbst auferlegten Ausgangspunkt, etwa den Beweis, dass P gleich NP ist oder dass P sich von NP unterscheidet. Später, bei diesem Aufbau der Erkenntnisse, kann ein kleiner Fehler in eine völlig andere Richtung weisen, und dann wird der Versuch, einen Rückzieher zu machen, ohne das letzte Argument zu löschen, nur zu Verwirrung führen.
Genauso wie ich zu meinem ursprünglichen Aufbau zurückging, bevor ich Teil 3 bewusst in die Schlussfolgerung umformulierte, die ich für gut befand und die ich schön fand. Aber wie sollte ich dorthin zurückkehren? Ich meine, Sie als Leser haben vielleicht eine Idee nach der anderen aufgebaut und versucht, eine Gesamtform oder -gestalt zu erfassen. Aber das ist das Schöne an der ganzen Sache, nicht wahr? Wir können Pausen von unserem logischen Denken machen, Kreativität unser Potenzial entfalten lassen und dann neu und erfrischt wieder von vorne beginnen, mit neuen Perspektiven und effizienteren Wegen, um zur Antwort zu gelangen. Und in diesem Sinne war Teil 3 nur eine Pause von all dem. Und ich werde jetzt eine weitere Pause machen, nur um einen kleinen Spaziergang zu machen. Danach werden wir uns mit Teil 4 befassen.
Wenn wir an ein Fraktal denken, stellen wir uns ein sich selbst wiederholendes Muster vor, das auf allen Skalen und in allen Dimensionen dieselben Eigenschaften aufweist. Die Mandelbrot-Menge ist beispielsweise ein Fraktal, das so etwas wie eine Zelle darstellt, und wenn Sie in diese Zelle hineinzoomen, finden Sie immer wieder ähnliche Strukturen. Nun, diese genau ähnlichen zellähnlichen Strukturen sind nicht so häufig, wie Sie vielleicht denken. Das Fraktal ist letztendlich so großartig, dass Sie jedes Detail, das diese Zelle ausmacht, mit äußerster Klarheit sehen können, wenn Sie immer weiter hineinzoomen.
Es gibt Teile, die Grashalmen ähneln, und andere Teile, die der Lichtkrümmung ähneln, die man sieht, wenn Licht hinter einem schwarzen Loch hindurchgeht, neben vielen anderen interessanten Aspekten. Und wenn Sie immer weiter hineinzoomen, gelangen Sie schließlich zu derselben Ausgangszelle, die in atomar kleinen Maßstäben im Verhältnis zur Ausgangszelle wiederholt wird. Und von dort aus können Sie noch weiter hineinzoomen.
Im Wesentlichen ist ein Fraktal also so etwas wie ein Weg von einem einfachen P-Problem, das, wenn man es in seiner ganzen potenziellen Komplexität betrachtet, zu einem sehr verwirrenden NP-Problem wird, das einfach aufgrund der unglaublichen Rechenleistung (selbst wenn der Lösungsweg linear ist) unlösbar scheint. Sie können beispielsweise aus „Zeichnen Sie den Mandlebort-Satz mit 3000-facher Vergrößerung“ ein P-Problem machen, und die Lösung ist linear. Das Programm durchläuft einfach den fraktalen Raum, sammelt die Daten Stück für Stück und kopiert sie auf das andere Blatt Papier. Aber die Zeit, die zum Erstellen der vollständigen Zeichnung erforderlich ist, kann einfach enorm sein. Vielleicht, es sei denn, wir geben dem Programm genügend Speicher und Effizienz, um sich alles zu merken und es dann mit der gleichen oder sogar noch höheren Effizienz einzufügen.
Wäre nun ein Problem wie „Kopieren Sie die Mandlebrot-Menge vollständig auf dieses Papier“ ein NP-Problem? Schließlich würde es aufgrund der Unendlichkeit des Zooms, den wir erreichen können, unendlich lange dauern, bis wir am ersten Pixel vorbeikommen, nicht wahr? Aber wie können wir dann das Fraktal in irgendeinem Maßstab sehen, wenn darunter eine unendliche Komplexität liegt, die gezeichnet werden muss? Vielleicht erstellt der Algorithmus, der das Fraktal zeichnet, das erste Bild und arbeitet dann unendlich weiter, um immer höhere Komplexitäts- und Tiefenebenen zu erreichen. Und das bringt einen zum Nachdenken: Was wäre, wenn wir ab einer bestimmten halbunendlichen Tiefe (oder Komplexität) eine andere Figur finden würden? Oder vielleicht passieren wir einen Punkt, ab dem das Mandlebrot-Fraktal auf andere, möglicherweise entgegengesetzte Weise dargestellt wird.
Angesichts solch verwirrender Fragen haben wir das Gefühl, dass wir eine Pause brauchen. Als ob unser Gehirn einfach überlastet wäre, weil es versucht hat, diese Skalen zu verarbeiten. Aber wir betreiben hier ja auch keine wissenschaftliche Forschung; unser Ziel ist es einfach, die Komplexität und das enorme Ausmaß des Ganzen zu erforschen, nicht, es zu verarbeiten. Vielleicht ist es einfacher, wenn man relative Gewichte bildet oder verschiedene Arten von Unendlichkeiten findet, die man verwenden kann, um die Größenordnung der Dinge zu verstehen.
Wenn ich beispielsweise davon ausgehe, dass die Mandlebrot-Menge auf der anderen Seite der Unendlichkeit gespiegelt dargestellt wird, dann wäre es logisch, dass der Spiegelungseffekt ab einem halbunendlichen Zoom (oder einer halbunendlichen Tiefe) auftritt. Aber diese Halbunendlichkeit ist nicht real. Unendlichkeit im eigentlichen Sinne legt nahe, dass die Mandlebrot-Menge jeden Zustand, jede Gestalt und jede Form enthält, die jemals existiert hat, jemals existieren kann und jemals existieren wird. Aber es gibt Grenzen, nicht wahr? Es ist klar, dass dieses Fraktal nur ein Muster ist. Ein Muster, das zwar viele Formen annehmen kann, aber dennoch in sich selbst, in seiner eigenen Struktur und seinen eigenen Regeln gebunden ist. Und in jedem Fall ist dieses „nur ein Muster“ an und für sich unglaublich schön und komplex.
Wie ich bereits sagte, können wir beim Entwickeln von Ideen an einen Punkt gelangen, an dem wir einfach das Gegenteil unserer Ausgangsannahme zu schlussfolgern versuchen. Ich meine, wie könnte man glauben, dass P gleich NP ist und dass NP-Probleme nach all dieser Explosion der Komplexität einfach nicht existieren? Aber wie ich im letzten Artikel sagte, wenn wir Ideen ausdrücken, „verweisen“ wir einfach auf ein bestimmtes Konzept. Und als erforderlicher Baustein musste die enorme Komplexität des Fraktals als potenzieller „Zenit“ der Komplexität bereitgestellt werden. Ein Höhepunkt des Verständnisses, wenn es darum geht zu definieren, wie dreidimensionale Unendlichkeit wirklich aussieht. Und jetzt, da wir all diese Unendlichkeit um uns herum haben, wohin können wir gehen?
Wohin wir immer gehen, wenn wir nachdenken wollen. Wir nehmen einen alten Punkt und betrachten die allererste Iteration des Fraktals. Die ganze dreidimensionale Unendlichkeit liegt vor uns. Wir schlussfolgern, dass wir, wenn wir eine Nadel werfen und sehen wollen, wo sie landet, auf ein ziemlich seltsames Phänomen stoßen könnten. Je kleiner die Nadelspitze ist, desto länger dauert es, bis sie fällt, und desto größer wird der Grundraum. Und gleichzeitig wird der getroffene Grundpunkt umso „chaotischer“ oder „unvorhersehbarer“. Aber könnten wir mit genügend unendlich kleinen Nadeln das gesamte Bild des Fraktals erreichen? Egal, wie viel Raum und Nadeln es braucht? Schließlich können wir von diesem Standpunkt aus die Grenzen klar erkennen, und wenn keine perfekte Selbstähnlichkeit im Spiel ist, muss nach jeder Iteration ein gewisser Verlust auftreten.
Aber die Komplexität geht sogar noch weit über diese Karte hinaus. Was die Größe der Nadeln betrifft, haben wir für jede Größe eine einzigartige Karte, die erstellt wird. Aber sind die Karten mit den kleineren Nadeln nicht bloß eine komplexere (und qualitativ hochwertigere) Darstellung der Karten mit den größeren Nadeln? In diesem Sinne stellt die Komplexität eine Art Entfaltung eines detaillierteren Raums dar. Ein Raum, der innerhalb polynomischer Erkundungswege liegt, und selbst im Gegensatz zu den geglaubten Annahmen ermöglicht diese Ausweitung der Komplexität eine genauere und effizientere Erkundung als es ein Mangel an Komplexität tun würde.
Wenn wir beispielsweise statt der vollkommen unendlich komplexen Karte des Fraktals eine weniger komplexe Karte hätten und einen bestimmten bodenbasierten Punkt erreichen wollten, der auf einer komplexeren Karte liegt, müssten wir zunächst einen Punkt auf der weniger komplexen Karte auswählen, auf den wir hineinzoomen und den komplexeren Punkt anzeigen, den wir erreichen wollten. Und diese Idee stellt den gesamten NP-Raum auf den Kopf, während sie gleichzeitig anerkennt, dass die polynomiale Zeit, die zum Lösen bestimmter Probleme erforderlich ist, durchaus Tausende von Jahren dauern könnte, und zwar auf einer polynomialen Straße. Und ganz ehrlich, vielleicht ist die nächste Frage, ob Quantencomputing eine Art Superpositionalität aufweisen könnte, die in der Lage ist, die Zeit von x auf x geteilt durch (die Anzahl der verwendeten Qubits) zu verkürzen.
Bevor ich näher auf die möglichen Implikationen des Quantenansatzes eingehe, halte ich es für angebracht, eine Übersicht über die Behauptungen zu geben, die ich bisher aufgestellt habe.
P und NP sind ein und dasselbe, was bedeutet, dass alle Probleme letztendlich in polynomieller Zeit gelöst werden können, sobald wir den richtigen Problemraum und den richtigen Lösungsraum gefunden haben
NP-Probleme ähneln eher umfangreichen Polynomproblemen, bei denen ihr Lösungsraum so groß und komplex ist, dass das Finden einer Lösung lange dauern würde
Komplexität und Einfachheit sind miteinander verwoben, und in ihrem Zusammenspiel ist es unsere Perspektive und der Grad der erreichten Tiefe, der sie als das eine oder das andere wahrnimmt.
Die komplexen Werkzeuge, die wir entwickeln, werden eingesetzt, um detaillierte Problembereiche effizienter zu lösen, indem wir das Zusammenspiel
zwischen Einfachheit und Komplexität zu ihrem Vorteil
Und wenn wir uns schließlich dem Bereich des Quantencomputings zuwenden, könnte sich die Lage radikal ändern. Hier sind einige mögliche Ansätze.
Trotz allem, was hier gesagt wird, könnte das Quantencomputing seine eigenen einzigartigen NP-Probleme haben, die sich von Natur aus von dem unterscheiden, was das klassische Computing zu bieten hat
Die Natur des Quantencomputings könnte zugleich ein ergänzender und verflochtener Aspekt des klassischen Computings sein und letztlich Werkzeuge anbieten, die für die polynomische Lösung von Quanten-NP-Problemen erforderlich sind.
Diese Quantenwerkzeuge könnten neben klassischen Algorithmen eingesetzt werden, um eine noch höhere Effizienz zu erreichen, die verspricht, die maximale Effizienz beider Paradigmen zu umgehen.
Aktuelle Quantencomputeralgorithmen (ich weiß nicht, wie sie aufgebaut sind) erfordern möglicherweise klassische Computeraspekte als Voraussetzung für die Funktionalität. In diesem Fall müssten wir klassische und Quantenperspektiven in zwei unterschiedliche Computertypen katalogisieren, um sie besser verstehen und zusammenführen zu können.
Angesichts des enormen Potenzials, das in der Quantenkraft steckt, sind die Systeme, die unsere Privatsphäre schützen, ständig bedroht. ZKP-Systeme (Zero-Knowledge-Proof) bieten einen möglicherweise gangbaren Ausweg. Schließlich basieren sie auf der Annahme, dass der Inhaber des Schlüssels beim Entsperrvorgang keinerlei Informationen über den Schlüssel preisgibt. In dieser Sichtweise ist der Schlüssel für alle sichtbar versteckt, direkt unter der Nase derjenigen, die ihn stehlen möchten. Gleichzeitig sind die Grundlagen, auf denen das System aufgebaut ist und funktioniert, in der Lage, das gesamte System vor den Augen von Außenstehenden zu verbergen.
Es wäre, als ob Sie mit Ihrem klassischen, Quanten- oder sogar Quanten-klassischen Computer durch das sich ständig verändernde und immer verschwommene Labyrinth des Computerraums laufen würden, und alles, was Sie um sich herum sehen, ist ein sich ständig verändernder Raum, für den Sie, wenn Sie ihn verstehen wollen, die Informationen über den allerersten Zeitpunkt seiner Entstehung besitzen müssten. Sie müssten Zugriff auf die Bausteine haben, die das System seit seiner Entstehung in Gang gesetzt und geformt haben.
Und in einem Meer aus Unschärfe und Systemen wüssten Sie, selbst wenn Sie Zugriff auf die Bausteine eines bestimmten Systems hätten, nie, auf welches System Sie dieses anwenden sollen. Denn das Meer der miteinander verbundenen Systeme ist viel zu groß und es gibt zu viele Systeme, die sich gegenseitig verändern und in bestimmten Zeitabständen die Form der anderen annehmen.
Für die Systeme selbst wäre es leicht zu wissen, welche Informationen sie akzeptieren sollten und welche nicht, aber gleichzeitig wäre extreme Synchronizität erforderlich, damit jedes System seine eigene einzigartige Perspektive beibehalten kann. Angesichts der Unendlichkeit der Farbverläufe könnte jedoch jeder Baustein seinen eigenen Anfang und sein eigenes fortlaufendes Ziel haben, das an das Erreichen des Farbzustands eines anderen Systems gebunden sein könnte. Man könnte es sich ähnlich vorstellen wie die Funktionsweise von Radiowellen.
Vielleicht könnten die chaotischen Elemente eines solchen Systems eine Art geordnetes System hervorbringen, das, wenn man es als Ganzes betrachtet, einfach keinen Sinn ergibt. Und um es zu entschlüsseln, müsste man die Bausteine einer Chiffre erraten, die Hunderte oder Tausende von Zahlen enthält, die sich innerhalb ihrer eigenen Grenzen ständig verändern.
Je mehr Systeme vorhanden sind, desto geringer sind nach dieser Ansicht die Chancen eines Angreifers, in ein System einzudringen. Gleichzeitig gilt aber auch: Je mehr Systeme vorhanden sind, desto mehr Möglichkeiten hat ein Angreifer. Vielleicht könnte man mit Quantencomputern einen einzigen Schlüssel gleichzeitig auf allen verfügbaren Systemen testen. Kontinuierlich Schlüssel generieren und diese gleichzeitig auf allen Systemen testen.
Sobald der aktuelle Schlüssel gefunden ist, wird jedoch der „erste“ Schlüssel benötigt, um tatsächlich in das System eintreten zu können. Oder noch besser: Indem die ersten 10 Schlüssel im System gespeichert werden, kann ein zufälliger Schlüssel aus diesen zehn Schlüsseln als Voraussetzung für den Eintritt dienen, sobald der eigentliche Statusschlüssel erraten wurde.
Oder Rätsel in Rätseln in Rätseln. Eines ist sicher: Die äußere Komplexität blüht und breitet sich auf allen Ebenen gleichzeitig und mit polynomischer Geschwindigkeit aus. Aber dann muss das System selbst von einem Punkt an so fortgeschritten und chaotisch werden, dass nicht einmal fortgeschrittene außerirdische Entschlüsselungssysteme in der Lage wären, es anzuzapfen, oder?
Wenn wir uns heute unsere Lage ansehen und diese Explosion der Komplexität als Urknall oder, formeller ausgedrückt, als Singularität betrachten, erkennen wir auch, dass diese Fortschritte lediglich den ersten Schritt zu allem, was noch kommen wird, darstellen. Wir befinden uns an einem Punkt, an dem das Nachdenken über die Zukunft tatsächlich mehr denn je dazu beiträgt, sie aufzuhellen. Und ja, das hat schon immer gezählt. Aber jetzt zählt es mehr denn je, und das wird auch in den kommenden Jahrhunderten so sein. Und vielleicht sogar in den Jahrtausenden.
Wer weiß, was wir finden werden? Aber eines ist sicher: Die Entscheidungen, die wir jetzt treffen, werden die Zukunft in eine Richtung lenken, die zukünftige Generationen nicht einmal gewählt haben. Wir sollten also genauso gut ein Auge auf ihre Perspektive haben. In der jüngsten Vergangenheit (und auch in der heutigen Zeit) wurden Menschen ohne ihren Willen in den Krieg geschickt. Menschen wurden gezwungen, zerstörerische Waffen zu entwickeln und sie sogar zu testen.
Was aber, wenn wir uns nur mit den Waffen beschäftigen und stattdessen die Schilde bauen, die wir brauchen, um uns gegen sie zu verteidigen? Warum sollten wir unsere Zeit damit verschwenden, zu versuchen, etwas zu zerstören, was wir noch nicht aufgebaut haben? Auch hier können Sie mich optimistisch nennen, wenn ich sage, dass das Universum letzten Endes von Natur aus gut sein könnte. Aber schließlich hat uns das Universum keine anderen Kämpfe angeboten als den Kampf gegen den Hunger, der es uns letztendlich ermöglicht, die Schönheit und den Geschmack jedes Bissen zu spüren. Und das gilt insbesondere, wenn es um Wissen geht.
Meiner Ansicht nach ist es töricht anzunehmen, dass ein ultrastarker Laser oder eine Reihe kleinerer Laser unseren Planeten besser vor einem Meteoriten schützen können, während wir in Wirklichkeit, wenn wir nur ein bisschen an der Oberfläche kratzen, die Kraft finden können, die Effekte der Quantengravitation zu unserem Vorteil als Antriebskraft zu nutzen, ähnlich einer Bombe, die jedoch ausschließlich Antigravitation verbreitet. Oder wir könnten uns auf eine Rakete konzentrieren, die stark genug ist, um Meteoriten von hinten durch den Einsatz extremer Kräfte von der Bahn abzubringen. Und gleichzeitig können wir die Rakete nutzen, um ganze Züge anzuheben und auf dem Mond abzusetzen.
Und ist das nicht letztlich die Magie des Lösungsraums? Wir können ihn entweder aus einer eingeschränkten Perspektive betrachten, unter der Annahme, dass es Dinge gibt, die wir vielleicht nie erfahren werden, oder wir können die Macht des freien Willens und sein wahres Potenzial anerkennen, ganze Schicksale und Herzen zu formen.