
Quantencomputer und Quantenberechnungen sind ein neues , das unser Informationsumfeld zusammen mit , und anderen hochmodernen Begriffen ergänzt. Trotzdem ist es mir bisher nicht gelungen, im Internet Material zu finden, das mir das Puzzle mit dem Titel „Wie funktionieren Quantencomputer?“zusammenfügt. Ja, es gibt viele großartige Arbeiten, auch auf Habré (siehe ), deren Kommentare, wie es oft der Fall ist, noch informativer und nützlicher sind, aber das Bild in meinem Kopf hat sich einfach nicht ergeben.
Kürzlich haben mich Kollegen angesprochen und gefragt: „Verstehst du, wie ein Quantencomputer funktioniert? Kannst du es uns erklären?“ Und da wurde mir klar, dass ich nicht der Einzige bin, der Schwierigkeiten hat, ein ganzheitliches Bild zu bilden.
In der Folge wurde der Versuch unternommen, Informationen über Quantencomputer in ein kohärentes logisches Schema zu kompilieren, das auf einer grundlegenden Ebene, ohne tief in die Mathematik und die Struktur der Quantenwelt einzutauchen, es wurde erklärt, was ein Quantencomputer ist, auf welchen Prinzipien er basiert und welche Probleme Wissenschaftler bei seiner Entwicklung und Nutzung haben.
Inhaltsverzeichnis
Haftungsausschluss
Der Autor ist kein Spezialist für Quantencomputing, und die Zielgruppe des Artikels sind IT-Fachleute, keine Quantenexperten, die sich auch ein Bild davon machen möchten, wie Quantencomputer funktionieren. Aus diesem Grund wurden viele Konzepte im Artikel absichtlich vereinfacht, um ein besseres Verständnis der Quanten Technologien auf „Basis“-Niveau zu gewährleisten, jedoch ohne .
In diesem Artikel werden an einigen Stellen Materialien aus anderen Quellen verwendet, Wo immer möglich, wurden direkte Links und Hinweise auf den Originaltext, Tabellen oder Abbildungen eingefügt. Wenn ich irgendwo etwas (oder jemanden) vergessen habe, lassen Sie es mich wissen – ich werde es korrigieren.
Einführung
In diesem Kapitel werden wir kurz betrachten, wie die Quantenära begann, was die treibende Kraft hinter der Idee des Quantencomputers war, welche Länder und Unternehmen derzeit die führenden Akteure auf diesem Gebiet sind und wir werden auch kurz die wichtigsten Entwicklungsrichtungen der Quantenberechnungen diskutieren.
Wie alles begann

Der Ausgangspunkt der Quantenära wird auf das Jahr 1900 datiert, als M. Planck erstmals die aufstellte, dass Energie nicht kontinuierlich, sondern in diskreten Quanten (Portionen) emittiert und absorbiert wird. Diese Idee wurde von vielen herausragenden Wissenschaftlern dieser Zeit aufgegriffen und weiterentwickelt – von Bohr, Einstein, Heisenberg, Schrödinger, was schließlich zur Schaffung und Entwicklung einer Wissenschaft führte, die als . Es gibt viele gute Materialien über die Entwicklung der Quantenphysik als Wissenschaft im Internet. In diesem Artikel werden wir jedoch nicht im Detail darauf eingehen, es war jedoch notwendig, das Datum zu nennen, an dem wir in die neue Quantenära eingetreten sind.
Die Quantenphysik hat viele Erfindungen und Technologien in unser alltägliches Leben gebracht, ohne die wir uns die heutige Welt schwer vorstellen könnten. Zum Beispiel der Laser, der heutzutage überall eingesetzt wird, von Haushaltsgeräten (Laser-Nivelliergeräte und anderes) bis hin zu hochmodernen Systemen (Lasern zur Sehkorrektur, hallo ). Es wäre nur logisch anzunehmen, dass irgendwann die Idee aufkommt, Quanten-Systeme für Berechnungen zu nutzen. Und genau das geschah 1980.
Wikipedia gibt an, dass die erste Idee für Quantenberechnungen 1980 von unserem Wissenschaftler Yuri Manin geäußert wurde. Wirklich ins Gespräch kam sie jedoch erst 1981, als der nicht unbekannte R. Feynman in , bemerkte, dass es unmöglich ist, die Evolution eines quantenmechanischen Systems auf einem klassischen Computer effizient zu modellieren. Er schlug ein einfaches Modell vor , der in der Lage sein wird, ein solches Modell zu erstellen.
Im Internet gibt es , in der akademischer und detaillierter betrachtet wird, wir werden jedoch kurz zusammenfassen:
Wichtige Meilensteine in der Geschichte der Quantencomputer:
- [1994]. P. Shor. Entwickelt
- [1998]. Der erste 2-Qubit-Quantencomputer wurde erstellt
- des Shor-Algorithmus entwickelt und baut einen Computer mit 128-2000 Qubits
- [2007-2016]. [2012]. An der Universität von Kalifornien wurde der
- Shor-Algorithmus für die Zahl 21 umgesetzt
- modellierte ein Wasserstoffmolekül IBM modellierte das Berylliumhydrid BeH2
- [2017]. IBM Q System One
- [2019]. Google Sycamore
- [2019]. Quantenüberlegenheit ?
Wie Sie sehen können, sind seit der Idee bis zur ersten Umsetzung in einem Computer mit 2 Qubits 17 Jahre vergangen (von 1981 bis 1998), und 21 Jahre (von 1998 bis 2019), bis die Anzahl der Qubits auf 53 anstieg. Es dauerte 11 Jahre (von 2001 bis 2012), um das Ergebnis des Shor-Algorithmus (darauf werden wir gleich näher eingehen) von 15 auf 21 zu verbessern. Auch erst vor drei Jahren waren wir in der Lage, das zu realisieren, worüber Feynman sprach, und zu lernen, einfachste physikalische Systeme zu modellieren.
Die Entwicklung der Quantencomputing-Technologie verläuft langsam. Wissenschaftler und Ingenieure stehen vor sehr komplexen Herausforderungen, da quantenmechanische Zustände sehr flüchtig und zerbrechlich sind. Um sie lange genug für Berechnungen zu erhalten, müssen manchmal Sarkophage gebaut werden, die Millionen von Dollar kosten, in denen die Temperatur nur wenige Grad über dem absoluten Nullpunkt gehalten wird und die maximal gegen äußere Einflüsse geschützt sind. Im Folgenden werden wir diese Herausforderungen und Probleme genauer betrachten.
Führende Akteure

Die Folien für diesen Abschnitt stammen aus einem Artikel , von einem wissenschaftlichen Mitarbeiter Alexej Fyodorov. Erlaube mir, direkt zu zitieren:
Alle technologisch erfolgreichen Länder investieren derzeit aktiv in die Entwicklung von Quantentechnologien. Es werden enorme Mittel in diese Forschung investiert, und es entstehen spezielle Programme zur Unterstützung von Quantentechnologien.

Nicht nur Staaten, sondern auch private Unternehmen sind an dem Quantenrennen beteiligt. Insgesamt haben Google, IBM, Intel und Microsoft in letzter Zeit etwa 0,5 Milliarden Dollar in die Entwicklung von Quantencomputern investiert und große Laboratorien und Forschungszentren eingerichtet.

Auf Habré und im Netz gibt es zahlreiche Artikel, zum Beispiel , und , die den aktuellen Stand der Entwicklungen von Quantentechnologien in verschiedenen Ländern ausführlicher behandeln. Für uns ist momentan das Wichtigste, dass alle führenden technologisch fortgeschrittenen Länder und Akteure enorme Mittel in die Forschung in diesem Bereich investieren, was Hoffnung auf eine Überwindung der aktuellen technologischen Sackgasse gibt.
Entwicklungstrends

Derzeit (ich könnte mich irren, korrigiere mich) konzentrieren sich die Hauptanstrengungen (und einigermaßen signifikante Ergebnisse) aller führenden Akteure auf zwei Bereiche:
- Spezialisierte Quantencomputer, die darauf abzielen, ein bestimmtes spezifisches Problem zu lösen, wie beispielsweise Optimierungsprobleme. Ein Beispiel für ein Produkt sind die Quantencomputer von D-Wave.
- Universelle Quantencomputer – die in der Lage sind, beliebige Quantenalgorithmen (Shor, Grover usw.) auszuführen. Implementierungen von IBM, Google.
Weitere Entwicklungsmöglichkeiten, die uns die Quantenphysik bietet, wie:
- als Grundlage für
- und vieles mehr
stehen ebenfalls auf der Liste der Forschungsrichtungen, jedoch gibt es derzeit keine nennenswerten Ergebnisse.
Zusätzlich können Sie , und suchen Sie nach “”, zum Beispiel. , und .
Grundlagen. Quantensysteme und Quantenobjekte

Das Wichtigste, das man aus diesem Abschnitt verstehen sollte, ist, dass
ein Quantencomputer (im Gegensatz zu einem klassischen) Informationsträger quantenmechanische Objekte, und für die Berechnungen müssen die quantenmechanischen Objekte zu einem Quantensystem.
verbunden sein. Was ist also ein quantenmechanisches Objekt?
Ein quantenmechanisches Objekt — ein Objekt der Mikrowelt (der Quantenwelt), das quantenmechanische Eigenschaften zeigt:
- Besitzt einen definierten Zustand mit zwei Grenzebenen
- Befindet sich in einer Überlagerung seines Zustands bis zum Zeitpunkt der Messung
- Verschränkt sich mit anderen Objekten zur Bildung quantenmechanischer Systeme
- Erfüllt das Klonverbot (der Zustand des Objekts kann nicht kopiert werden)
Lassen Sie uns jedes dieser Eigenschaften genauer betrachten:
Besitzt einen definierten Zustand mit zwei Grenzebenen (endlicher Zustand)
Ein klassisches Beispiel aus der realen Welt ist eine Münze. Sie hat den Zustand „Seite“, der zwei Grenzebenen annimmt – „Kopf“ und „Zahl“.
Befindet sich in einer Überlagerung seines Zustands bis zum Zeitpunkt der Messung
Wenn wir die Münze werfen, fliegt sie und dreht sich. Solange sie sich dreht, ist es unmöglich zu sagen, in welchem der Grenzebenen sich ihr Zustand „Seite“ befindet. Aber sobald wir sie zuschlagen und das Ergebnis ansehen, kollabiert die Überlagerung der Zustände sofort zu einer der beiden Grenzebenen – „Kopf“ oder „Zahl“. Das Zuschlagen der Münze in unserem Fall ist die Messung.
Verschränkt sich mit anderen Objekten zur Bildung quantenmechanischer Systeme
Mit einer Münze ist es schwierig, aber wir versuchen es. Stellen Sie sich vor, wir werfen drei Münzen hoch, sodass sie sich gegenseitig berühren und jonglieren. In jedem Moment befindet sich nicht nur jede Münze in einer Überlagerung von Zuständen, sondern diese Zustände beeinflussen sich auch gegenseitig (die Münzen stoßen schließlich zusammen).
Erfüllt das Klonverbot (der Zustand des Objekts kann nicht kopiert werden)
Während die Münzen fliegen und sich drehen, können wir in keiner Weise eine separate Kopie des drehenden Zustands einer der Münzen schaffen, die von der Systemumgebung unabhängig ist. Das System lebt in sich selbst und ist sehr eifersüchtig darauf, irgendwelche Informationen nach außen preiszugeben.
Ein paar weitere Worte zum Begriff „Überlagerung“, praktisch in allen Artikeln wird die Überlagerung erklärt als „in allen Zuständen gleichzeitig sein“ , was natürlich stimmt, aber manchmal übermäßig verwirrend ist. Man kann die Überlagerung von Zuständen auch so verstehen, dass zu jedem Zeitpunkt ein Quantenobjekt bestimmte Wahrscheinlichkeiten hat, in jeden seiner Grenzwerte zu kollabieren, wobei die Summe dieser Wahrscheinlichkeiten natürlich 1 ergibt.Weiter zur Betrachtung des Qubits werden wir darauf genauer eingehen.
Für Münzen kann man sich das visuell vorstellen – je nach anfänglicher Geschwindigkeit, Wurfwinkel und den Bedingungen der Umgebung, in der die Münze fliegt, variiert die Wahrscheinlichkeit, zu einem bestimmten Zeitpunkt "Kopf" oder "Zahl" zu erhalten. Und wie bereits erwähnt, kann der Zustand einer solchen fliegenden Münze so betrachtet werden, als wäre sie "gleichzeitig in all ihren Grenzzuständen, jedoch mit unterschiedlicher Wahrscheinlichkeit ihrer Realisierung".
Jedes Objekt, das die oben genannten Eigenschaften erfüllt und das wir erstellen und verwalten können, kann als Träger von Informationen in einem Quantencomputer verwendet werden.
In Kürze werden wir über den aktuellen Stand der physikalischen Umsetzung von Qubits als quantenmechanische Objekte sprechen und was die Wissenschaftler derzeit dafür verwenden.
Das dritte Merkmal besagt, dass Quantenobjekte zur Bildung quantenmechanischer Systeme verwickelt werden können. Was ist also ein quantenmechanisches System?
Quantenmechanisches System – ein System aus verwickelten Quantenobjekten, das die folgenden Eigenschaften besitzt:
- Ein quantenmechanisches System befindet sich in einer Überlagerung aller möglichen Zustände der Objekte, aus denen es besteht.
- Der Systemzustand kann bis zum Messzeitpunkt nicht ermittelt werden.
- Zum Zeitpunkt der Messung realisiert das System eine der möglichen Varianten seiner Grenzzustände.
(und um etwas vorzugreifen)
Folgen für Quantenprogramme:
- Ein Quantenprogramm hat einen definierten Systemzustand als Eingang, eine Superposition innerhalb und eine Superposition am Ausgang.
- Am Ausgang des Programms erhalten wir nach der Messung eine probabilistische Realisierung eines der möglichen Endzustände des Systems (plus mögliche Fehler).
- Jedes Quantenprogramm hat eine Architektur wie ein Schornstein (Eingang -> Ausgang. Es gibt keine Schleifen, und man kann den Zustand des Systems während des Prozesses nicht einsehen).
Vergleich zwischen Quantencomputer und klassischen Computern

Vergleichen wir nun einen gewöhnlichen Computer mit einem Quantencomputer.
| Gewöhnlicher Computer | ein Quantencomputer | |
Logik | 0 / 1 | `a|0> + b|1>, a^2 + b^2 = 1` |
Physik | Halbleitertransistor | Ein quantenmechanisches Objekt |
Trägersubstanz | Spannungsniveaus | Polarisation, Spin,… |
Operationen | NOT, AND, OR, XOR über Bits | Gatter: CNOT, Hadamard,… |
Verknüpfung | Halbleiterchip | Verschränkung untereinander |
Algorithmen | Standard (vgl. Knuth) | Spezielle (Shor, Grover) |
Prinzip | Digital, deterministisch | Analog, probabilistisch |
Logische Ebene

In einem herkömmlichen Computer ist dies ein Bit. Ein Konzept, das uns gut bekannt ist. deterministisches Bit. Es kann die Werte 0 oder 1 annehmen. Es erfüllt seine Rolle ausgezeichnet. logische Einheit für einen gewöhnlichen Computer, ist jedoch völlig ungeeignet, um den Zustand eines Quantenobjekts, das, wie bereits erwähnt, sich in der Natur in einerÜberlagerung seiner Grenzzustände befindet..
Dafür wurde der erfunden. In seinen Grenzzuständen realisiert er Zustände, die ähnlich wie 0 und 1 sind. , während er in Überlagerung ein Wahrscheinlichkeitsverteilung über seine Grenzzustände darstellt. |0> und |1>:
a|0> + b|1>, so dass a^2+b^2=1a und b stellen dabei , und die Quadrate ihrer Beträge sind die tatsächlichen Wahrscheinlichkeiten für das Erhalten dieser Grenzzustände |0> und |1>, falls der Qubit jetzt durch eine Messung kollabiert.
Physikalische Ebene
Auf dem aktuellen technologischen Entwicklungsstand ist die physikalische Realisierung des Bits für einen gewöhnlichen Computer ein Halbleitertransistor, während für Quantenobjekte, wie bereits erwähnt, irgendein Quantenobjekt.. Im nächsten Abschnitt sprechen wir darüber, was derzeit als physische Träger von Qubits verwendet wird.
Informationsspeicher
Für einen herkömmlichen Computer ist dies elektrischer Strom – Spannungsniveaus, das Vorhandensein oder Fehlen von Strom usw., und für Quanten-Computing ist es genau das Zustand des Quantenobjekts (Richtung der Polarisation, Spin usw.), das sich im Zustand der Überlagerung befinden kann.
Operationen
Um logische Schaltungen in einem herkömmlichen Computer zu realisieren, werden uns allen bekannte , für Operationen mit Qubits musste jedoch ein völlig anderes System von Operationen entwickelt werden, das man nennt. Gatter gibt es als Ein-Qubit- und Zwei-Qubit-Gatter, abhängig davon, über wie viele Qubits die Transformation erfolgt.
Beispiele für Quanten-Gatter:

Es gibt das Konzept eines universellen Satzes von Gattern, der ausreichend ist, um jede Quantenberechnung durchzuführen. Zum Beispiel ist ein universeller Satz der, der das Hadamard-Gatter, das Phasenverschiebungs-Gatter, das CNOT-Gatter und das π/8-Gatter beinhaltet. Mit ihnen kann jede Quantenberechnung auf einer beliebigen Menge von Qubits durchgeführt werden.
In diesem Artikel werden wir nicht detailliert auf das System der Quantenlogikgatter eingehen; ausführlichere Informationen dazu sowie zu logischen Operationen an Qubits finden Sie beispielsweise . Wichtig ist Folgendes zu merken:
- Operationen an quantenmechanischen Objekten erfordern die Schaffung neuer logischer Operatoren (Quantenlogikgatter).
- Quantenlogikgatter sind verfügbar in ein-Qubit- und zwei-Qubit-Varianten.
- Es gibt universelle Gatesets, mit denen jede Quantenberechnung durchgeführt werden kann.
Verknüpfung
Ein Transistor allein ist uns völlig nutzlos; um Berechnungen durchzuführen, müssen viele Transistoren miteinander verbunden werden, also einen Halbleiterchip aus Millionen von Transistoren erstellen, auf dem dann logische Schaltungen aufgebaut werden. und letztendlich einen modernen Prozessor in seiner klassischen Form zu erhalten.
Ein Qubit ist ebenfalls völlig nutzlos (nun, es sei denn, akademisch gesehen),
um Berechnungen durchzuführen, benötigen wir ein System von Qubits (quantenmechanischen Objekten)
das, wie bereits erwähnt, durch die Verschränkung von Qubits erzeugt wird, sodass Veränderungen in ihren Zuständen kohärent erfolgen.
Algorithmen
Die Standardalgorithmen, die die Menschheit bis heute entwickelt hat, sind völlig ungeeignet für die Umsetzung auf einem Quantencomputer. Und das ist auch nicht nötig. Quantencomputer, die auf der Schaltlogik von Qubits basieren, benötigen die Entwicklung ganz anderer Algorithmen, nämlich quantenmechanischer Algorithmen. Zu den bekanntesten quantenmechanischen Algorithmen gehören drei:
- (Faktorisierung)
- (schnelle Suche in einer ungeordneten Datenbank)
- (Antwort auf die Frage, ob die Funktion konstant oder balanciert ist)
Prinzip
Und das wichtigste Unterscheidungsmerkmal ist das Arbeitsprinzip. Bei einem Standardcomputer handelt es sich um ein digitales, streng deterministisches Prinzip, das darauf basiert, dass, wenn wir einen bestimmten Anfangszustand des Systems festlegen und diesen durch einen festgelegten Algorithmus führen, das Ergebnis der Berechnung jedes Mal dasselbe sein wird, egal wie oft wir diese Berechnung durchführen. Dieses Verhalten ist genau das, was wir von einem Computer erwarten.
Ein Quantencomputer arbeitet nach einem analog-probabilistischen Prinzip. Das Ergebnis der Arbeit eines festgelegten Algorithmus bei einem festgelegten Anfangszustand ist Stichprobe aus einer Wahrscheinlichkeitsverteilung endliche Realisierungen des Algorithmus plus mögliche Fehler.
Diese probabilistische Natur der Quantenberechnungen beruht auf der probabilistischen Essenz der Quantenwelt. „Gott würfelt nicht mit dem Universum“, — sprach der alte Einstein, doch alle Experimente und Beobachtungen bestätigen bisher (in der aktuellen wissenschaftlichen Paradigma) das Gegenteil.
Physikalische Realisierungen von Qubits

Wie bereits erwähnt, kann ein Qubit als ein quantenmechanisches Objekt dargestellt werden, also als ein physikalisches Objekt, das die oben beschriebenen quantenmechanischen Eigenschaften verwirklicht. Grob gesagt kann also jedes physikalische Objekt, das über zwei Zustände verfügt und sich in einem Zustand der Überlagerung befindet, zum Bau eines Quantencomputers verwendet werden.
„Wenn wir einen Atom in zwei verschiedene Niveaus bringen und diese steuern können, dann haben wir ein Qubit. Wenn wir das mit einem Ion machen können, — Qubit. Mit einem Strom ist es dasselbe. Wenn wir ihn im Uhrzeigersinn und gegen den Uhrzeigersinn gleichzeitig laufen lassen, haben wir ein Qubit.“
Es gibt zu , in dem die aktuelle Vielzahl physikalischer Realisierungen von Qubits ausführlicher betrachtet wird, wollen wir hier nur die bekanntesten und am weitesten verbreiteten aufzählen:
- und viele andere exotische Ideen (Anionen und weitere)
Von all diesen Methoden ist die erste Methode zur Erzeugung von Qubits, die auf . , , , am besten entwickelt, und auch die führenden Akteure nutzen genau diese zur Konstruktion ihrer Systeme.
Und lesen Sie auch mögliche von Qubits aus .
Grundlagen. Funktionsweise eines Quantencomputers

Die Materialien für diesen Abschnitt (Aufgabe und Bilder) stammen aus dem Artikel .
Also, stellen wir uns vor, wir haben die folgende Aufgabe:
Es gibt eine Gruppe von drei Personen: (A)ndrei, (B)olodia und (S)ereja. Es gibt zwei Taxis (0 und 1).
Es ist auch bekannt, dass:
- (A)ndrei und (B)olodia — Freunde
- (A)ndrei und (S)ereja — Feinde
- (B)olodia und (S)ereja — Feinde
Aufgabe: Die Leute so in die Taxis verteilen, dass Max(Freunde) und Min(Feinde)
Bewertung: L = (Anzahl der Freunde) — (Anzahl der Feinde) für jede Variation der Platzierung
WICHTIG: Angenommen, es gibt keine Heuristiken und keine optimale Lösung. In diesem Fall kann das Problem nur durch vollständige Prüfung aller Möglichkeiten gelöst werden.

Lösung auf einem herkömmlichen Computer
Wie man dieses Problem auf einem herkömmlichen (Super-)Computer (oder Cluster) löst – es ist klar, dass alle möglichen Varianten in einer Schleife durchgegangen werden müssen.Wenn wir ein Multiprozessorsystem haben, können die Berechnungen auf mehrere Prozessoren parallelisiert werden, und die Ergebnisse können anschließend gesammelt werden.
Wir haben 2 mögliche Platzierungsvarianten (Taxi 0 und Taxi 1) und 3 Personen. Der Lösungsraum 2^3 = 8Ist so klein, dass wir 8 Varianten sogar mit einem Taschenrechner durchgehen können, das ist kein Problem. Aber jetzt machen wir das Problem komplizierter – wir haben 20 Personen und zwei Busse, der Lösungsraum 2^20 = 1 048 576. ist ebenfalls nicht schwierig. Wir erhöhen die Anzahl der Menschen um das 2,5-Fache – wir nehmen 50 Personen und zwei Züge, der Lösungsraum ist jetzt 2^50 = 1,12 x 10^15. Ein herkömmlicher (Super-)Computer hat jetzt bereits ernsthafte Probleme. Verdoppeln wir die Anzahl der Menschen, geben 100 Personen uns bereits 1,2 x 10^30 mögliche Varianten.
Alles, in einer angemessenen Zeit kann dieses Problem nicht gerechnet werden.
Wir schalten den Supercomputer ein
Der leistungsstärkste Computer derzeit ist Nummer 1 aus , das ist , mit einer Performance von 122 . Angenommen, wir benötigen für die Berechnung einer Variante 100 Operationen, dann benötigen wir für die Lösung der Aufgabe für 100 Personen:
(1,2 x 10^30 100) / 122×10^15 / (606024365) = 3 x 10^37 Jahre.
Wie wir sehen können, wächst der Lösungsspielraum mit zunehmender Dimension der Ausgangsdaten nach einer Potenzregel.Im Allgemeinen gibt es für N Bits 2^N mögliche Lösungsmöglichkeiten, die bei vergleichsweise kleinen N (100) uns einen nicht berechenbaren (auf dem aktuellen technologischen Niveau) Lösungsraum bieten.
Gibt es Alternativen? Wie Sie bereits erraten haben, ja, die gibt es.
Bevor wir jedoch darauf eingehen, wie und warum Quantencomputer solche Aufgaben effizient lösen können, lassen Sie uns kurz daran erinnern, was eine Wahrscheinlichkeitsverteilungist. Keine Sorge, dies ist ein Überblicksartikel, wir werden es ohne komplizierte Mathematik mit einem klassischen Beispiel von einem Sack und Kugeln machen.
Ein wenig Kombinatorik, Wahrscheinlichkeitsrechnung und ein seltsamer Experimentator.
Nehmen wir einen Sack und legen wir hinein 1000 weiße und 1000 schwarze Kugeln.. Wir werden ein Experiment durchführen – eine Kugel herausnehmen, die Farbe notieren, die Kugel zurück in den Sack legen und die Kugeln im Sack mischen.
Wir haben das Experiment 10 Mal durchgeführt, haben 10 schwarze Kugeln herausgezogen.Ist das möglich? Auf jeden Fall. Gibt uns diese Stichprobe eine vernünftige Vorstellung vom tatsächlichen Verteilung im Sack? Offensichtlich nicht. Was müssen wir tun? Richtig,das Experiment eine Million Mal wiederholen und die Häufigkeiten der gezogenen schwarzen und weißen Kugeln berechnen. Wir erhalten beispielsweise 49,95 % schwarze und 50,05 % weiße Kugeln.In diesem Fall wird die Struktur der Verteilung, aus der wir sampeln (eine Kugel herausnehmen), schon etwas klarer.
Das Wichtigste, was zu verstehen ist, ist, dass das Experiment eine probabilistische Natur hat,mit einer einzigen Stichprobe (Kugel) werden wir die wahre Struktur der Verteilung nicht erfahren, wir müssen das Experiment mehrfach wiederholen und die Ergebnisse mitteln.
Fügen wir unserem Sack hinzu 10 rote und 10 grüne Kugeln (Fehler). Wiederholen wir das Experiment 10 Mal. Wir haben5 rote und 5 grüne Kugeln herausgezogen.Ist das möglich? Ja. Können wir etwas über die tatsächliche Verteilung sagen? – Nein. Was müssen wir tun? Nun, Sie haben es verstanden.
Um ein Verständnis für die Struktur der Wahrscheinlichkeitsverteilung zu gewinnen, müssen wir mehrere Einzelereignisse aus dieser Verteilung ziehen und die Ergebnisse mitteln.
Verbindung von Theorie und Praxis
Jetzt nehmen wir anstelle von schwarzen und weißen Kugeln Billardkugeln und legen sie in einen Sack. 1000 Kugeln mit der Nummer 2, 1000 mit der Nummer 7 und 10 Kugeln mit anderen Nummern.Stellen wir uns einen Experimentator vor, der in den einfachsten Handlungen geschult ist (eine Kugel ziehen, die Nummer aufschreiben, die Kugel zurück in den Sack legen, die Kugeln im Sack mischen) und dies in 150 Mikrosekunden macht. Ein solcher Experimentator ist ganz schön schnell (keine Werbung für Drogen!!!). In 150 Sekunden könnte er unser Experiment also eine Million Mal durchführen. Und uns die Ergebnisse der Mittelung präsentieren.
Wir setzten den Experimentator hin, gaben ihm den Sack, wandten uns ab, warteten 150 Sekunden – und erhielten:
Nummer 2 – 49,5%, Nummer 7 – 49,5%, die übrigen Nummern zusammen – 1%.
Ja, das stimmt, unser Sack ist ein Quantencomputer mit einem Algorithmus, der unser Problem löst,, und die Kugeln sind die möglichen Lösungsvarianten. Da es zwei korrekte Lösungen gibt, ist das... Ein Quantencomputer wird uns zufällig eine dieser möglichen Lösungen präsentieren, und 0,5 % (10/2000) Fehler werden auftreten., über die wir später sprechen werden.
Um ein Ergebnis von einem Quantencomputer zu erhalten, muss der Quantenalgorithmus mehrfach mit demselben Datensatz ausgeführt und das Ergebnis gemittelt werden.
Skalierbarkeit des Quantencomputers
Stellen wir uns vor, dass in einer Aufgabe, an der 100 Personen beteiligt sind (der Lösungsraum 2^100 wir uns dessen bewusst sind), es auch nur zwei korrekte Lösungen gibt. Wenn wir also 100 Qubits verwenden und einen Algorithmus schreiben, der unsere Zielfunktion (L, siehe oben) über diese Qubits berechnet, erhalten wir einen Sack mit 1000 Bällen mit der Nummer der ersten richtigen Antwort, 1000 mit der Nummer der zweiten richtigen Antwort und 10 Bällen mit anderen Nummern. Und unser Experimentator wird uns in denselben 150 Sekunden eine Schätzung der Wahrscheinlichkeitsverteilung der richtigen Antworten liefern..
Die Laufzeit des Quantenalgorithmus (unter bestimmten Annahmen) kann als konstant O(1) in Bezug auf die Dimension des Lösungsraums (2^N) betrachtet werden.
Und genau dieses Merkmal des Quantencomputers ist es — Beständigkeit der Ausführungszeit in Bezug auf die exponentiell ansteigende Komplexität des Lösungsraums und ist entscheidend.
Qubit und parallele Welten
Wie funktioniert das? Was ermöglicht es einem Quantencomputer, so schnell Berechnungen durchzuführen? Es liegt in der Quantenbeschaffenheit des Qubits.
Sehen Sie, wir haben gesagt, dass das Qubit als quantenmechanisches Objekt einen seiner beiden Zustände bei der Beobachtung realisiert, aber in der „lebendigen Natur“ befindet es sich in einer Überlagerung von Zuständen, das heißt, es existiert gleichzeitig in beiden Grenzzuständen (mit gewisser Wahrscheinlichkeit).
Nehmen wir Andrej und stellen wir seinen Zustand (in welchem Transportmittel er sich befindet — 0 oder 1) als Qubit dar. Dann entstehen (im Quantenraum) zwei parallele Welten, in einer A sitzt im Taxi 0, in der anderen Welt — im Taxi 1. Gleichzeitig in zwei Taxis, aber mit einer gewissen Wahrscheinlichkeit ihn in jedem von ihnen bei der Beobachtung zu finden.
Nehmen wir Wladimir und lassen Sie uns auch seinen Zustand als Qubit darstellen. Es entstehen zwei weitere parallele Welten. Aber während diese Paare von Welten A und B nicht miteinander interagieren. Was muss getan werden, um eine verknüpfte Das System? Richtig, wir müssen diese Qubits verbinden (verwirren). Wir nehmen und verwirren sie (A) mit (B) — erhalten wir ein quantenmechanisches System aus zwei Qubits (A, B), das in sich vier wechselseitige parallele Welten realisiert. Fügen wir (C)Sergei hinzu und erhalten ein System aus drei Qubits (ABC), das acht wechselseitige parallele Welten realisiert.
Die Essenz der Quantenberechnung (die Ausführung einer Kette von Quanten-Gattern über das System verbundener Qubits) ist die Tatsache, dass die Berechnung in allen parallelen Welten gleichzeitig erfolgt.
Und es spielt keine Rolle, wie viele wir haben, 2^3 oder 2^100, der Quantenalgorithmus wird in endlicher Zeit über all diese parallelen Welten ausgeführt und liefert uns das Ergebnis, das eine Stichprobe aus der Wahrscheinlichkeitsverteilung der Antworten des Algorithmus darstellt.
Um es besser zu verstehen, kann man sich vorstellen, dass der Quantencomputer auf quantenmechanischem Niveau 2^N parallele Lösungsprozesse startet, von denen jeder an einer möglichen Variante arbeitet, dann die Ergebnisse zusammenführt — und uns die Antwort in Form einer Superposition der Lösung liefert. (Wahrscheinlichkeitsverteilung der Antworten), aus der wir jedes Mal (bei jedem Experiment) eine Stichprobe ziehen.
Merken Sie sich die Zeit, die unser Experimentator benötigt. (150 µs) für die Durchführung des Experiments. Diese Information wird später nützlich sein, wenn wir über die Hauptprobleme von Quantencomputern und die Dekohärenzzeit sprechen.
Quantenalgorithmen

Wie bereits erwähnt, sind herkömmliche Algorithmen, die auf binärer Logik basieren, für Quantencomputer, die Quantenlogik (quantenlogische Gatter) verwenden, nicht anwendbar. Daher mussten neue Algorithmen entwickelt werden, die das Potenzial der quantenmechanischen Rechnungen voll ausschöpfen.
Die bekanntesten Algorithmen bis heute sind:
Im Gegensatz zu klassischen Computern sind Quantencomputer nicht universell.
Bisher wurden nur eine Handvoll Quantenalgorithmen gefunden.
Danke für den Link zu , einem Ort, an dem laut dem Autor () die besten Vertreter der quantenalgorithmischen Welt gesammelt und weiterhin gesammelt werden.
In diesem Artikel werden wir die Quantenalgorithmen nicht im Detail untersuchen. Im Internet gibt es viele hervorragende Materialien für jedes Schwierigkeitsniveau, aber wir sollten dennoch kurz die drei bekanntesten ansprechen.
Shor-Algorithmus.
Der bekannteste Quantenalgorithmus ist (entwickelt 1994 von dem britischen Mathematiker ), der darauf abzielt, das Problem der Zerlegung von Zahlen in Faktoren (Faktorisierungsproblem, diskreter Logarithmus) zu lösen.
Dieser Algorithmus wird als Beispiel genannt, wenn darüber geschrieben wird, dass Ihre Banksysteme und Passwörter bald geknackt werden könnten. Angesichts der Tatsache, dass die derzeit genutzten Schlüssel mindestens 2048 Bit lang sind, ist die Zeit dafür noch nicht gekommen.
Derzeit sind mehr als bescheiden. Die besten Ergebnisse der Faktorisierung mit dem Shor-Algorithmus - Zahlen und , was deutlich weniger als 2048 Bit ist. Für die anderen Ergebnisse aus der Tabelle wurde eine andere Berechnungsmethode verwendet, aber selbst das beste Ergebnis nach diesem Algorithmus (291311) ist weit vom praktischen Einsatz entfernt.

Mehr über den Shor-Algorithmus kann man lesen, zum Beispiel. Zur praktischen Umsetzung - .
Eine der Die Komplexität und benötigte Leistung zur Faktorisierung einer 2048-Bit-Zahl erfordert einen Computer mit Wir schlafen ruhig.
Grover-Algorithmus
— zur Lösung des Suchproblems, also zur Findung einer Lösung für die Gleichung F(X) = 1, wobei F eine ab n von Variablen ist. Dieser wurde vom amerikanischen Mathematiker in .
vorgeschlagen. Der Grover-Algorithmus kann verwendet werden, um die und einer Zahlenreihe zu finden. Darüber hinaus kann er zur Lösung von Problemen durch umfassende Suche unter zahlreichen möglichen Lösungen eingesetzt werden. Dies kann einen signifikanten Geschwindigkeitszuwachs im Vergleich zu klassischen Algorithmen mit sich bringen, bietet jedoch kein „“ im Allgemeinen..
Mehr Informationen finden Sie hier., oder Es gibt auch eine gute Erklärung des Algorithmus anhand von Kisten und einem Ball, aber leider ist diese Website aus Russland für mich nicht erreichbar. Falls für Sie diese Website ist ebenfalls blockiert, hier ist eine kurze Zusammenfassung:
Der Grover-Algorithmus. Stellen Sie sich vor, Sie haben N nummerierte geschlossene Boxen. Alle sind leer, bis auf eine, in der sich ein Ball befindet. Ihre Aufgabe ist es, die Nummer der Box herauszufinden, in der sich der Ball befindet (diese unbekannte Nummer wird oft mit w bezeichnet).

Wie löst man dieses Problem? Auf die einfachste Weise, indem Sie die Boxen nacheinander öffnen, und irgendwann werden Sie auf die Box mit dem Ball stoßen. Wie viele Boxen müssen im Durchschnitt überprüft werden, bis die Box mit dem Ball gefunden wird? Im Durchschnitt müssen etwa die Hälfte der Boxen N/2 geöffnet werden. Das Wichtigste hier ist, dass wenn wir die Anzahl der Boxen um das 100-Fache erhöhen, sich auch die durchschnittliche Anzahl der zu öffnenden Boxen um das 100-Fache erhöht, bis die Box mit dem Ball gefunden wird.
Lassen Sie uns eine weitere Klarstellung vornehmen. Angenommen, wir öffnen die Boxen nicht selbst, um zu überprüfen, ob sich ein Ball darin befindet, sondern es gibt eine Art Vermittler, nennen wir ihn Oracle. Wir sagen zum Oracle: „Überprüfen Sie Box Nummer 732“, und Oracle überprüft gewissenhaft und antwortet: „In Box Nummer 732 ist kein Ball.“ Anstatt also zu sagen, wie viele Boxen wir im Durchschnitt öffnen müssen, fragen wir: „Wie oft müssen wir im Durchschnitt Oracle ansprechen, um die Nummer der Box mit dem Ball zu finden?“
Es stellt sich heraus, dass, wenn wir diese Aufgabe mit Boxen, einem Ball und Oracle auf eine Quantenebene übertragen, ein erstaunliches Ergebnis herauskommt: Um die Nummer der Box mit dem Ball unter N Boxen zu finden, müssen wir Oracle nur etwa SQRT(N) Mal stören!
Das heißt, die Komplexität des Problems beim Durchsuchen mit dem Grover-Algorithmus verringert sich um den Quadratwurzel-Faktor.
Deutsch-Jozsa-Algorithmus
Der Deutsch-Josza-Algorithmus (auch bekannt als Deutsch-Josza-Algorithmus) – [quanten Algorithmus](%D0%B0%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC), предложенный und in und wurde zu einem der ersten Beispiele für Algorithmen, die für die Ausführung auf . _
Die Aufgabe von Deutsch-Jozhi besteht darin, zu bestimmen, ob eine Funktion mit mehreren binären Variablen F(x1, x2, … xn) konstant ist (entweder 0 oder 1 für alle Argumente) oder ausgewogen ist (in der Hälfte des Definitionsbereichs gibt sie 0 zurück und in der anderen Hälfte 1). Dabei wird angenommen, dass die Funktion entweder eine Konstante oder ausgewogen ist.
Sie können auch weiterlesen . Eine einfachere Erklärung lautet:
Der Deutsch-Algorithmus (Deutsch-Jozhi) basiert auf einer Durchmusterung, ermöglicht jedoch eine schnellere Durchführung als üblich. Stellen Sie sich vor, auf einem Tisch liegt eine Münze, und es gilt herauszufinden, ob sie falsch ist oder nicht. Dazu muss die Münze zweimal angesehen werden: bei "Kopf" und "Zahl" ist sie echt, bei zwei "Kopf" oder zwei "Zahl" ist sie falsch. Wenn jedoch der quantenmechanische Deutsch-Algorithmus verwendet wird, kann diese Bestimmung mit einem einzigen Blick – einer Messung – erfolgen.
Probleme von Quantencomputern

Bei der Konstruktion und dem Betrieb von Quantencomputern stehen Wissenschaftler und Ingenieure vor einer Vielzahl von Problemen, die heute mit unterschiedlich großem Erfolg gelöst werden. Laut () lässt sich eine Reihe von Problemen hervorheben:
- Umwelt- und Interaktionssensitivität
- Ansammlung von Rechenfehlern
- Herausforderungen bei der initialen Zustandsinitialisierung der Qubits
- Schwierigkeiten beim Aufbau von Mehr-Qubit-Systemen
Ich empfehle dringend, den Artikel “” zu lesen, insbesondere die Kommentare dazu.
Lassen Sie uns alle Hauptprobleme in drei große Gruppen organisieren und jede von ihnen genauer betrachten:
Dekohärenz

.
Quantenstatus sehr zerbrechlich, Qubits in einem verschränkten Zustand sind äußerst instabil, jede äußere Einwirkung kann diese Verbindung zerstören (und zerstört sie auch). Eine Temperaturänderung um einen winzigen Bruchteil eines Grades, Druck, ein zufällig vorbeifliegender Photon — all dies destabilisiert unser System.
Um dieses Problem zu lösen, werden Niedertemperatur-Sarkophage gebaut, in denen die Temperatur (-273,14 Grad Celsius) etwas über dem absoluten Nullpunkt liegt, mit maximaler Isolation des inneren Kameras mit dem Prozessor von allen (möglichen) Einflüssen der Umwelt.
Die maximale Lebensdauer eines quantenmechanischen Systems aus mehreren verschränkten Qubits, in der es seine quantenmechanischen Eigenschaften bewahrt und für Berechnungen genutzt werden kann, wird als Dekohärenzzeit bezeichnet.
Derzeit beträgt die Dekohärenzzeit in den besten Quantenlösungen etwa Zehnten und Hunderten von Mikrosekunden..
Es gibt eine hervorragende , die zeigt, wo man aller entwickelten Quanten Systeme finden kann. In diesem Artikel wurden nur zwei Top-Prozessoren hervorgehoben — von IBM und von . Wie wir sehen, überschreitet die Dekohärenzzeit (T2) nicht 200 µs.
Ich habe keine genauen Daten zu Sycamore gefunden, aber im Artikel über Quantenüberlegenheit 1 Million Berechnungen in 200 Sekunden , an anderer Stelle — in130 Sekunden ohne Verluste aufgrund von Steuersignalen und anderem. . In jedem Fall liefert uns daseine Dekohärenzzeit von etwa 150 µs. Erinnern Sie sich an unserenExperimentator mit dem Sack Computer Name? Ну так вот он.
| N Qubits | Max gekoppelt | T2 (µs) | Welche Risiken bringt uns die Dekohärenz? |
| . Ein 20-Qubit-Computer in der Cloud | 20 | 6 | 70 |
| . Ein 53-Qubit-Computer. | 53 | 4 | ~150-200 |
Welche Gefahren birgt die Dekohärenz?
Das Hauptproblem ist, dass unser Berechnungssystem aus N verstrickten Qubits nach 150 µs anstelle einer Wahrscheinlichkeitsverteilung korrekter Lösungen – ein wahrscheinliches weißes Rauschen liefert.
Das bedeutet, wir müssen:
- Das Qubit-System initialisieren
- Die Berechnung durchführen (eine Kette von Wendentransaktionen)
- Das Ergebnis ablesen
Und das alles innerhalb von 150 µs. Wenn wir nicht rechtzeitig fertig sind, wird das Ergebnis zur Kürbis.
Aber das ist noch nicht alles…
Fehler

Wie bereits erwähnt, haben quantenmechanische Prozesse und Quantenberechnungen eine probabilistische Natur, wir können uns nicht zu 100 % auf etwas verlassen, sondern nur mit einer bestimmten Wahrscheinlichkeit. Die Situation wird noch dadurch komplizierter, dass quantenmechanische Berechnungen fehleranfällig sind. Die Hauptfehlerarten bei Quantenberechnungen sind:
- Dekohärenzfehler, die durch die Komplexität des Systems und die Wechselwirkung mit der Außenwelt bedingt sind.
- Berechnungsfehler bei den Toren (bedingtes quantenmechanisches Rechnen)
- Fehler beim Ablesen des endgültigen Zustands (Ergebnis)
Fehler, die mit Dekohärenz zusammenhängen, entstehen sofort, wenn wir unsere Qubits verknüpfen und mit den Berechnungen beginnen. Je mehr Qubits wir verschnüren, desto komplexer wird das System, und desto leichter ist es, es zu zerstören. Niedertemperatur-Sarkophage, geschützte Kammern, all diese technologischen Kniffe zielen darauf ab, die Anzahl der Fehler zu reduzieren und die Dekohärenzzeit zu verlängern.
Berechnungsfehler von Toren — jede Operation (Tor) an Qubits kann mit einer gewissen Wahrscheinlichkeit fehlerhaft sein, und um unseren Algorithmus zu realisieren, müssen wir Hunderte von Toren ausführen; stellen Sie sich also vor, was wir am Ende des Algorithmus erhalten. Eine klassische Antwort auf die Frage — „Wie hoch ist die Wahrscheinlichkeit, einem Dinosaurier im Aufzug zu begegnen?“ — ist 50 zu 50, entweder man begegnet ihm oder nicht.
Das Problem wird noch dadurch verschärft, dass die Standardmethoden zur Fehlerkorrektur (Dublizierung von Berechnungen und Mittelwertbildung) in der Quantenwelt aufgrund des Klonierungsverbots nicht funktionieren. Für in der Quantenberechnung mussten Groß gesagt nehmen wir N gewöhnliche Qubits und machen daraus 1 logisches Qubit mit einer geringeren Fehlerquote.
Doch hier stellt sich ein weiteres Problem — die Gesamtanzahl der Qubits. Angenommen, wir haben einen Prozessor mit 100 Qubits, von denen 80 für die Fehlerkorrektur reserviert sind, bleiben uns nur 20 für Berechnungen.
Fehler beim Auslesen des Endergebnisses — wie wir uns erinnern, wird das Ergebnis quantenmechanischer Berechnungen uns in Form von Wahrscheinlichkeitsverteilungen der Antworten. Aber das Auslesen des finalen Zustands kann ebenfalls fehlerhaft sein.
Auf demselben gibt es Vergleichstabellen von Prozessoren hinsichtlich ihrer Fehlerquoten. Zum Vergleich nehmen wir dieselben Prozessoren wie im vorherigen Beispiel — IBM und :
| Computer | 1-Qubit-Gatter-Fidelität | 2-Qubit-Gatter-Fidelität | Auslesefidelität |
| . Ein 20-Qubit-Computer in der Cloud | 99.96% | 98.31% | — |
| . Ein 53-Qubit-Computer. | 99.84% | 99.38% | 96.2% |
Hier — ein Maß für die Ähnlichkeit zweier quantenmechanischer Zustände. Der Fehlerwert kann grob als 1-Fidelität dargestellt werden. Wie wir sehen, sind die Fehler bei 2-Qubit-Gattern und bei der Auslesung das Haupt hindernis für die Ausführung komplexer und langer Algorithmen auf bestehenden Quantencomputern.
Sie können auch weiterlesen von zur Lösung des Problems der Fehlerkorrektur.
Prozessorarchitektur

In der Theorie erstellen und betreiben wir Schaltungen mit Dutzenden von verschränkten Qubits, in der Realität ist das jedoch komplizierter. Alle bestehenden Quanten-Chips (Prozessoren) sind so konstruiert, dass sie eine schmerzfreie Verschränkung eines Qubits nur mit seinen Nachbarn, von denen es nicht mehr als sechs gibt.
Wenn wir jedoch den ersten Qubit mit dem zwölften verschränken möchten, müssen wir eine Kette zusätzlicher Quantenoperationen aufbauen, zusätzliche Qubits einbeziehen und ähnliches, was das allgemeine Fehlerrisiko erhöht. Vergessen Sie auch nicht die Dekohärenzzeit, möglicherweise ist die Zeit abgelaufen, wenn Sie mit der Kopplung der Qubits in das gewünschte Schema fertig sind, und das gesamte Schema verwandelt sich in einen netten Generator für weißen Rauschen.
Vergessen Sie auch nicht, dass die Architektur aller Quantenprozessoren unterschiedlich ist, und das Programm, das in einem Emulator im Modus „Vernetzung aller miteinander“ geschrieben wurde, muss für die Architektur eines bestimmten Chips „re-kompiliert“ werden. Es gibt sogar für diese Aufgabe.
Maximale Vernetzung und maximale Anzahl von Qubits für die gleichen Spitzenchips:
| N Qubits | Max gekoppelt | T2 (µs) | Welche Risiken bringt uns die Dekohärenz? |
| . Ein 20-Qubit-Computer in der Cloud | 20 | 6 | 70 |
| . Ein 53-Qubit-Computer. | 53 | 4 | ~150-200 |
Und zum Vergleich, eine Tabelle mit Daten der vorherigen Prozessorgeneration. Vergleichen Sie die Anzahl der Qubits, die Dekohärenzzeit und den Fehlerprozentsatz mit dem, was wir jetzt bei der neuen Generation haben. Fortschritt bewegt sich schließlich langsam, aber stetig.

Also:
- Aktuell gibt es keine vollständig verknüpften architektonischen Schaltungen mit mehr als 6 Qubits.
- Um einen Qubit 0 mit beispielsweise dem 15. Qubit auf einem echten Prozessor zu verschnüren, sind möglicherweise mehrere Dutzend zusätzliche Operationen erforderlich.
- Mehr Operationen -> mehr Fehler -> stärkere Auswirkungen von Dekohärenz.
Ergebnisse
Dekohärenz ist das Prokrustesbett moderner Quantencomputing-Technologien.. In 150 µs müssen wir alles unterbringen:
- Die Initialisierung des Anfangszustands der Qubits.
- Die Berechnung der Aufgabe unter Verwendung von Quantengattern.
- Die Durchführung von Fehlerkorrekturen, um ein signifikantes Ergebnis zu erhalten.
- Das erhaltene Ergebnis auslesen.
Bislang sind die Ergebnisse enttäuschend, obwohl einige von 0,5 s Kohärenzzeit auf einem Quantencomputer, der auf :
Wir messen eine Kohärenzzeit eines Qubits von mehr als 0,5 s, und mit magnetischer Abschirmung erwarten wir, dass sich dies auf über 1000 s verbessert.
Über diese Technologie kann man noch lesen. Oder zum Beispiel, .
Die Situation wird noch komplizierter, da bei komplexen Berechnungen Quantenfehlerkorrekturschaltungen erforderlich sind, die ebenfalls Zeit und verfügbare Qubits in Anspruch nehmen.
Moderne Architekturen ermöglichen es nicht, mit minimalen Kosten bessere Verschränkungsschemata als 1 zu 4 oder 1 zu 6 zu realisieren.
Lösungsansätze
Um die oben genannten Probleme zu lösen, kommen derzeit folgende Ansätze und Methoden zum Einsatz:
- Verwendung von Kryokammern mit niedrigen Temperaturen (10 mK (–273,14 °C))
- Einsatz von hochgradig geschützten Prozessoreinheiten vor äußeren Einflüssen
- Verwendung von Quantenfehlkorrektursystemen (Logische Qubits)
- Einsatz von Optimierern beim Programmieren von Schaltungen für spezifische Prozessoren
Es werden auch Forschungen durchgeführt, um die Dekohärenzzeiten zu erhöhen, neue (und bekannte) physikalische Realisierungen quantenmechanischer Objekte zu finden und Schaltkreise zur Korrektur zu optimieren. Der Fortschritt ist vorhanden (sehen Sie sich die Spezifikationen der früheren und aktuellen Spitzen-Chips oben an), aber er verläuft langsam, sehr, sehr langsam.
D-Wave

2000-Qubit-Computer D-Wave 2000Q. Quelle:
Anlässlich der Ankündigung von Google über das Erreichen des Quantenüberlegenheits mit einem Prozessor mit 53 Qubits, und von D-Wave, bei denen die Anzahl der Qubits sich in Tausenden summiert, ist etwas verwirrend. Wenn 53 Qubits bereits Quantenüberlegenheit erreicht haben, was kann dann ein Computer mit 2048 Qubits leisten? Aber nicht alles ist so rosig...
Kurz gesagt (entnommen aus Wikipedia):
Computer arbeiten nach dem Prinzip der (), können nur einen extrem begrenzten Untertyp von Optimierungsproblemen lösen und sind nicht für die Implementierung traditioneller Quantenalgorithmen und Quantenlogikgatter geeignet.
Mehr dazu kann man beispielsweise lesen, , (Achtung, möglicherweise nicht aus Russland zugänglich), oder bei in aus seinem . Übrigens empfehle ich, seinen Blog insgesamt zu lesen; dort gibt es viele gute Inhalte.
Seit den ersten Ankündigungen gab es Fragen der wissenschaftlichen Gemeinschaft zu den D-Wave-Computern. Zum Beispiel stellte IBM 2014 in Frage, ob D-Wave Es kam so weit, dass Google 2015 zusammen mit der NASA einen solchen Quantencomputer kaufte und nach Untersuchungen , dass er tatsächlich schneller Aufgaben löst als herkömmliche Computer. Auch über die Aussage von Google kann man lesen, zum Beispiel, .
Das Hauptproblem ist, dass die D-Wave-Computer mit ihren Hunderten und Tausenden von Qubits nicht zur Berechnung und Ausführung von Quantenalgorithmen genutzt werden können. Man kann beispielsweise den Shor-Algorithmus nicht darauf ausführen. Alles, was sie tun können, ist, bestimmte Quantenmechanismen zu nutzen, um eine spezifische Optimierungsaufgabe zu lösen. Man könnte sagen, D-Wave ist eine Art Quanten-ASIC für eine bestimmte Aufgabe.
Ein bisschen über die Emulation von Quantencomputern

Quantenberechnungen können auf einem herkömmlichen Computer emuliert werden. Denn tatsächlich, :
- Der Zustand eines Qubits kann eine komplexe Zahldarstellt werden, die zwischen 2^32 und 2^64 Bits (8-16 Byte) je nach Prozessorarchitektur benötigt.
- Der Zustand von N verbundenen Qubits kann als 2^N komplexe Zahlen dargestellt werden, das heißt 2^(3+N) für eine 32-Bit-Architektur und 2^(4+N) für eine 64-Bit-Architektur.
- Eine Quantenoperation auf N Qubits kann als 2^N x 2^N Matrix dargestellt werden.
Daraus folgt:
- Für die Speicherung der emulierten Zustände von 10 Qubits sind 8 KB erforderlich.
- Für die Speicherung der Zustände von 20 Qubits werden 8 MB benötigt.
- Für die Speicherung der Zustände von 30 Qubits sind 8 GB erforderlich.
- Für die Speicherung der Zustände von 40 Qubits sind 8 Terabyte erforderlich.
- Für die Speicherung der Zustände von 50 Qubits sind 8 Petabyte erforderlich, und so weiter.
Zum Vergleich, () trägt insgesamt 2,8 Petabyte Speicher.
— 49 Qubits, die im vergangenen Jahr auf dem größten chinesischen Supercomputer ()
Die Grenze der Simulation eines Quantencomputers auf klassischen Systemen ist durch den benötigten Arbeitsspeicher zur Speicherung des Zustands der Qubits definiert.
Ich empfehle außerdem, . Aus dem:
Bei Operationen — für eine präzise Emulation eines Schaltkreises mit 49 Qubits erfordert es etwa 39 „Takte“ (unabhängige Schichten von Toren) 2^63 komplexe Multiplikationen — 4 Petaflops des Supercomputers über 4 Stunden
Die Emulation eines Quantencomputers mit 50+ Qubits auf klassischen Systemen gilt als unpraktisch in einem angemessenen Zeitrahmen. Aus diesem Grund verwendete Google für sein Experiment mit Quantenüberlegenheit einen Prozessor mit 53 Qubits.
Quantencomputing-Überlegenheit.

Wikipedia liefert uns die folgende Definition von quantitativer Rechenüberlegenheit:
Quantenüberlegenheit — die Fähigkeit Probleme zu lösen, die klassische Computer praktisch nicht lösen können.
Der tatsächliche Erreichung von Quantenüberlegenheit bedeutet beispielsweise, dass die Faktorisierung großer Zahlen mit dem Shor-Algorithmus in angemessener Zeit gelöst werden kann oder dass komplexe chemische Moleküle auf Quantenebene emuliert werden können, und so weiter. Eine neue Ära hat begonnen.
Doch in der Definition gibt es eine gewisse Schlupfloch, “die klassische Computer praktisch nicht lösen können”. Das bedeutet konkret, dass, wenn man einen Quantencomputer mit über 50 Qubits baut und darauf ein bestimmtes Quantenverfahren ausführt, wie oben beschrieben, das Ergebnis dieser Berechnung auf einem klassischen Computer nicht emuliert werden kann. Das heißt, ein klassischer Computer nicht in der Lage sein wird, das Ergebnis eines solchen Verfahrens zu reproduzieren..
Ob dieses Ergebnis als echtes Quantenüberlegenheit betrachtet wird oder nicht, ist eine eher philosophische Frage. Aber es ist wichtig zu verstehen, was Google erreicht hat und worauf sich seine stützt.
Die Erklärung von Google über die Erreichung von Quantenüberlegenheit

54-Qubit-Prozessor Sycamore
Im Oktober 2019 veröffentlichten Google-Entwickler in der Fachzeitschrift Nature einen Artikel über. Die Autoren kündigten an, dass erstmals in der Geschichte Quantenüberlegenheit mit einem 54-Qubit-Prozessor namens „Sycamore“ erreicht wurde.
In Artikeln im Internet wird Sycamore oft sowohl als 54-Qubit- als auch als 53-Qubit-Prozessor erwähnt. Die Wahrheit ist, dass gemäß , der Prozessor physisch aus 54 Qubits besteht, jedoch ein Qubit nicht funktionsfähig ist und außer Betrieb genommen wurde. Daher haben wir tatsächlich einen 53-Qubit-Prozessor.
Im Internet erschienen sofort begeistert bis zu .
Google falsche Angaben zur Erreichung von Quantenüberlegenheit gemacht habe. . Das Unternehmen behauptet, dass ein herkömmlicher Rechner diese Aufgabe im schlimmsten Fall in 2,5 Tagen bewältigen kann und dass die erhaltene Antwort präziser sein wird als die eines Quantencomputers. Diese Schlussfolgerung wurde auf Grundlage einer theoretischen Analyse mehrerer Optimierungsmethoden gezogen.
Und natürlich, in seinem konnte er diese Aussage nicht ignorieren. Seine nebst allen Links und lohnt sich wie immer, Zeit dafür zu investieren. Auf Habré dieses FAQ, und unbedingt die Kommentare lesen, dort sind Links zu vorläufigen Dokumenten, die vor der offiziellen Ankündigung ins Netz geleakt wurden.
Was hat Google tatsächlich gemacht? Für ein detailliertes Verständnis lesen Sie Aaronson, kurz zusammengefasst:
Ich kann Ihnen natürlich etwas sagen, fühle mich dabei jedoch ein wenig dumm. Die Berechnung sieht folgendermaßen aus: Der Experimentator generiert ein zufälliges quantenmechanisches Schema C (d.h. eine zufällige Folge von 1-Qubit- und 2-Qubit-Gattern, die zwischen benachbarten Nachbarn mit einer Tiefe von zum Beispiel 20 auf einem 2D-Netz von n=50-60 Qubits wirken). Danach schickt der Experimentator C an den Quantencomputer und bittet ihn, C auf den anfänglichen Zustand von 0 anzuwenden, das Ergebnis im Basis {0,1} zu messen, die n-bit lange Beobachtungsequenz (Zeile) zurückzusenden und das Ganze mehrere Tausend oder Millionen Male zu wiederholen. Schließlich führt der Experimentator mithilfe seines Wissens über C eine statistische Überprüfung durch, um die Übereinstimmung des Ergebnisses mit der erwarteten Ausgabe des Quantencomputers zu prüfen.

Ganz kurz:
- Ein zufälliges Schema wird mit einer Länge von 20 aus 53 Qubits unter Verwendung von Gattern erstellt.
- Das Schema wird mit dem Anfangszustand [0…0] zur Ausführung gestartet.
- Die Ausgabe des Schemas stellt eine zufällige Bitfolge (Sample) dar.
- Die Verteilung des Ergebnisses ist nicht zufällig (Interferenz).
- Die erhaltenen Samples werden mit der erwarteten Verteilung verglichen.
- Es wird eine Aussage über die Quantenüberlegenheit getroffen.
Das bedeutet, dass Google eine synthetische Aufgabe auf einem 53-Qubit-Prozessor realisiert hat und seine Erklärung zur Erreichung der Quantenüberlegenheit auf der Tatsache basiert, dass eine Emulation eines solchen Prozessors auf Standard-Systemen in angemessener Zeit unmöglich ist.
Zum Verständnis — in diesem Abschnitt wird die Errungenschaft von Google keineswegs geschmälert,, die Ingenieure haben wirklich hervorragende Arbeit geleistet, und die Frage, ob dies als echte Quantenüberlegenheit angesehen werden kann oder nicht, ist, wie bereits erwähnt, eher philosophischer als ingenieurtechnischer Natur. Aber man muss verstehen, dass wir mit einem solchen rechnerischen Vorteil nicht einen Schritt weitergekommen sind, um den Shor-Algorithmus auf 2048-Bit-Zahlen auszuführen.
Zusammenfassung

Quantencomputer und Quantenberechnungen sind ein vielversprechendes, sehr junges und bisher industriell kaum anwendbares Gebiet der Informationstechnologie.
Die Entwicklung der Quantenberechnungen wird es ermöglichen (irgendwann), folgende Aufgaben zu lösen:
- Modellierung komplexer physikalischer Systeme auf quantenmechanischer Ebene
- Die auf herkömmlichen Computern aufgrund rechnerischer Komplexität unlösbar sind.
Hauptprobleme bei der Erstellung und Nutzung von Quantencomputern:
- Dekohärenz
- Fehler (Dekohärenz und Logikfehler)
- Architekturen der Prozessoren (vollvernetzte Quantenbitschaltungen)
Aktueller Stand der Dinge:
- Tatsächlich — sehr grundlegend .
- Echte kommerzielle Nutzung gibt es noch nicht (und es ist unklar, wann es soweit sein wird)
Was helfen könnte:
- Eine physikalische Entdeckung, die die Kosten für die Anbindung und den Betrieb von Prozessoren reduziert
- Die Entdeckung von etwas, das die Dekohärenzzeit erheblich verlängert und/oder die Anzahl der Fehler verringert
Meiner Meinung nach (rein persönliche Einschätzung), können wir im aktuellen wissenschaftlichen Wissensparadigma keine nennenswerten Fortschritte in der Entwicklung von Quanten-Technologien erzielen, hier ist ein qualitativ hochwertiger Durchbruch in einem Bereich der Grundlagen- oder angewandten Wissenschaft erforderlich, der neue Ideen und Methoden anstoßen wird.
Bis dahin sammeln wir Erfahrungen im Quantenprogrammieren, entwickeln und erstellen Quantenalgorithmen, testen Ideen und so weiter. Wir warten auf den Durchbruch.
Fazit
In diesem Artikel haben wir die wichtigsten Meilensteine der Entwicklung der Quantencomputing und Quantencomputer behandelt, das Prinzip ihrer Funktionsweise erläutert, die Hauptprobleme analysiert, mit denen Ingenieure bei der Entwicklung und dem Betrieb von Quantenprozessoren konfrontiert sind, und außerdem beleuchtet, was die Multi-Qubit-Computer von D-Wave wirklich sind, sowie die kürzliche Aussage von Google über das Erreichen der Quantenüberlegenheit.
Themen wie die Programmierung von Quantencomputern (Sprachen, Ansätze, Methoden usw.) und spezifische physikalische Implementierungen der Prozessoren, einschließlich der Kontrolle von Qubits, deren Verknüpfung und Auslesung, sind dabei unerwähnt geblieben. Möglicherweise wird dies das Thema eines zukünftigen Artikels oder mehrerer Artikel sein.
Vielen Dank für Ihre Aufmerksamkeit, ich hoffe, dieser Artikel ist für jemanden nützlich.
(C)
Danksagungen

für das Korrekturlesen und die Anmerkungen zum Originaltext sowie für den Artikel
für die informationsreichen Kommentare zu , und nicht nur zu diesem, die mir in vielerlei Hinsicht geholfen haben, dieses Puzzle zu lösen.
An alle Autorinnen und Autoren von Artikeln und Publikationen, deren Materialien bei der Erstellung dieses Artikels verwendet wurden.
Ressourcenliste

Aktuelle Artikel von [The National Academies Press]
Artikel von Habr (in zufälliger Reihenfolge)
Unsortierte (aber nicht weniger interessante) Artikel aus dem Internet
Kurse und Vorlesungen
Quelle: habr.com
