Quantencomputing mit IBM-Qiskit (kostenloser Online-Einführungskurs)

Quantencomputing-Meetup für Unternehmen und Interessierte

Im November 2019 hatte ich das Vergnügen an dem „Google-Cirq-Bootcamp“ für Quanten-Computing am Forschungszentrum Jülich teilzunehmen. Cirq ist Googles eigener Python-Framework für das Quanten-Computing. Professor Kristel Michielsen, die Leiterin der Jülicher Gruppe „Quantum Information Processing“ veranstaltete das Event. Die Zusammenarbeit zwischen Google und ihrem Team war durch die gemeinsame Arbeit an Googles berühmten Quanten-Überlegenheits-Nachweis entstanden. Die Details zu dem Nachweis und auch zu der Kooperation mit Jülich erfahren Sie übrigens in meinem Artikel „Google und der Nachweis der Quanten-Überlegenheit“.

Das Bootcamp war unheimlich informativ, sowohl im Schulungsraum als auch während der Pausen. Ich hatte das Vergnügen viele interessante Gespräche zu führen. Unter mehreren Wissenschaftlern nahm außer mir noch ein weiterer Consultant teil: Christopher Zachow, der Quanten-Computing Specialist von der SVA GmbH. In unseren Gesprächen waren wir uns schnell einig, dass es an der Zeit war eine Gesprächsplattform für Quanten-Computing auch auf Business-Level zu etablieren. Da besonders das Rheinland sich gerade zu einem der Hotspot für das Quanten-Computing in Deutschland und vermutlich sogar in Europa entwickelt, gründeten wir kurzerhand die Meetup-Gruppe „Quantum Computing Meets Business – Rhineland“.

Mittlerweile fanden erste Events mit 80-100 Teilnehmern statt. Wir hatten das Vergnügen einige spannende Vorträge von hochinteressanten Gastrednern aus der Quanten-Computing-Community in Deutschland zu organisieren.

23.06.2021 17h: Start „Training: Quantencomputing mit IBM-Qiskit (kostenloser Online-Einführungskurs)“

Die Resonanz auf unsere Meetup-Gruppe zeigt uns, wie groß der Bedarf an Informationen zu der neuen Technologie Quantencomputer ist. Während wir unsere aktuelle Event-Serie weiter auf Englisch fortsetzen und spannende Gastredner*innen einladen werden, beginnen wir am 23.6.2021 zusätzlich mit unserer  10-teiligen Schulungsserie auf Deutsch für alle Interessenten die konkret in das Quantencomputing und in die QC-Welt einsteigen wollen. Dabei müssen Sie keine besonderen Vorkenntnisse in Informatik oder Mathematik mitbringen!

Training #1 Quantencomputing mit IBM-Qiskit (kostenloser
Online-Einführungskurs)

Mittwoch,
23. Juni 2021

17:00 bis 19:00 MESZ

Die Anmeldung erfolgt über unsere Gruppen-Website auf Meetup.com:
https://www.meetup.com/de-DE/Quantum-Computing-meets-Business-Rhineland/events/278322415/

 

Ziele: Nach der kostenlosen Schulungsserie haben Sie

      • Viele Grundlagen des Quantencomputings verstanden (und damit auch viele Grundlagen der Quantenmechanik)
      • Einzelne grundlegende Quantenalgorithmen gelernt (z.B. den Grover-Algorithmus für zukünftige fehlerkorrigierende Quantencomputer, den QAOA-Algorithmus für aktuelle NISQ-Quantencomputer)
      • Können erste Quantenprogramme entwickeln und ausführen über IBMs populären Python-Framework „Qiskit“
      • Grundlegende Kenntnisse in fortgeschrittener Mathematik gelernt, die für das Quantencomputing zwingend notwendig sind (z.B. Komplexe Zahlen, Matrizen- und Vektorrechnung, Basiswechsel, Eigenwerte, …)

Voraussetzungen:

      • Grundlegende Programmierkenntnisse (in irgendeiner Programmiersprache wie Java, C++, Basic und am besten natürlich in Python)
      • Normale“ Schulkenntnisse in Mathematik (alle fortgeschrittenen Themen lernen Sie bei uns!)
      • Eine kostenlose Registierung / Login / IBMId auf IBMs Quantum-Cloud https://quantum-computing.ibm.com/ (bitte diese schon vorher besorgen)
      • Viel Neugierde!! 🙂

Modalitäten:

      • Die Schulungssessions finden als Online-Webinare statt
      • Session-Dauer: Jeweils 2 Stunden
      • Wir planen etwa 10 Schulungssessions im Abstand von 4 Wochen (dieser Event-Rhythmus startet erst nach der Sommerpause)
      • Die Sessions werden auf Deutsch gehalten
      • Alle Ankündigungen erfolgen über unsere Meetup-Gruppe: https://www.meetup.com/de-DE/Quantum-Computing-meets-Business-Rhineland
      • Das kostenlose Schulungsmaterial veröffentlichen wir in Kürze als Github-Projekt unter der offenen Apache 2- Lizenz, es basiert auf IBMs (großartigem) „Qiskit Textbook“. Den Link werden wir noch im Meetup-Event bekanntgeben.
      • IBMs Quantum-Cloud https://quantum-computing.ibm.com/ ist die Laufzeitumgebung für das Schulungsmaterial und die Entwicklungsumgebung für Ihre Quantenprogramme. Insbesondere findet Alles auf der externen Cloud und Nichts bei Ihnen lokal statt.
      • Dozenten sind wir Group-Founders

 

Quantencomputer-Meetup für Unternehmen und Interessierte

Quantencomputer-Meetup für Unternehmen und Interessierte

Quantencomputer werden sich vermutlich zu einer führenden Technologie entwickeln und haben das Potential unsere Gesellschaft nachhaltig zu verändern.

Was als gigantische akademische Herausforderung vor fast 40 Jahren begann fängt gerade an Wirklichkeit zu werden. In den letzten Jahren wurden die ersten kleinen Quantencomputer entwickelt, sogenannte NISQ Devices. Sie stehen über Cloud-Dienste prinzipiell jedem zur Verfügung.

Während die Technologie weiter ausreift, ist dies eine gute Gelegenheit für Unternehmen und Firmen, sich mit dem Quantencomputing vertraut zu machen. Eine Wissenschaft die so vollkommen anders ist als jeder andere Zweig in der Informatik.

In Deutschland entwickelt unter anderem das Rheinland zu einem Hotspot für Quantencomputer, vielleicht sogar für ganz Europa. Das Rheinland ist außerdem die Heimat von leistungsfährigen Unternehmen: Von innovativen Startups bis hin hin zu riesigen Weltkonzernen.

Zusammen mit Christopher Zachow, dem Quantum Computing Specialist der SVA GmbH, habe ich deshalb die Meetup-Gruppe „Quantum Computing meets Business – Rhineland“ gegründet.

Das Ziel unserer Meetup-Gruppe ist es Experten für das Quantencomputing und Unternehmen und Fachleute von etablierten Märkten zusammen zubringen. Wir wollen den Dialog zwischen diesen Stakeholdern fördern und ein tiefes und realistisches Bewusstsein für das Quantencomputing wecken. Wir hoffen, dass sich auch dadurch ein Netzwerk bildet, von dem alle Seiten profitieren können. Bestandteil unserer Meetups sind Vorträge und offene Diskussionen. Wir behandeln einführende Themen, Anwendungen für das Quantencomputing und auch „Hot Topics“.

Neben Unternehmen und Fachleuten laden wir jeden herzlichst ein, der sich für das spannende Thema Quantencomputing interessiert (z.B. Journalisten, Akademiker, Studenten, Lehrer).

04. Mai 2021: Drittes Quantencomputer-Meetup für Unternehmen und Interessierte als Online-Event

Wie werden Quantencomputer in der chemischen Industrie schon heute integriert?

Für unser nächstes Meetup konnten wir Dr. Christian Gogolin von der Covestro AG für einen Gastvortrag gewinnen. Darin wird er die Anwendungen von Quantencomputing aus Sicht eines Chemie-Konzerns erläutern. Nach seinem Vortrag steht er für uns in einer Frage-Antwort-Runde zur Verfügung.

Dr. Christian Gogolin ist ein langjähriger und renommierter Wissenschaftler im Bereich Quantencomputing und begann im Jahr 2019 für die Covestro AG zu arbeiten. Mit seinem Team bearbeitet er rechenintensive, chemische Problemstellungen und evaluiert Möglichkeiten, um heutige und zukünftige Quantencomputer dafür zu verwenden.

Als führendes Unternehmen in der Polymerchemie betreibt die Covestro Deutschland AG aktive Forschung und Entwicklung, um ihr Produktportfolio zu erweitern und zu optimieren. Dazu untersucht die Digital R&D – Abteilung des Konzerns das Potenzial des Standes der Technik und zukünftiger Berechnungsmethoden wie High Performance Computing und Quantencomputing.

Dienstag, 4. Mai · 17-19h MESZ, Event 3: Quantum Computing meets Business

Agenda

17:00 – 17:15 – „Welcome Note“ by Organizers

17:15 – 18:15 – „Quantum Computing at Covestro AG“ by Christian Gogolin

18:15 – 18:30 – Q&A Session

Details zur Einwahl finden Sie über unsere Meetup-Seite zum Event.

Welche Quantencomputer gibt es jetzt schon?

<<     >>

Im Folgenden geben ich Ihnen einen detaillierten Überblick, welche Quantencomputer-Angebote bereits heute schon existieren und welche konkreten Pläne die Industrie für die Zukunft verfolgt. Dabei erhalten Sie einen Einblick darüber, was ein Quantencomputer ist und wie man ihn verwenden kann. Diesen Artikel aktualisiere ich regelmäßig und halte Sie über die aktuellen Entwicklungen in der Quantencomputer-Industrie auf dem Laufenden.

Ein Quantencomputer von IBM (Quelle IBM Research)

Als ich 2018 den vorliegenden Artikel zum ersten Mal verfasst habe, war die Situation der kommerziellen Hardware-Hersteller von Quantencomputern und deren Architektur-Strategien ziemlich übersichtlich. Nachdem ich ihn in der Zwischenzeit ein paar Mal angepasst habe, stelle ich fast drei Jahre später fest, dass ich den Text in großen Teilen neu schreiben sollte. Zwar haben sich die Keyplayer von vor drei Jahren weiter etabliert und beeindruckende Ergebnisse vorzuweisen. Aber weitere Firmen sind seitdem auf der Bühne erschienen, die den Markt auf gemischt haben. Gleiches gilt für die Architektur-Strategien: Hatte es 2018 noch den Anschein, als ob es auf absehbare Zeit keine andere ernstzunehmende Quantencomputer-Technologie außer den supraleitenden Qubits geben würde, so war das Jahr 2020 wohl das Jahr der Ionenfallen-Quantencomputer. Der Jahresabschluss aber gehörte den photonischen Quantencomputern, die immer mehr an Fahrt aufnehmen und deren Hersteller gerade spielend Investorengelder einsammeln. Vermutlich wird sich dieser Trend der Diversifizierung in Zukunft weiter fortsetzen.

Im Folgenden stelle ich Ihnen die Hersteller, deren Architekturen und Visionen sehr detailliert vor. In zahlreichen Fußnoten erfahren Sie zusätzliche Hintergründe und erhalten Verweise auf vertiefende Texte und Originalarbeiten. Der Artikel richtet sich an Einsteiger, die einen wirklich umfassenden Überblick erhalten wollen. Er richtet sich allerdings auch an Fortgeschrittene, die auf der Suche nach dem ein oder anderen neuen, spannenden Detail sind.

Was ist ein Quantencomputer?

Ein Quantencomputer ist eine Rechenmaschine, die nicht mit unserer Alltagslogik arbeitet, sondern mit der Quanten-Logik. Die elementaren Recheneinheiten sind dabei Quantenbits („Qubits“). Anders als herkömmliche Bits können Qubits beliebige Überlagerungen von den Zuständen „0“ und „1“ annehmen. Dies ist eine der grundlegenden Eigenschaften der Quantenmechanik („Welle-Teilchen-Dualismus“ genannt). Ich verwende dafür auf quantencomputer-info.de eine vereinfachte Qubit-Darstellung, die das Wesentliche aber gut wiedergibt i. Ein herkömmlicher Computer verwendet zur elektronischen Schaltung elementarer Logikbausteine sogenannte Gatter, die auf unserer Alltagslogik basieren. Also z.B. NICHT-, UND- und ODER-Gatter. Ein universeller Quantencomputer verwendet stattdessen Quantengatter, welche die Quantenlogik abbilden. Diese heißen z.B. H, X, Y, Z, CNOT.

 

Vereinfachte Darstellung eines Qubits, auf das ein H-Quantengatter ausgeführt wird und damit zu einer gleichmäßigen Überlagerung von „0“ und „1“ wird

Anders als herkömmliche Computer verdoppelt ein Quantencomputer sein Leistungspotential mit jedem zusätzlichen Qubit (also eine explosionsartige bzw. exponentielle Steigerung). Aktuelle Quantencomputer sind noch klein, mit aktuell 10 bis 65 Qubits, und stark limitiert (NISQ = „noisy intermediate scale quantum“, mehr dazu weiter unten im Text). Ein Quantencomputer mit einer Größe von etwa 26 perfekten Qubits lässt sich noch mit einem normalen Laptop „simulieren“ ii. Die Luft für herkömmliche Computer wird dann aber wegen der erwähnten Steigerungsrate ganz schnell dünner: Ab einer Größenordnung von etwa 50 Qubits lässt sich ein Quantencomputer von keinem aktuellen Supercomputer mehr simulieren (mehr dazu im Absatz zu Googles Quantencomputer) und danach werden die Unterschiede gewaltig iii. Aufgrund seiner andersartigen Logik, lassen sich herkömmliche Programme allerdings nicht auf einen Quantencomputer übertragen, sondern man benötigt hierfür ganz neue Quanten-Algorithmen, die Gegenstand intensiver Forschung sind. Für einige wichtige Anwendungsfälle wurden bereits Algorithmen gefunden, die einen gewaltigen Geschwindigkeitsvorteil gegenüber herkömmlichen Methoden besitzen (z.B. der „Shor-Algorithmus“ für die Primfaktorzerlegung). Diese eint allerdings auch die Tatsache, dass sie sehr große, fehlerkorrigierende Quantencomputer benötigen.

Für weitere Informationen empfehle Ihnen meine umfangreiche Einführung Der unglaubliche Quantencomputer einfach erklärt“. Dort werden Sie noch mehr spannende Dinge über das Prinzip der Quantencomputer erfahren. Unter anderem erkläre ich Ihnen anhand eines Zeigerbildes wie die „spukhafte“ Quanten-Verschränkung funktioniert. Außerdem erfahren Sie wie ein Quantencomputer-Programm aussieht und wie Sie eines schnell mal selbst online ausprobieren können. Zusätzlich erkläre ich Ihnen auf einfache Weise und sehr bildlich, wie ein bekannter Such-Algorithmus für Quantencomputer (der „Grover-Algorithmus“) in etwa funktioniert.

Qubitzahl, Quantenvolumen und Fehlerraten: Die „bittere Wahrheit“ über NISQ-Quantencomputer

 

Techniker von IBM am „dilution refrigerator“ eines NISQ-Quantencomputers (Quelle IBM Research)

Um das Potential von konkreten Quantencomputern zu Klassifizieren, verwendete man bis vor Kurzem in erster Linie die Anzahl von Qubits. Hierbei liegen supraleitende Quantencomputer aktuell deutlich vorn. Die Kennzahl ist durchaus sinnvoll, da ein Quantencomputer mit jedem zusätzlichen Qubit seine Leistungsstärke verdoppelt. Zumindest auf dem Papier, denn die aktuellen NISQ-Quantencomputer besitzen diverse entscheidende Einschränkungen:

Aufgrund von Umgebungsstörungen können sie den Quantenzustand der Qubits meistens nur für eine kurze Zeitspanne aufrechterhalten (ausgedrückt über die „T1-“ und „T2-Decoherence-Time“). Unter anderem hierbei unterscheiden sich die Ansätze der Quantencomputer-Anbieter stark: Ionenfallen-Quantencomputer besitzen z.B. eine wesentlich größere Qubit-Güte (Sekunden bis zu Stunden) als supraleitende Qubits (etwa 100 Mikrosekunden) iv.

Jede Einzelschaltung hat eine gewisse Fehlerrate („Gate-Fidelity“). Diese sind um viele Größenordnungen größer als bei herkömmlichen Computern und sind der Hauptgrund, warum Quantenprogramme aktuell bestenfalls zweistellige Schaltungstiefen besitzen dürfen: Aktuelle Fehlerraten sind für 1-Qubit-Gatter Größenordnungen von: 0.1% bzw. 1 Fehler je 1000te Schaltung und für 2-Qubit-Gatter 1% bzw. 1:100.

Nicht alle Qubits können paarweise miteinander verschaltet werden („Connectivity“). Für supraleitende Quantencomputer können normalerweise nur die nächsten Nachbar-Qubits kombiniert werden. Das bedingt dann zusätzliche, fehlerbehaftete Tauschoperationen („Swaps“). Auch hierbei sind Ionen-Fallen Quantencomputer wesentlich flexibler.

Im Verbund können sich die Qubits und Quanten-Schaltungen gegenseitig stören („Crosstalk“).

Beim Initialisieren der Qubits und beim Auslesen des Ergebnisses können zusätzliche Fehler auftreten („Readout Error“ bzw. „SPAM-Error“, Größenordnung 1% bzw. 1:100).

Was diese Fehlerquellen und Einschränkungen in der Praxis bedeuten, können Sie z.B. sehr schön in der Untersuchung „The Bitter Truth About Quantum Algorithms in the NISQ Era“ von der Universität Stuttgart erkennen v. Ob man in der Lage sein wird mit NISQ-Quantencomputern einen Quantenvorteil in praktischen und Industrie-relevanten Anwendungen zu erzielen ist aktuell noch offen und Gegenstand intensiver Forschung vi. Auf der anderen Seite steigt die Zahl der Firmen in etablierten Märkten, die bereits in den nächsten Jahren Budget für das Quantencomputing einplanen, stark an vii.

Um den Einschränkungen von NISQ-Quantencomputern in einer einzigen Kennzahl Rechnung zu tragen hat IBMs Quantum-Team 2018 ein Protokoll entwickelt, dass die „effektive“ Qubitanzahl ermitteln soll. Die Kennzahl „Quantenvolumen“ („Quantum Volume“) basiert auf einem Benchmark-Protokoll viii: Dafür misst man das größtmögliche „quadratische“ Quantenprogramm eines bestimmten, einigermaßen aussagekräftigen Typs, das „überzeugende“ Ergebnisse liefert („quadratisch“ bedeutet hier: Die Anzahl der verwendeten Qubits und die Schaltungstiefe sollen gleich sein). Die Quantenprogramme für die Benchmarks müssen einen bestimmten, zufallsbasierten Aufbau besitzen und prüfen dabei die obengenannten Einschränkungen. Allerdings darf der Quantencomputer diesen Aufbau für praktische Gründe zunächst in eine hardware- freundlicheren Aufbau umkompilieren. Aus diesem Quadrat ermittelt man eine effektive Qubitanzahl „q“ (die Firma IonQ nennt diese Zahl auch „algorithmische Qubits“). Das Quantenvolumen ist dann der Wert 2 hoch „q“, um den exponentiellen Charakter der Quantencomputer Rechnung zu tragen.

Die Kennzahl „Quantenvolumen“ hat sich mittlerweile größtenteils industrieweit etabliert. Sie ist aber nicht frei von Kritik. Scott Aaronson, einer der renommiertesten Forscher für Quantencomputing, empfiehlt eher auf alle oben genannten Kennzahlen zu achten ix, weil die Differenzierungen von Fall zu Fall gewaltige Auswirkungen haben können. Ein normaler Laptop-Rechner hätte z.B ein viel größeres Quantenvolumen als der Quantencomputer Sycamore in Googles Quanten-Überlegenheits-Nachweis (hierzu später mehr). Im Umkehrschluss bedeutet Aaronsons Kritik: Gerade in der NISQ-Ära kann die Wahl der Hardware für einen bestimmten Algorithmus und eventuell für einen bestimmten Anwendungsfall entscheidend sein.

Googles supraleitender Quantencomputer „Sycamore“ und die „Quanten-Überlegenheit“

(Google Campus, Quelle „Niharb“)

2013 gründete Google das Quantum AI Lab. Das Quantum AI Lab ist ein Team, das von dem langjährigen, deutschen Google-Mitarbeiter und KI-Forscher Hartmut Neven geführt wird. Es sollte zunächst die Möglichkeiten untersuchen, eine völlig neue Quanten-Hardware der Firma D-Wave-Systems für die künstliche Intelligenz zu nutzen x. Mehr zu D-Waves „Quanten-Annealer“ weiter unten im Text. Als sich abzeichnete, dass der Quantencomputer von D-Wave noch gewisse Einschränkungen hatte, beschloss Google einen eigenen, universellen Quantencomputer zu bauen. 2014 startete das Google Quantum AI Lab eine Koorperation mit dem bekannten Physiker John Martinis von der University of California, Santa Barbara. Er ist einer der führenden Experten für supraleitende Qubits und sollte den Bau des Quantencomputers leiten.

Die Supraleiter-Technologie (bzw. genauer „Circuit QED“) ist einer der aussichtsreichsten Kandidaten um verlässliche, universelle Quantencomputer zu bauen xi xii. Diese gründet letztendlich auf integrierten Schaltkreisen, die durch bekannte Fertigungsmethoden auf einen herkömmlichen Chip gedruckt werden können. Die Schaltkreise verhalten sich ähnlich wie normale Schwingschaltkreise und werden enorm heruntergekühlt, bis fast zum absoluten Temperatur-Nullpunkt („Cryogenics“). Das entstandene Elektronenkondensat erhält dadurch supraleitende Quanteneigenschaften. In dem man gezielt Lücken in jeden Schaltkreis einbaut, sogenannte „Josephson Junctions“, ist es möglich die ansonsten beliebig vielen Zustände des Quantenschaltkreises zu einem Quantensystem mit zwei isolierten Zuständen zu reduzieren xiii („0“ und „1“): Ein supraleitendes Qubit ist entstanden.

Durch schlangenförmige Wellenleiter, sogenannte „waveguide resonators“ die sich ebenfalls auf dem Chip befinden, werden die Supraleiter-Qubits mit einzelnen Lichtteilchen bzw. Photonen im Mikrowellen-Bereich bestrahlt. Die Qubits führen dudurch feinjustierte Übergänge zwischen den beiden Zuständen „0“ und „1“ aus („Rabi-Oszillationen“). Auf diese Weise können die Quantengatter geschaltet und somit die Qubits im Laufe eines Quantenprogramms geändert werden (z.B. die Gatter H, X, Y, Z und CNOT). Auf ähnliche Weise werden die Qubits am Ende des Programms ausgelesen: Die unterschiedlichen Zustände der Qubits verschieben die Resonanzfrequenz der schlangenförmigen Wellenleiter, und diese Verschiebung kann gemessen werden xiv. Der winzig kleine Quantenchip wird an den Fuß eines Gerüsts eingehangen, das aus thermischen Leitern und Kühlaggregaten besteht, die den Chip herunterkühlen („dilution refrigerator“). Die Verbindungen bestehen z.B. aus gebogenem Gold, welches ein idealer thermischer Leiter ist und fexibel auf Verformungen reagiert. Außerdem sieht es ziemlich cool aus :-)! Der ganze Aufbau wird oben mit der externen Steuerelektronik verkabelt und schließlich in einen großen Vakuum-Behälter platziert, der außerdem das Erdmangetfeld abschirmen muss.

Der Vorteil der Supraleiter-Technologie ist es, dass die einzelnen Bestandteile groß im Vergleich zu anderen Quantenobjekten sind. Dadurch lassen sie sich vergleichsweise einfach herstellen und verschalten und ermöglichen verschiedene Architekturansätze (in Googles und IBMs Fall sind es z.B. sogenannte „Transmon“-Qubits). Die Nachteile sind die relativ kurze Lebensdauern der Qubit-Zustände und die benötigte Tiefkühltechnik.

Nahaufnahme eines Quantenchips mit 4 supraleitenden Qubits, allerdings von Googles Konkurrenten IBM, Quelle IBM / Wikipedia: Die schlangenförmigen Linien sind die oben erwähnten Wellenleiter für Mikrowellen-Photonen. Die eigentlichen Qubits sind die kleinen Köpfe der „Nägel“, die nach außen zeigen. Den entsprechenden Fachartikel in „Nature“ 2017 finden Sie ebenfalls über den Link

 

Googles Labor sammelte zunächst unter John Martinis Leitung eine Zeit lang Erfahrungen mit einem 9-Qubit-Quantencomputer. Später begannen sie die Technologie hochzuskalieren. Ziel dabei war es auch das prestigeträchtige Ziel der „Quanten-Überlegenheit“ als erste Gruppe zu erreichen. Anfang 2018 gab Googles Team bekannt, dass ein 72-Qubit-Quantencomputer im Testbetrieb sei, und es sah alles nach einer gewaltigen Sensation aus. Tatsächlich wurde der Quantencomputer „Bristlecone“ allerdings nie in Betrieb genommen. Diese Episode ist ein Beispiel dafür, dass die reine Qubit-Anzahl zunächst nichts aussagt, wenn die anderen relevanten Kennzahlen nicht in den Griff bekommen werden. Außerdem zeigt sie sehr anschaulich, dass alle Ankündigungen der Quantencomputer-Hersteller eine gewisse Unsicherheit besitzen und jeder Schritt mit neuen, zum Teil großen, technologischen Hürden verbunden ist.

Im September 2019 sorgte Google dann aber durch eine geleakte Vorveröffentlichung für einen Paukenschlag. Darin wurde der neue und bis dato unbekannte Quantencomputer „Sycamore“ mit einer Größe von 53 Qubits beschrieben. Zum Vergleich: Der zu diesem Zeitpunkt größte Quantencomputer von IBM besaß 30 Qubits. Google war in der Lage auf „Sycamore“ eine spezielle Quanten-Rechenaufgabe (das „Quantum Random Circuit Sampling“) in Sekundenschnelle auszuführen, die auf den schnellsten aktuellen Supercomputern vermutlich 10 000 Jahre dauern würde. Die offizielle Veröffentlichung folgte einen Monat später. Die Rechenaufgabe war zwar zunächst rein akademisch. Googles Weckruf beweist aber, dass das Prinzip der Quantencomputer und die Vorhersagen dafür tatsächlich in der Praxis umgesetzt werden können: Für gewisse Probleme funktionieren Quantencomputer grandios besser als herkömmliche Computer. Möglich wurde der Durchbruch auch dadurch, dass Martinis Team es schaffte die Fehlerraten der Quantengatter um einen Faktor 10 zu unterdrücken und zwar unabhängig davon wie viele Schaltungen gerade aktiv waren. Alle Details und Erläuterungen zu diesem großen Meilenstein erfahren Sie in meinem Artikel Googles Nachweis der Quanten-Überlegenheit“.

Im Anschluss an Googles Arbeit gab es ein paar Veröffentlichungen, die das Ergebnis in Teilen relativierten (u.a. von IBMs-Team). Die Kernaussage hat aber bis heute bestand. Interessanterweise tauschte Googles Team ein Jahr später die Rollen und stellte seinerseits die Ergebnisse des chinesischen Teams in Teilen in Frage (s.u.den Abschnitt über Chinas Quantencomputer).

Einige Wochen später besuchte John Martinis das California Institute of Technology (Caltech) und hielt dort einen ersten Vortrag zu dem Durchbruch xv. Hier bekommen Sie viele spannenden Details über Googles Quantencomputer zu hören … mit den Worten des Meisters :-).

Nebenbei ist Sycamore aktuell auch der erste Quantencomputer der eine planare, schachbrettartige Anordnung der Qubits mit einer Kopplung der nächsten Nachbar-Qubits besitzt. Diese Qubit-Anordnung ist zum Hochskalieren zukünftiger Quantencomputer besonders wichtig. Um die NISQ-Ära hinter sich zu lassen und wirklich komplexe Quantenprogramme auszuführen, müssen Quantencomputer „fehlerkorrigierte“ Qubits besitzen. Aus diesem Grund ist die „Quantenfehlerkorrektur“ seit jeher ein wichtiger Forschungszweig auf dem Gebiet. Hierbei werden verschaltete Qubitgruppen zu einem einzigen „logischen Qubit“ zusammengefasst, das dann korrigiert werden kann. Die Kehrseite dabei ist, dass dies die tatsächliche Anzahl von verfügbaren Qubits teils drastisch reduziert. Der aussichtsreichste Algorithmus zur Quantenfehlerkorrektur ist der sogenannte „Surface Code“ xvi, der gerade diese planare Qubit-Anordnung benötigt.

Googles Team und die Roadmap

Kurz nach Googles Veröffentlichung endete die erfolgreiche Koorperation zwischen Google und Martinis ziemlich überraschend xvii. Mittlerweile ist Googles Hardware-Team aber wohl so stark aufgestellt, dass es den vorgezeichneten Weg weiter beschreitenwird.

Im Herbst 2020 veröffentlichte Hartmut Neven Googles Roadmap für die nächsten 10 Jahre xviii. Darin skizziert er, wie sein Hardware-Team die aktuelle Technologie bis zum Jahr 2029 zu einem Quantencomputer mit 1000 logischen, fehlerkorrigierten Qubits hochskalieren will. Dabei plant Googles Hardware-Team zunächst zu verifizieren, ob der Surface-Code, die Quantenfehlerkorrektur und logische Quantengatter in der Praxis überhaupt umgesetzt werden können xix.

Neben der Weiterentwicklung der eigenen Hardware, untersucht Googles Quantum AI Lab die Anwendungsmöglichkeiten von heutigen und von zukünftigen Quantencomputern und zwar besonders in den Bereichen Maschinelles Lernen, Chemische Simulationen und Optimierungsaufgaben xx xxi. Dazu ist das Team mit einigen Spitzenforschern stark besetzt. Die Algorithmen für NISQ-Quantencomputer teilen die Eigenschaft, dass sie Quanten-klassische „Hybrid-Algorithmen“ sind. Dazu werden Quantenschaltkreise konstruiert, ausgemessen und dann mittels herkömmlichen Computern für den nächsten Durchlauf optimiert. Dadurch werden schrittweise die Stärken von sowohl Quantencomputern als auch von klassischen Computern ausgenutzt. Diese Verfahren haben den bestechenden Vorteil, dass ihr Quantenanteil sehr kurz sein kann und noch von den aktuellen Quantencomputern bewältigt werden kann. Mehr dazu erfahren Sie auch in meinem Artikel „Anwendungen für Quantencomputer“.

Für die eigenen Quantenprogramme hat Google mit „Cirq“ eine Erweiterung für die beliebte Programmiersprache Python veröffentlicht xxii, über die Quantencomputer ferngesteuert werden können. Basierend auf „Cirq“ hat das Quantum AI-Team die Entwicklung weiterer OpenSource-Frameworks für die chemische Simulation xxiii und für Maschinenlernen bzw. künstliche Intelligenz xxivgestartet.

Das Quantum AI-Team sucht aktuell gezielt nach Kooperationspartner mit einer starken Forschungsabteilung, um die Möglichkeiten der eigenen Hardware für diese Anwendungsgebiete gezielt an konkreten Beispielen zu untersuchen. Googles Quantencomputer stehen aktuell nur diesem exklusiven Anwenderkreis zur Verfügung. Ganz im Gegensatz zu dem anderen Big Player für supraleitende Quantencomputer ….

IBMs Quantencomputer-Flotte in der Cloud

Ein Quantencomputer von IBM (Quelle IBM Research)

IBM ist der Tech-Riese, der von Anfang stark im Bereich Quantencomputer engagiert war. Bereits 2001 sorgte das Unternehmen für Aufsehen, als es den ersten experimentellen Beweis für Shor‘s berühmten Faktorierungsalgorithmus für Quantencomputer lieferte xxv.

Im Mai 2016 startete IBM dann ein völlig überraschendes und sensationelles Cloud-Angebot: In der „IBM Quantum Experience“ stellte IBM als erstes Unternehmen überhaupt den eigenen 5 Qubit Quantencomputer für die Öffentlichkeit zur Verfügung. Seitdem hat IBM insgesamt 28 Systeme zum Einsatz gebracht. Dabei stehen mehrere Quantencomputer mit bis zu 32 Qubits für jeden Interessenten zur Verfügung. Die größeren Systeme sind für Premium-Kunden vorbehalten. Aber selbst die „kleineren“ Quantencomputer werden regelmäßig verbessert und ihr Quantenvolumen wird vergrößert. IBMs aktuell leistungsstärkster Quantencomputer ist der „Hummingbird“ mit 64 Qubits.

https://www.ibm.com/quantum-computing/experience/

Die Quantum Experience von IBM ist über die Jahre zu einer beeindruckenden Größe herangewachsen: Aktuell betreibt IBM insgesamt 18 Quantencomputer gleichzeitig, die für 250 000 User verfügbar sind (Stand Februar 2021). IBMs Cloud-Angebot hat bisher 500 Milliarden Quantenprogramme ausgeführt (mit Tageshöchstwerten von 1 Milliarde Quantenprogrammen), was unter anderem zu 400 wissenschaftlichen Veröffentlichungen führte xxvi.

Wie Googles Quantencomputer sind IBMs Systeme universelle Quantencomputer und basieren ebenfalls auf der Supraleitertechnologie. Dabei werden die üblichen Standard-Quantengatter durch native Quantengatter erzeugt, die charakteristisch für die konkrete Hardware sind. Ein X-Gatter wird z.B. bei IBM durch ein Quantengatter mit der Bezeichnung „U3(π,0,π)“ erzeugt. Die Umwandlung in die nativen Quantengatter bezeichnet man als Transpilation. An dieser Parametrisierung erkennt man auch, dass die Effektivität von gewissen Schaltungskombinationen von Quantencomputer zu Quantencomputer stark abweichen kann.

Wie für alle Quantencomputer gilt auch für die Systeme von IBM: Qubit ist nicht gleich Qubit. Jedes Qubit besitzt seine eigene charakteristische Decoherence-Time (s.o.) und nicht jedes Qubit kann mit jedem anderen Qubit verschaltet werden. IBM muss die Qubits in seinen Quantencomputern deshalb ständig neu kalibrieren. Die aktuellen Metriken und die Auslastung der einzelnen Systeme können die Anwender jederzeit einsehen und eine konkrete Implementierung sollte die aktuellen Metriken berücksichtigen und dafür optimiert werden.

Als Programmierschnittstelle für Anwender stellte IBM im Jahr 2016 zunächst einen grafischen „Composer“ bereit, über den einfache Schaltkreise für die Quantencomputer schnell zusammen geklickt werden können.

IBMs Composer für Quantenprogramme (Quelle IBM Research)

Kurze Zeit später veröffentliche IBM die Erweiterung „Qiskit“ für die beliebte Programmiersprache Python. Über Qiskit können Anwender Quanten-Programme zunächst lokal auf dem eigenen Rechner in einem Simulator vorbereiten und dann an den gewünschten Quantencomputer in der Quantum Experience schicken.

Aufgrund der riesigen Anwenderbasis von IBMs Cloudangebot ist „Qiskit“ derzeit das mit Abstand beliebteste Framework für Quantenprogramme. IBM entwickelt hierfür regelmäßig neue Module: Mit „Pulse“ veröffentlichte IBM z.B. vor Kurzem ein Modul, mit dem der Anwender die nativen Quantengatter der Systeme direkt ansprechen kann. Normalerweise erledigt das Transpilation das Framework komplett selbstständig. Ebenfalls relativ neu ist das Modul „Gradient“ mit dem die sehr komplexen Optimierungsoperationen der oben erwähnten „Hybrid-Algorithmen“ für klassische Rechner und Quantenrechner gezielt unterstützt werden. Neben dem Framework selbst enthält Qiskit eine Vielzahl von Beispielprogrammen und zwar auch zu aktuellen, wissenschaftlichen Veröffentlichungen. IBM veranstaltet regelmäßige „Qiskit Camps“ xxvii und Qiskit-Hackathons. Auf Slack.com gibt es einen eigenen Qiskit-Channel, in dem aktuell etwa 15 000 Mitglieder zusammenarbeiten.

In meinem Artikel „Quantencomputer programmieren mit IBMs Qiskit“ erfahrend sie noch mehr über das Programmieren mit Qiskit. Insbesondere zeige ich Ihnen dort, wie man den sogenannten „Grover-Algorithmus“ konkrekt programmiert.

Auf der Quantum Experience finden sich außerdem eine Vielzahl von sehr hilfreichen Dokumentationen: Der „Userguide“ vermittelt Einsteigern auf möglichst einfache Weise einen Überblick über das Quantencomputing und erläutert das Prinzip von ein paar grundlegenden Quanten-Algorithmen xxviii. Das „Textbook“ ist ein Lehrbuch in Form von „Jupyter Notebook“-Seiten und eine konkrete Einführung in das Quantencomputing mit Qiskit xxix. Wie Qiskit selbst ist das „Textbook“ auf Github als Opensource-Projekt öffentlich zugänglich.

IBMs Roadmap

Im September 2020 kündigte IBM eine Roadmap für die nächsten Jahre an. Im Gegensatz zu Google gab das IBMs Team dabei ein paar konkretere Details bekannt xxx. Demnach soll bereits im Jahr 2021 ein 127-Qubit Quantencomputer mit dem Namen „Eagle“ in Betrieb genommen werden. Im Jahr 2022 soll dann ein 433-Qubit- und 2023 sogar ein 1,121-Qubit-System folgen. Falls IBM diesen Fahrplan aufrecht halten kann, wären dies jeweils gewaltige technologische Sprünge. Für die folgenden Schritte muss IBM zunächst eine neue Tiefkühltechnologie einführen, die in der Lage ist, wirklich große Quantencomputer bis fast zum Temperatur-Nullpunkt zu kühlen. Auch an diesem „Goldeneye“-System forscht das Team.

IBM Roadmap für Quantencomputer (Quelle IBM Research)

Wie auch die anderen Hersteller hat IBM dabei aber tatsächlich besonders ein Fernziel im Auge: Die Entwicklung eines hochskalierten Quantencomputer, der in der Lage ist die Algorithmen für die Quantenfehlerkorrektur auszuführen. Dies reduziert zwar die effektive Anzahl an „logischen Qubits“ um etwa den Faktor 1000, dafür sind dadurch beliebig lange Quantenprogramme möglich. Insbesondere auch die Programme, von denen man jetzt schon weiß, dass sie einen Quantenvorteil gegenüber herkömmlichen Computeralgorithmen besitzen werden.

Für die zukünftige Quantenfehlerkorrektur verfolgt IBM eine Strategie, den das Team als „Bottom-Up“-Ansatz bezeichnet. Hierzu haben die Forscher des Konzerns einen neuen Fehlerkorrektur-Algorithmus entwickelt, der speziell auf genau die Qubit-Struktur optimiert ist, die sie gut kontrollieren können xxxi. In Zukunft verwendet IBM für die eigenen Quantencomputer deshalb nur noch eine sogenannte „heavy-hexagon“-Qubit-Struktur.

Neben diesem Fernziel forscht IBM weiterhin daran, dass Potential der aktuellen NISQ-Quantencomputer auszuloten. Dazu sind am „IBM Quantum Network“ etwa 130 Großkonzerne (wie Daimler, Samsung und JP Morgan), Forschungseinrichtungen und Startups beteiligt, die entsprechende Anwendungen zusammen untersuchen xxxii. Das selbst mit sogenannten „Noisy Shallow Quantum Circuits“ auf NISQ-Systemen ein Quantenvorteil gegenüber herkömmlichen Methoden möglich ist, berechnete das Team 2020 in Zusammenarbeit mit der Technischen Universität München xxxiii.

Rigetti Computing‘s Quantencomputer: Ein David unter Goliaths

In 2013 verließ Chad Rigetti das Quantencomputer-Team bei IBM und gründete die Firma Rigetti Computing. Über mehrere Finanzierungsrunden konnte er genug Investoren für seine Pläne gewinnen: Einem neuen Global Player im Quantencomputer-Markt. Mittlerweile besitzt die Firma ein üppiges Kapitalpolster. Im Juni 2017 startet Rigetti Computing das eigene Quantencomputer-Cloudangebot xxxiv. Aktuell bietet Rigetti fünf Quantencomputer mit bis zu 28 Qubits an. Wie IBM und Google setzt Rigetti dabei auf supraleitende Qubits. Und ebenfalls richtet sich Rigetti als „Fullstack“-Anbieter aus: Also als ein Anbieter der von der Hardware über die Cloudangebote und den Programmierschnittstellen bis hin zu Highlevel-Anwendungen die gesamte Quantencomputer-Palette anbietet. Auch Rigetti setzt als Programmierschnittstelle auf eine Python-API mit dem Namen „Forest“. Als Anwendungsbeispiel für ihr Komplettpaket geben sie etwa die Simulation von Bindungsenergien in Atomenkernen an xxxv.

Quantencomputer durch Ionenfallen

Die Geschichte der Ionenfallen-Quantencomputer („Ion-Trap“) beginnt in Innsbruck, Österreich. Wenige Wochen nachdem Ignacio Cirac and Peter Zoller im Jahr 1995 von Shors spektakulären Faktorierungsalgorithmus hörten, hatten sie die Idee Ionen in sogenannten Ionenfallen mit geeignetem Laserlicht zu bestrahlen, um damit sowohl Qubits als auch die grundlegenden Quantengatter zu erzeugen xxxvi xxxvii xxxviii.

Ionen sind nichts anderes als angeregte bzw. geladene Atome. Für einen Quantencomputer haben sie den riesigen Vorteil, dass sie komplett identische Quantensysteme darstellen. Hinzu kommt, dass z.B. die Hyperfeinstruktur-Zustände von Ionen sehr langlebig sein können (aus diesem Grund werden solche „hyperfine clock states“ auch für Atomuhren verwendet), und sich sehr gut auf ein Zwei-Zustands-System reduzieren lassen: Ein Qubit. Einfangen und kontrollieren lassen sich einzelne Ionen in einer Ionenfalle, für die der deutsche Physiker Wolfgang Paul mit anderen 1989 den Nobelpreis bekam („Paulfalle“) xxxix. Aktuelle Ionenfallen können in Miniaturgröße hergestellt werden und bis zu 50 einzelne Ionen bewältigen. Die hier vorgestellten Ionenfallen-Quantencomputer verwenden alle Yb+ Ionen, da die notwendigen Laser hierfür besonders günstig für den Betrieb sind. Für die Quantengatter induzieren die Laser die Zustandswechsel der einzelnen Qubits (z.B. von Zustand „0“ nach Zustand „1“) nur über Zwischenzustände, die ähnlich wie eine Barriere wirken, und unbeabsichtigte Zustandswechsel unwahrscheinlich machen („stimulierte Raman-Übergänge“). Mit einer ähnliche Methode werden die Qubits für den Start eines Quantenprogramms im Vorfeld in einen definierten „0“-Zustand „gepumpt“, der wie eine Sackgasse keine Übergänge in die Rückrichtung zulässt.

Für die Praxis haben Ionenfallen noch einen weiteren großen Vorteil: Zwar müssen Ionenfallen die Ionen ebenfalls „herunterkühlen“, da diese aber vollkommen isoliert sind, erreichen die Fallen dies über eine Rundumbestrahlung durch Laserlicht. Dies stoppt die Ionen in Richtung der Eigenbewegung immer weiter ab. Dadurch kann ein Ionenfallen-Quantencomputer, ganz im Gegensatz zu einem Supraleiter-Quantencomputer, sogar bei Zimmertemperatur betrieben werden!

Zoller und Cirac haben mittlerweile zusammen mit ihrem Innsbrucker Kollegen Rainer Blatt das Startup „AQT“ gegründet xl. Ihr zunächst theoretischer Ansatz wurde von einem Team um Christopher Monroe (damals am National Institute of Standards and Technology in Colorado) noch im selben im Jahr 1995 experimentell bestätigt xli. Monroe gründete 2015 zusammen mit anderen die Firma „IonQ“.

Neben einigen klaren Vorteilen (z.B. sehr stabile Qubits, volle Qubit-Konnektivität, Betriebstemperatur) besteht bei Ionenfallen-Quantencomputer die große Herausforderung, dass viele Fallen miteinander kombiniert werden müssen, um die Technologie hochzuskalieren.

Honeywell und der erste kommerzielle Ionenfallen-Quantencomputer weltweit

Honeywells Zentrale in New Jersey, Quelle Wikipedia

Einmal im Jahr versammelt sich das Who-Is-Who der Quantencomputer-Branche in der Konferenz „Quantum For Business“ (kurz „Q2B“) der Startup-Firma QCWare aus dem Silicon Valley. Ein Highlight der Q2B 2019 war definitiv der spannende Vortrag von Tony Uttley der Firma Honeywell xlii. In ihm stellt Uttley den ersten kommerziellen Ionenfallen-Quantencomputer weltweit vor. Die Neuigkeit war tatsächlich eine Überraschung gewesen: Obwohl Honeywell in vielen Technologiefeldern stark vertreten ist, hatte man den Konzern beim Thema Quantencomputer eigentlich nicht auf dem Schirm gehabt. So konnte die Firma sein vielfältiges Knowhow in verwandten Technologien bündeln und ein eigenes Quantencomputer-Team unter dem Radar der Öffentlichkeit zusammenstellen.

Im Juni 2020 nahm Honeywell den Quantencomputer H0 mit 6 Qubits in Betrieb und veröffentlichte eine wissenschaftliches Arbeit dazu xliii. Dank der Qubit-Güte und der vollen Konnektivität der Qubits war der H0 mit einem Schlag der Quantencomputer mit dem größten Quantenvolumen. Im Benchmark erzielte Honeywells System den Wert 64. Nur wenige Monate danach nahm Honeywell einen verbesserten Quantencomputer, mit 10 Qubits und einem Quantvolumen von 128, in Betrieb.

Honeywell verwendet für seine Ionenfallen-Quantencomputer eine 2 dimensionale Struktur, die es erleichtern soll in Zukunft mehrere Ionenfallen miteinander zu verbinden. Für diesen Zweck sind Honeywells Ionen auch nicht ortsgebunden, sondern werden über Radiowellen durch die Ionenfalle zu einem „Interaktionsbereich“ bewegt, in denen die 1-Qubit- und 2-Qubit-Quantengatter ausgeführt werden. Über diesen Weg kann insbesondere jedes Qubit mit jedem anderen Qubit verschaltet werden. Eine Besonderheit von Honeywells Quantencomputern ist, dass als „Ionen“ tatsächlich ein Verbund von 2 Ionenpaaren Yb-Ba verwendet werden. Die Ba-Ionen werden nur zur Kühlung bzw. zum Abbremsen der Yb-Ionen benötigt. Indem Honeywell aber jeweils 2 Yb-Ionen für ein Qubit verwendet, kann der Zustand des einen Yb-Ions ausgemessen werden und das Resultat der Messung kann wieder in das Quantenprogramm einfließen. Honeywell bezeichnet dies als „If-Statement“, das auch in der klassischen Programmierung verwendet wird. Dieses Feature war ein absolutes Novum unter den aktuell entwickelten Quantencomputern und ist eine wichtige Voraussetzung für zukünftige Algorithmen zur Quantenfehlerkorrektur.

Wie bei den anderen Anbieter, erreicht man Honeywells Quantencomputer per Fernzugriff. Ein entsprechender Zugang kann per Formular beantragt werden. Zur Programmierung wird aktuell die Sprache „OpenQASM“ verwendet, die ursprünglich von IBM vorgeschlagen hatte und einen Assembler-artigen Syntax besitzt. Ein eigenes Software-Team hat Honeywell nicht, sondern koorperiert zur Evualierung der Hardware mit verschiedenen Startups im Bereich Quantencomputing.

Aus dem Stand heraus ist Honeywell also ein Turbostart in die Riege der Quantencomputer-Hersteller gelungen: Vom „No-Name“ zu einem führenden Anbieter mit einem Quantenvolumen-Rekord von 128. Allerdings sah es zunächst so aus, als ob dieser Rekord nur wenige Tage halten würde …

IonQs Ionenfallen-Quantencomputer

Bereits seit den 1990ern ist Christopher Monroe von der University of Maryland ein führender Wissenschaftler für Ionenfallen-Quantencomputer. Dort entwickelte er zusammen mit seinem Team einen experimentellen 11 Qubit Ionenfallen-Quantencomputer in Laborgröße. Anders als andere Teams verwendete er für die Benchmark-Tests keine rein akademischen Quantenschaltungen, sondern Quantenalgorithmen aus dem Lehrbuch. Also kleine Quantenprogramme, die eine sinnvolle Berechnung ausführen. Zum Einen konnten sie den Bernstein-Vazirani-Algorithmus mit allen 11 Qubits ausführen: Dieser ermittelt mit einem einzigen Aufruf für eine Binärfunktion den „geheimen Schlüssel“, eine Bit-Sequenz aus 0en und 1en, welche die Binärfunktion erzeugt xliv. Das gleiche Problem spielt übrigens auch, auf abgewandelter Weise, die zentrale Rolle im Quantenvorteils-Arbeit für NISQ-Quantencomputer von IBM und der Universität München (s.o.). Außerdem konnte Monroes Team das sogenannte „Hidden-Shift“-Problem lösen, das auf klassischen Computern einen exponentiellen Aufwand besitzt xlv.

 

Frühes Bild von Christopher Monroe in einem Labor, Quelle Marym1234 / Wikipedia

Einen guten Einblick in die Arbeit bekommen Sie über Monroes packenden Vortrag aus dem Jahr 2018 xlvi. Darin geht er auch auf seine Firma IonQ ein:

Bereits vor einigen Jahren startete Monroe eine Kooperation mit Jungsang Kim von der Duke University, der besonders auf die Miniaturisierung von Ionenfallen-Quantencomputern spezialisiert ist. Zusammen entwickelten sie u.a. Strategien, wie man mehrere Ionenfallen über Photonenbrücken, also mittels Lichtteilchen, zu einem skalierbaren Ionenfallen-Quantencomputer koppeln könnte xlvii. Aus dieser Zusammenarbeit wurde IonQ im Jahr 2015 gegründet. Ziel war es dabei zunächst den experimentellen 11 Qubit-Quantencomputer aus Maryland in eine Miniaturform zu überführen und als kommerzielles Produkt anzubieten. Letzteres geschah im August 2020 über den zeitgleich gestarteten neuen Cloud-Dienst „Amazon Braket“. Einige Monate zuvor hatte die Firma Details zum Quantencomputer und zu den Benchmarks bereits in einer wissenschaftlichen Arbeit veröffentlicht xlviii.

Aktuell fokussiert sich IonQ darauf die Hardware-Entwicklung voranzutreiben. Der Zugriff auf IonQs Systeme erfolgt über die neuen Cloud-Dienste von Amazon und von Microsoft, über die Quantencomputer von verschiedenen Herstellern erreichbar sind. Beide Angebote stelle ich weitere unten genauer vor.

Wenige Tage nachdem Honeywell den Quantenvolumen-Rekord mit dem 10 Qubit-System H1 bekannt gab, kündigte IonQ im Oktober 2020 einen neuen Quantencomputer mit 32 Qubits an. Da der Hardwareansatz vergleichbar mit dem von Honeywell ist, kann man bei IonQs neuen Quantencomputer von einem Quantenvolumen von über 4 Mio ausgehen! Dabei erkennt man auch, dass die Maßeinheit „Quantenvolumen“ wohl bald zu unhandlich wird. IonQ setzt sich deshalb auch dafür ein, in Zukunft die Einheit „Algorithmische Qubits“ zu verwenden. Die Meldung hatte aber einen Schönheitsfehler: Abgesehen von der Ankündigung, gab es bis heute weder eine wissenschaftliche Veröffentlichung mit den Details über den neuen Quantencomputer, noch ist die neue Hardware verfügbar. Es mag zwar nur eine Frage der Zeit sein aber bis jetzt hat Honeywells Rekord weiterhin Bestand.

Wie auch IBM und Google stellte IonQ im Herbst 2020 eine Hardware Roadmap vor xlix. Laut der Roadmap rechnet IonQ die nächsten Jahre mit den algorithmischen Qubits. Danach plant die Firma, logische, fehlerkorrigierte Qubits zu verwenden. Aufgrund ihrer Qubit-Güte und deren vollen Konnektivität geht IonQ davon aus, dass einfachere Algorithmen für die Quantenfehlerkorrektur hierfür ausreichen werden. Laut Roadmap planen sie im Jahr 2025 64 fehlerkorrigierte Qubits und im Jahr 2026 bereits 256 fehlerkorrigierte Qubits bereitstellen zu können. Die dafür notwendige Fehlerkorrektur käme mit einem Verhältnis von 16:1 und danach mit 32:1 aus (Verhältnis physische Qubits zu logischen Qubits). Zum Vergleich: Google und IBM planen mit Quantenfehlerkorrekturen, die ein Verhältnis in der Größenordnung 1000:1 benötigen. Dies wäre also eine enorme Ersparnis und es bleibt abzuwarten, wie sich das in der Praxis verhält.

Nun wird es allerhöchste Zeit, dass wir uns dem absoluten Pionier für kommerzielle Quantencomputer widmen …

D-Waves Quanten-Annealer

Der allererste kommerzielle Quantenchip mit 128 Qubit-Chip, Quelle: D-Wave Systems, Inc., Wikipedia

Im Jahr 2011 hallte ein großer Paukenschlag durch die Technologiewelt: Die bis dahin allgemein unbekannte kanadische Firma „D-Wave-Systems“ präsentierte den ersten kommerziellen Quantencomputer auf Supraleiterbasis. D-Wave-Systems benannte die Anzahl der Qubits in seinem ersten Quantencomputer mit sage-und-schreibe 128 Qubits! Die Nachricht über D-Waves Quantencomputer sah also auf den ersten Blick so aus, als wäre damit der Durchbruch erzielt worden. Es kam noch besser: Im Jahr 2013 kauften Google und die NASA für mehrere Millionen Dollar ein Nachfolgemodell von D-Wave mit sagenhaften 512 Qubits!

Die Ära der Quantencomputer hatte also anscheinend mit Pauken und Trompeten begonnen.

Was in diesen Nachrichten ziemlich unterging, aber was allen Kennern der Thematik klar war: Der Quantencomputer von D-Wave-Systems war und ist streng genommen „nur“ ein Quanten-berechnendes System für spezielle Zwecke. Er nutzt zwar auch die Quantenmechanik mittels Qubits für Berechnungen aber er ist kein „universeller“ Quantencomputer, wie die Systeme, die ich Ihnen bis jetzt vorgestellt habe. Insbesondere können auf ihm nicht die typischen Lehrbuch-Algorithmen für Quantencomputer ausgeführt werden. Der Quantencomputer von D-Wave-Systems ist „nur“ für Optimierungsaufgaben vorgesehen (bzw. genauer für „quadratisch binäre“ Optimierungsprobleme l), also einem sehr wichtigen Aufgabengebiet für Computer, das sich insbesondere auf viele Bereiche übertragen lässt li. Der Computer von D-Wave ist ein sogenannter „Quanten Annealer“ (oft auch etwas ungenauer als „adiabatischer Quantencomputer“ bezeichnet). Er verlagert das Prinzip der sogenannten „simulierten Abkühlung“ (engl. simulated annealing) in die Quantenwelt. lii liii

Das Prinzip der „simulierten Abkühlung“ ist eine ziemlich brillante Rechentechnik für herkömmliche Computer, die insbesondere in der künstlichen Intelligenz eingesetzt wird. Interessanterweise stammt die Vorlage dazu wiederum aus der Physik bzw. der Metallurgie: Durch das Erhitzen eines Materials und anschließend kontrollierter Abkühlung werden die Eigenschaften des Ausgangsmaterials (z.B. die Festigkeit) optimiert: Das Material kann über spontane, thermische Sprünge aus einem Zustand mit schlechtem, lokalem Optimum in einen Zustand mit gutem, globalem Optimum gelangen liv.

Die Quantenversion dieses Prinzips simuliert im Gegensatz dazu keine langsame Abkühlung. Stattdessen startet ein adiabatischer Quantencomputer zunächst auf der „grünen Wiese“. D.h. die Qubits des Quantencomputers werden in einen Zustand versetzt der ein evtl. stark vereinfachtes Optimierungsproblem löst. Das tatsächliche Optimierungsproblem, also die eigentliche Berg-Tal-Charakteristik wird dann langsam und störungsfrei („adiabatisch“) dazugeschaltet. Ein adiabatischer Quantencomputer überbrückt die Optimierungstäler ebenfalls. Allerdings führt er keine thermischen Sprünge aus, sondern „tunnelt“ durch Quantenfluktuationen in das globale Optimum lv.

 

Die Täler sind die verschiedenen lokalen Optima, Quelle: Arnab Das / Wikipedia

Ein „Quanten Annealer“ wiederum ist ein adiabatischer Quantencomputer unter realen Bedingungen (z.B. unter Temperatureinflüssen und nicht perfekt isoliert). Insbesondere ist die Qubit-Güte wesentlich geringer, als die der Mitkonkurrenten. Aus D-Waves Sicht, reicht sie für das Annealing aber aus.

Wie ich oben schon erwähnt hatte: Ein universeller Quantencomputer verwendet Quantengatter, welche die Quantenlogik abbilden (z.B. H, X, Y, Z, CNOT). Im Gegensatz dazu verwendet D-Wave für seine „Quanten-Annealer“ , einen anderen Satz an Logikbausteinen, um die Qubits miteinander zu verschalten. Dieser Satz von analogen Quantenbausteinen, bildet gerade die adiabatische Quantenprogrammierung ab lvi. Interessanterweise wurde mittlerweile, in der Theorie nachgewiesen, dass auch mit den Logikbausteinen für adiabatische Quantenprogrammierung ein universeller Quantencomputer simuliert bzw. emuliert werden kann. Dies gilt allerdings nur unter perfekten Bedingungen. Die realen Quanten-Annealer sind hierzu nicht in der Lage.

Aus technischen Gründen kann D-Wave noch nicht alle Qubits miteinander verschalten. Stattdessen ordnete D-Wave die Qubits zunächst in einem sogenannten „Chimera-Graphen“ an, in denen jedes Qubit mit insgesamt 6 Nachbar-Qubits verschaltet werden kann lvii. Im Jahr 2019 führte D-Wave eine verbesserte Graphen-Topologie ein: Die „Pegasus-Graphen“ lviii. Durch die neue Struktur wird jedes Qubits mit bis zu 15 anderen Qubits verschaltet. Diese Kopplungsstärke ist sehr entscheidend: Jede Einschränkung reduziert die Anzahl der tatsächlich verfügbaren Qubits in der Praxis teils deutlich (so sind in der Chimera-Topologie z.B. einige zyklische Kopplungen nicht direkt möglich). Um solche Kopplungen doch zu erreichen fasst D-Wave mehrere Qubits zu einem logischen Qubit teils automatisch zusammen („embedding“).

Im Laufe der Jahre hat D-Wave seine Palette an Quanten-Annealer erweitert. Seit September 2020 bietet die Firma das Modell DWave-Advantage mit 5000 Qubits an. Zwar hat D-Wave mittlerweile ein paar Quantencomputer für einige Millionen Dollar an einzelne Kunden verkauft (z.B. Google, die NASA, demnächst auch das Forschungszentrum Jülich), interessanter ist für einen größeren Kundenkreis allerdings D-Waves Cloud-Angebot „Leap“ lix. Hier ist u.a. eine Trialmitgliedschaft möglich, mit einem kostenlose Guthaben von Netto-Runtime-Zeit auf den Quantenchips (QPU).

Um eigene Quantenprogramme zu erstellen bietet D-Wave eine eigene Software-Palette an. Kernstück bildet hier das Python-Framework „Ocean“ lx. Das Framework abstrahiert die eigentlich RESTful-Schnittstelle zum Quanten-Annealer und ermöglich zusätzlich die lokale Simulation von Quantenprogrammen auf dem eigenen Rechner.

Aufbauend darauf stellt D-Wave u.a. das Programm „qbsolv“ bereit. „qbsolv“ zerlegt ein allgemeines „QUBO“-Optimierungsproblem (steht für „Quadratic Binary Optimization“) automatisch in kleinere Häppchen und bildet diese auf die Chimera- oder die Pegasus-Struktur des jeweils verwendeten Quantenrechners ab. In mehreren Durchläufen versucht „qbsolv“ das Ergebnis immer weiter zu verbessern lxi. Über den neuen „Hybrid-Solver“ können außerdem Aufgaben an Leap gesendet werden, die wesentlich mehr als die 5000 binären Freiheitsgrade des QPUs besitzen. Durch das Zusammenspiel mit herkömmlichen Rechenroutinen kann Leap dadurch laut D-Wave bis zu 1 Millionen Variablen verarbeiten.

Die Erfolgsstory von D-Wave und ein Schönheitsfehler daran

Im Laufe der Zeit hat D-Wave weitere Kontrollmöglichkeiten für die Quanten-Annealer hinzugefügt: Das „Scheduling“ bietet die Möglichkeit, den Zeitplan zu beeinflussen, mit dem das eigentliche Optimierungsproblem dazugeschaltet wird. Gerade an den kritischen Stellen, kann eine Verlangsamung entscheidend werden. Über das „Reverse Annealing“ wiederum kann man verbesserte Start- oder Zwischenzustände erzeugen: Dazu spult D-Wave das Annealing für kurze Zeit rückwärts ab, um es dann wieder vorwärts laufen zu lassen.

D-Wave verantstaltet teils halbjährig eigene Usergroup-Konferenzen „D-Wave Qubits“ lxii mit Erfahrungsberichten von D-Wave-Kunden (darunter VW, Airbus u.a. Großkonzerne). Die Latte der Usecases (D-Wave benennt aktuell die Zahl: 250) ist beeindruckend und andere Hardware-Hersteller kommen da aktuell nicht einmal ansatzweise heran. Tatsächlich sind derzeit nur D-Waves Quanten-Annealer dank ihrer 5000 Qubits in der Lage, „real-life“ Usecases zumindest in Teilen umzusetzen (in VWs Fall z.B. ein Verkehrsleitungssystem lxiii).

Die Sache hat allerdings einen Haken: Anders als für universelle Quantencomputer konnte man für Quanten-Annealer in der Theorie bis dato noch keinen generellen „Quantenvorteil“ gegenüber klassischen Computern voraussagen. D.h. über universelle Quantencomputer weiß man, dass sie gegenüber herkömmlichen Supercomputern einen teils gewaltigen Rechenvorteil besitzen, sobald sie nur groß genug skaliert werden. Damit meine ich gerade die typische Eigenschaft der Quantencomputer: Mit jedem weiteren Qubit verdoppelt sich das Leistungspotential. Von Quanten-Annealern ist dies nur für einen kleinen Problembereich bekannt lxiv. Überdies haben Forscher mit den Algorithmen für Quantenfehlerkorrektur einen Mechanismus entdeckt, mit dem man universelle Quantencomputer hochskalieren kann. Etwas Vergleichbares ist für Quanten-Annealer noch nicht bekannt. Trotz dieser Bedenken gibt es einige erfolgversprechende Arbeiten aus der Praxis lxv.

Xanadus photonischer CV-Quantencomputer

Einen sehr spannenden und ganz anderen Ansatz als die bisher vorgestellten, verfolgt das kanadische Startup Xanadu lxvi.

Neben supraleitenden Qubits und Ionenfallen-Quantencomputer gibt es einen weiteren sehr naheliegenden Architekturansatz: Ein Quantencomputer mittels Photonen, also Lichtteilchen. Lichtteilchen sind elektrisch neutral, reagieren deshalb nur wenig mit ihrer Umgebung und können einen Quantenzustand lange aufrecht halten (im Weltall sogar über Lichtjahre). Insbesondere können photonische Qubits auch bei Raumtemperatur betrieben werden. Hinzu kommt, dass sich seit ein paar Jahren eine neue aber schnell wachsende Technologie entwickelt hat, die sich „Integrated Photonics“ nennt lxvii. Wie für supraleitende Qubits können hierüber integrierte Schaltkreise über bestehende industrielle Fertigungstechniken konstruiert werden. Bei Integrated Photonics werden allerdings keine elektrischen, sondern optische Schaltkreise verwendet.

Um einen universellen, photonischen Quantencomputer zu entwickeln, gibt es zwei Alternativen: Lineare optische Quantencomputer, die das sogenannte „KLM-Protokoll“ verwenden und Continuous-Variable-Quantencomputer („CV“). Bei ersteren funktioniert das Quantencomputing analog zu den bisher vorgestellten Quantencomputern mit einer festen Anzahl filigraner photonischer Qubits, die miteinander über Quantengatter in Form von Interferometer verschaltet werden. Diesen Ansatz verfolgt zum Beispiel die Firma „PsiQuantum“ um den Quanten-Photonics-Pionier Jeremy O’Brien von der Universität Bristol. Abgesehen von ein paar spannenden Vorträgen auf Youtube und Meldungen zu Fundraising-Rekorden dringt allerdings aus der Firma nichts nach außen (noch nicht einmal eine Website) lxviii lxix.

Der andere photonische Ansatz wird von der Firma Xanadu aus Kanada verfolgt, die im September 2020 ihr Cloud-Angebot vorstellte. Xanadus Quantencomputer arbeiten nicht mit einzelnen Photonen, sondern mit Photonenstrahlen: Hierzu werden Laserstrahlen durch Resonatoren geleitet, die aus dem Licht einen sogenannten „Squeezed“ Quantenzustand bilden lxx lxxi: Eine quantenmechanische Überlagerung aus vielen Photonenpaaren. Diese gebündelten Zustände sind die zentralen Informationseinheiten in Xanadus Quantencomputern. Anstelle von Qubits mit zwei diskreten Zuständen besitzen solche „Qumodes“ ein kontinuierlichen Spektrum von beliebig vielen Zuständen. Deshalb spricht man hier von „Continuous-Variable“-Quantencomputern. Xanadus erste Quantencomputer-Familie X8, die Firma hat mehrere Geräte dieses Typs, arbeiten mit 8 solcher Qumodes. Kurz nach dem Start kündigte Xanadu an, diese Größe jedes halbe Jahr zu verdoppeln. Mittlerweile gibt es Quantencomputer vom Typ X12, X24 und ein X40-Modell wurde bereits angekündigt. Die darauf folgende Hardware-Reihe soll Qumodes mit vollständiger Konnektivität ermöglichen lxxii.

Ein CV-Quantencomputer ist auch universell, arbeitet aber mit einem anderem Satz an Standard-Quantengattern, die die Zustandsübergänge in dem kontinuierlichen Spektrum steuern. Xanadu verwendet hierfür programmierbare Mach-Zehnder-Interferometer lxxiii über die z.B. Beam-Splitting und Phasenverschiebungen des Strahls gesteuert werden. Ein spannender Anwendungsfalls für Xanadus Quantencomputer ist das sogenannte „Boson Sampling“. Das Boson Sampling ist eines der Kandidaten um mit aktuellen Mitteln eine Quantenüberlegenheit zu erzielen (s. den Abschnitt zu Google) lxxiv. Im Fall von Xanadus Quantencomputer bedeutet dies konkret: Die Häufigkeiten von Photonen zu messen (Photonen zählen auch zu den „Bosonen“). Hierzu stellte Xanadus Software-Team ein paar interessante Anwendungsfälle vor, unter anderem das „Dense-Subgraph“-Problem lxxv lxxvi. Das Boson Sampling stelle ich nochmal im folgenden Abschnitt zu Chinas Quantencomputer näher vor, da es dort eine enscheidende Rolle spielt.

Überhaupt ist Xanadus Software-Team ziemlich fleißig. Mit „Strawberry Fields“ hat es einen sehr gut dokumentierten Framework entwickelt über den die CV-Quantencomputer ferngesteuert werden (ebenfalls auf Basis der beliebten Programmiersprache Python) lxxvii.

Wie für die anderen Herstellern ist die NISQ-Ära für Xanadu nur eine Übergangsphase und das eigentliche Ziel ist es, fehlerkorrigierte Quantencomputer zu konstruieren. Für CV-Quantencomputer wurde bereits vor vielen Jahren sogenannte GKP-Zustände vorgeschlagen lxxviii (benannt nach den Entdeckern, die „Godfathern“ der Quantenfehlerkorrektur Gottesmann, Kitaev und Preskill). Ziel ist es dabei Lichtbündel mit einem schachbrettartigen Spektrum zu erzeugen. Je nach Lage des Spektrums stellt es ein „Qubit“ im Zustand „0“ oder etwas verschoben ein Qubit im Zustand „1“ dar lxxix. Leichte Verformungen bzw. Verschiebungen des Gitters könnte man relativ verlässlich korrigieren. Wie Xanadu das alles realisieren will, stellte das Team 2020 in einer wissenschaftlichen Arbeit vor lxxx lxxxi. Die Hardware kann nur zufällig entweder die aktuell verwendeten „Squeezed“-Lichtbündel oder die gewünschten GKP-Zustände erzeugen. Erstere sollen dann aus dem Chip geleitet werden, so dass am Ende nur noch die GKP-Zustände übrig bleiben. Laut Xanadu ist die Photonik für die endgültige Skalierung der Quanten-Chips der aussichtsreichste Kandidat. Anders als für supraleitende Qubits und Ionenfallen konnten hier bereits Verschränkungen von Zehntausenden bis zu Millionen Photonen experimentell bestätigt werden. Für die Kopplung von mehreren Quanten-Chips sollen Photonen auch bei anderen Architekturen die die Quantenzustände vermitteln. In Xanadus Quantencomputer wäre das ganz ohne „Medienbruch“ möglich.

Chinas Photonischer Quantencomputer und die Quantenüberlegenheit

Im Frühjahr 2018 berichtete ich an dieser Stelle über ein überraschendes Cloud-Angebot des chinesischen Tech-Riesens Alibaba: Ein supraleitender 11-Qubit Quantencomputer lxxxii lxxxiii. Zwar forscht ein Team bei Alibaba weiterhin im Bereich Quatencomputing lxxxiv aber das Cloud-Angebot ist verschwunden. Die Seite zeigt nur noch Schriftzeichen an und dafür ist mein Chinesisch wohl zu eingerostet :-).

Mittlerweile machte aber ein ganz anderes chinesisches Quantencomputer-Projekt weltweite Schlagzeilen: Im Dezember 2020 meldete ein chinesisches Team um den Quanten-Forscher Jian-Wei Pan, von der University of Science and Technology of China, in der renommierten Fachzeitschrift Science einen Durchbruch lxxxv. Ähnlich wie Googles Team ein Jahr zuvor gelang es der Gruppe auf ihrem photonischen Apparat eine Rechenaufgabe in 200 Sekunden zu bewältigen, für die ein Supercomputer sage und schreibe 2,5 Milliarden Jahre benötigt hätte!

Eingangstor zur University of Science and Technology of China, Quelle Ryanli / Wikipedia

Anders als Googles „Sycamore“-Quantencomputer ist der chinesische Quanten-Apparat in Laborgröße weder ein universeller Quantencomputer noch ist er programmierbar, sondern besitzt einen festen Aufbau von Beam-Splittern, Spiegeln und Prismen, durch den Laserstrahlen geschickt werden. Pans Versuchsaufbau ist letztendlich eine „Boson Sampling“-Aufgabe.

Das Boson Sampling ist eines der Kandidaten, um mit aktuellen Mitteln eine Quantenüberlegenheit gegenüber herkömmlichen Computern zu erzielen. Der Forscher Scott Aaronson, den ich hier schon mehrfach erwähnt habe, hatte das Prinzip bereits 2011 mit seinem Kollegen Alex Arkhipov vorgeschlagen: Schickt man einen Strahl mit einer bestimmten Anzahl Lichtteilchen / Photonen (die nebenbei zu den Bosonen gehören), durch einen Quanten-Interferometer, der jedes einzelne Photon in viele unterschiedliche Quanten-Zustände aufteilen kann, ergibt sich für den kompletten Strahl schnell eine astronomisch hohe Zahl an Zustandskonfigurationen lxxxvi. Den chinesischen Forschern gelang es konkret einen Strahl mit 50 Photonen kontrolliert durch einen 100-Moden-Interferometer zu senden und die Photonenzahl für jede Mode über Photodetektoren zu zählen. Der Clou dabei ist: Aaronson und sein Kollege konnten seinerzeit beweisen, dass man die gemessene Häufigkeitsverteilung für solche quantenmechanische Boson-Sampling-Apparate auf herkömmlichen Computern nur einem astronomischen Aufwand berechnen kann lxxxvii. Im Gegensatz dazu kann der Apparat selbst einfach angepasst und prinzipiell auch „programmiert“ werden. Und genau darum geht es letztendlich bei Quanten-Überlegenheit.

Jian-Wei Pan ist vermutlich der international renommierteste chinesische Forscher für Quanteninformation lxxxviii. Seinen Doktortitel bekam er in Österreich bei Anton Zeilinger, der schon für seine Pionierarbeiten zur Quanten-Teleportation für den Nobelpreis vorgeschlagen wurde, und der früher nebenbei ein Kollegen der beiden Innsbrucker Forscher Zoller und Cirac war. Für Aufsehen sorgte Pan bereits 2017, als es seinem Team gelang eine Quantenverschränkung per Satelliten herzustellen und damit eine quantenverschlüsselte Kommunikation zwischen Peking und Wien einzurichten.

Wie nach Googles Nachweis der Quanten-Überlegenheit erzeugte die Veröffentlichung des chinesischen Teams eine rege Betriebsamkeit unter Forschern. Unter anderem stellte diesmal Googles Team das Ergebnis zumindest in Teilen in Frage. Unbestritten ist, dass das Experiment der bis dato bei weitem größte Boson-Sampling-Apparat ist, der jemals gebaut wurde. Unbestritten ist auch, dass man prinzipiell damit in der Lage wäre einen weiteren Nachweis der Quantenüberlegenheit durchzuführen. Mittlerweile ist sich aber sogar Scott Aaronson nicht mehr sicher, der nebenbei der Gutachter für den Science-Artikel war, ob das „Rauschen“ der Fehlerquellen bei dem Experiment am Ende doch noch eine klassische Simulation möglich machen würde lxxxix.

Die Quantencomputer-Cloudangebote von Microsofts und Amazon

Microsoft Campus in Redmon, Quelle: Coolcaesar / Wikipedia

Im Jahr 2018 berichtete ich an dieser Stelle von Microsofts ambitionierten Quantencomputer-Ambitionen. In dem Vorhaben einen „topologischen“ Quantencomputer mit eingebauter Quantenfehlerkorrektur zu konstruieren, wagten sie sich weiter in Grenzbereiche der Grundlagenforschung vor, als alle anderen Hersteller xc. Mittlerweile hat das Projekt allerdings einen herben Rückschlag erlitten und es ist abzuwarten, wie Microsoft hierauf reagiert xci.

Parallel zur dieser Entwicklung hat sich Microsoft allerdings längst als Cloudanbieter und „Reseller“ für Quantencomputer positioniert: Mit „Azure Quantum“ bietet der Konzern seit Februar 2021 einen Preview-Zugang auf die Quantencomputer von Honeywell und IonQ an.

https://azure.microsoft.com/de-de/services/quantum/

Microsoft bezeichnet Azure Quantum als „Offenes Ökosystem“ über das Anwender auf die Hardware- und Softwarelösungen von Microsoft und Partnern zugreifen können. Neben den oben genannten Quantencomputern ist dies aktuell ein GPU-gestützter Service von Toshiba, um mithilfe von herkömmlichen Computern Optimierungsprobleme zu lösen. Außerdem nennt Microsoft hier Softwarelösungen des kanadischen Startups 1Qubit und die „quanten-inspirierten“ Lösungen von Microsoft selbst. Darunter versteht man Algorithmen für herkömmliche Computer, die Quanteneigenschaften teilweise „simulieren“, wie z.B. das Tunneln der „Kostenberge“ beim Simulated Annealing (s.o.). Unter anderem hierfür hatte der Tech-Riese bereits vor Jahren renommierte Forscher für sich gewinnen können. Die Softwarelösungen sind fertige Pakete für die man insbesondere kein Knowhow in Quantencomputing benötigt xcii.

Bereits im Herbst 2017 veröffentlichte Microsoft die Erweiterung „Q#“ („Qu-Sharp“) xciii für seine bekannte Programmierumsprache „C#“ mit denen Quantenprogramme erstellt und auf herkömmlichen Computern simuliert werden können. Anders als die Python-Frameworks der anderen Quantencomputer-Anbieter besitzt Q# einen ganz eigenen Syntax. Dieser soll es in Zukunft erleichtern, die sehr spezifischen Hardwaredetails in Quanten-Programmen zu abstrahieren. Mittlerweile kann Q# in diversen Entwicklungsumgebungen, wie Microsofts „Visual Studio“ als auch per Zusatz-Plugin für das, im wissenschaftlichen Umfeld, beliebte Jupyter-Notebook verwendet werden. Neben der Software stellt Microsoft eine reichhaltige Dokumentation für den Einstieg in das Quantencomputing und für diverse Quanten-Algorithmen bereit.

09

Logo von Amazon Web Services, Quelle: Amazon.com Inc. / Wikipedia

Im August 2020 betrat ein weiterer Tech-Riese den Ring: Mit „Amazon Braket“ startete Amazon einen eigenen Cloud-Dienst für Quantencomputer.

https://aws.amazon.com/de/braket/

Amazon ist im Bereich Quantencomputing bis dahin noch nicht in Erscheinung getreten. Entsprechend baut der Konzern zunächst auf die Dienste und das Knowhow von Partnern. Über Amazon Braket, das „Braket“ im Namen verweist übrigens auf die Dirac‘sche Klammerschreibweise von Quantenzuständen, können die Quantencomputer von D-Wave, IonQ und Rigetti erreicht werden. Hinzu kommen Simulatoren für Quantenprogramme. Amazon Braket ist Bestandteil von Amazon‘s Cloudangebot AWS und intergriert sich nahtlos in das breite Spektrum der übrigen AWS-Dienste (dies gilt übrigens auch für Microsofts Azure Quantum). Zum Fernsteuern des Angebots bietet der Konzern ein „Amazon Braket Software Development Kit“ für die Programmiersprache Python an. Im Falle von D-Waves Quanten-Annealers basiert das Braket SDK dabei auf dem Ocean SDK von D-Wave, das ich bereits weiter oben erwähnt habe.

Mit dem „Amazon Quantum Solutions Lab“ hat der Tech-Riese außerdem eine enge Zusammenarbeit mit dem California Institute of Technology (Caltech) gestartet, einer der führenden Hochschulen im Bereich Quantencomputing, und koorperiert von dort unter anderem mit verschiedenen Startups im Bereich Quantencomputing-Software. Das Solutions Lab soll Kunden und Anwender beim Einstieg in das Quantencomputing und bei Projektarbeiten unterstützen. Mittlerweile mehren sich außerdem die Hinweise, dass Amazon damit begonnen hat, an einer eigenen Quantencomputer-Hardware zu arbeiten.

Fußnoten

i Die Lehrbuch-Darstellung eines Qubits verwendet die sogenannte „Blochsphäre“. Diese gibt alle Freiheitsgrade eines 1-Qubit-Systems exakt wieder.

Quelle: Glosser.ca / Wikipedia

Allerdings lässt sie sich nicht einfach auf Mehr-Qubit-Systeme verallgemeinern. Insbesondere verhält sich ein Zwei-Qubit-System gerade nicht wie zwei Bloch-Sphären. In meiner vereinfachten Darstellung lässt sich eher erahnen, wie es mit steigender Qubitanzahl weitergeht:

Vereinfachte Darstellung eines Zwei-Qubit-Systems

ii https://quantumcomputing.stackexchange.com/questions/3860/how-many-qubits-are-simulable-with-a-normal-computer-and-freely-accessible-simul: Forum-Beitrag „How many qubits are simulable with a normal computer and freely accessible simulators?“ auf Quantum Computing Stack Exchange bei dem man einen ersten Eindruck bekommt.

iii Um einen Quantencomputer mit etwa 250 Qubits zu simulieren, müsste man jedes Atom des Weltalls in ein Bit für herkömmliche Computer umwandeln.

iv Die T1-Decoherence-Time misst die durchschnittliche Zeit, für die Bit-Flip-Fehler auftreten können. D.h. das Qubit, das eigentlich im Zustand „1“ ist, wechselt in den Zustand „0“. Supraleiter-Qubits erzielen hier Werte im 100er Mikrosekunden-Bereich während Ionen-Qubits mehrere Stunden schaffen können. Die T2-Decoherence-Time ist die durchschnittliche Dauer, bis ein überlagertes Qubit seine relative Phase verliert (also „1“ + „0“ zu „1“ – „0“ wird). Bei supraleitenden Qubits sind T1- und T2-Zeiten vergleichbar. Ionen-Qubits schaffen hier Werte von 1 Sekunde. Die T1-Fehlerquelle gibt es im Prinzip auch bei herkömmlichen Computern, die T2-Fehlerquelle jedoch nicht.

v https://arxiv.org/abs/2006.02856: „The Bitter Truth About Quantum Algorithms in the NISQ Era“ wissenschaftliche Arbeit von Frank Leymann von der Universität Stuttgart über die Einschränkungen von aktuellen Quantencomputern und was das für Auswirkungen auf Lehrbuch-Quantenalgorithmen hat. Einen Vortrag von Frank Laymann zu der Arbeit finden Sie hier https://www.youtube.com/watch?v=z6zllSVvyu0

vi Einen Eindruck von der Fülle an wissenschaftlichen Arbeiten zu NISQ-Quantencomputer und ihren Anwendungen bekommen Sie im „NISQ Computing Newsletter“ vom „Research Institute for Advanced Computer Science“ https://riacs.usra.edu/quantum/nisqc-nl. Offen ist allerdings tatsächlich, ob sich aus diesen Arbeiten ein praktischer Quantenvorteile erzeugen lässt: Während die Roadmaps anderer Hersteller einen Quantenvorteil in der NISQ-Ära fast schon fest einplanen, hat Googles Quantencomputing-Forscher Guillaume Verdon im September 2020 eine informelle und vermutlich nicht repräsentative Umfrage gestartet „Odds that any party manages to discover and implement a truly quantum-advantageous industry-relevant application in the NISQ era“. Eine Mehrheit tendierte dabei zu „eher nicht“ https://twitter.com/quantumVerd/status/1306434913198112769. Als Rückschlag, gerade auch für die supraleitenden NISQ-Quantencomputer mit begrenzter Konnektivität, muss auch diese theoretische Untersuchung von IBM gewertet werden, die das Potential von herkömmlichen und Quanten-Computern vergleicht: https://www.ibm.com/blogs/research/2021/01/quantum-mean-values/.

vii https://www.youtube.com/watch?v=kE6lgJFYYLc: In dem Vortrag „Surveying the Quantum Computing Market Landscape“ auf der virtuellen Konferenz Quantum For Business 2020 stellte Bob Sorensen von der Hyperion Research, LLC eine detaillierte Analyse des Quantencomputer-Marktes vor. Darin erläuterte er unter anderem eine Umfrage über die kommenden Budget-Pläne von 130 nordamerikanischen Unternehmen. Der Umfrage zur Folge gaben 32% der Firmen an für 2019 überhaupt keine Ausgaben für das Quantencomputing eingeplant zu haben. Diese Zahl fällt bis 2024 auf unter 3% wohin gegen das Gesamtbudget für den Quantencomputing-Markt von 300 Mio. Dollar auf über 1 Milliarde Dollar steigt. Sicher bilden die befragten Firmen keinen repräsentativen Querschnitt durch die Volkswirtschaft aber ich denke, dass man die Tendenz verallgemeinern kann.

viii Eine schöne, detaillierte Beschreibung des „Quantum Volume“-Protokolls finden Sie auf den Pennylane-Seiten des Herstellers Xanadu https://pennylane.ai/qml/demos/quantum_volume.html (bzw. archiviert https://web.archive.org/web/20201216123226/https://pennylane.ai/qml/demos/quantum_volume.html)

ix https://www.scottaaronson.com/blog/?p=4649: Scott Aaronsons Blog-Post „Turn down the quantum volume“

xii Da die Supraleiter-Technologie viele Architektur-Ansätze möglich macht, gibt es auch viele Artikel und Arbeiten dazu. Eine aktuelle Übersicht von 2020 finden Sie z.B. in https://arxiv.org/abs/2006.10433: Wissenschaftliche Arbeit „Superconducting Quantum Computing: A Review“ u.a. von der University of Science and Technology of China.

xiii In einem normalen Quantenschwingkreis sind die Zustände wie die Sprossen auf einer Leiter verteilt. Normalerweise würden die Zustände dadurch beliebig hoch- und herunterklettern. Durch die Josephson Junctions wird diese Leiter verformt. Die Zustände sind dadurch ähnlich wie in einem Atom verteilt. In Circuit QED spricht man daher von einem „künstlichen Atom“. Das „einfarbige“ Mikrowellenlicht, das die Übergänge zwischen dem Zustand „0“ und „1“ erzeugt, ist dadurch unsichtbar für alle weiteren Übergänge.

xiv https://www.youtube.com/watch?v=AqoKpUDchYo&list=PL5jmbd6SJYnPiYlM6pHAm2M3FL40D9otZ: Eine schöne Vortragsreihe „The Building Blocks of a Quantum Computer“ von kurzen Videos der TU Delft. Das Institut QuTech ist eine der ersten Adressen für das Quantencomputing innerhalb Europas.

xv https://www.youtube.com/watch?v=FklMpRiTeTA: Gefeierter Vortrag von John Martinis am Caltech „Quantum supremacy using a programmable superconducting processor“. Absolut sehenswert!

xvi https://en.wikipedia.org/wiki/Toric_code: Beschreibung des „Surface Code“ bzw. „Toric Code“ zur Quantenfehlerkorrektur auf Wikipedia. Der Surface Code ist ein sogenannter „topologischer“ Fehlercode, der physikalische Qubits zu geometrischen Gruppen mit bestimmten globale Eigenschaften zusammenfasst (z.B. eine einfache Schleife, eine zweifache Schleife, …). Diese geometrischen Eigenschaften sind quasi immun gegen kleinere, lokale Veränderungen.

xvii Das Ende der so erfolgreichen Zusammenarbeit von John Martinis und Google überraschte die gesamte Quanten-Gemeinde. Später erläuterte John Martinis die Hintergründe die dazu führten erstaunlich offen in einem Interview mit Forbes https://www.forbes.com/sites/moorinsights/2020/04/30/googles-top-quantum-scientist-explains-in-detail-why-he-resigned/ . Aktuell arbeitet Martinis mit dem australischen Startup Silicon Quantum Computing für Quantum-Dot-Qubits zusammen.

xviii https://www.youtube.com/watch?v=TJ6vBNEQReU&feature=youtu.be&list=PLQY2H8rRoyvx4VttfJOPRslw8XWT7yaBJ&t=967: Vortrag von Googles AI Quantum Team-Leader Hartmut Neven über die Roadmap seines Hardware-Teams (im Rahmen von Googles Quantum Summer Symposium Konferenz 2020)

xix https://www.youtube.com/watch?v=tY2L41VHI3I: Vortrag „Building a Practical Error-Corrected Quantum Computer in 10 Years“ von Googles Teamleitern auf der virtuellen Konferenz Quantum For Business 2020. Darin wird das Kern-Team nach John Martinis Abgang von Google vorgestellt. Außerdem erläutern Googles Forscher ihr erstes Nahziel: Zu prüfen, ob das Paradigma der Quantenfehlerkorrektur in der Praxis umgesetzt werden kann. Können physikalische Qubits zu einem logischen Qubit zusammengefasst werden und verbessert sich mit jedem weiteren physikalischen Qubit die Güte dieses logischen Qubits exponentiell?

xx https://quantumai.google/: Homepage von Google Quantum AI

xxi https://www.youtube.com/watch?v=fqI_IsQX6Kg: Vortrag „Quantum Applications Development at Google“ von Ryan Babbush im Dezember 2019

xxiv https://www.tensorflow.org/quantum: Homepage von TensorFlow Quantum. TensorFlow Quantum ist eine Cirq-Erweiterung von Googles beliebten AI-Framework TensorFlow,

xxv https://www.sciencedaily.com/releases/2001/12/011220081620.htm: Über IBMs experimentellen Beweis zu Shor‘s berühmten Algorithmus. In diesem Fall konnte IBM einen Mini-Quantencomputer konstruieren, der in der Lage war die Zahl 15 in die Faktoren 5 und 3 aufzuteilen. Dies mag zwar fast lächerlich erscheinen aber auf der anderen Seite war diese Arbeit der erste Hinweise darauf, dass der Algorithmus tatsächlich programmiert werden kann. Damals setzte man übrigens noch auf die NMR- bzw. Kernspin-Technologie, die man unter anderem aus Krankenhäusern her kennt. Später stellte sich dieser Ansatz allerdings als Sackgasse heraus.

xxvi https://www.youtube.com/watch?v=uk6d175AC7A: Vortrag „A View of the Road Ahead from IBM“ von IBMs Anthony Annunziata auf der virtuellen Konferenz Quantum For Business 2020. https://www.ibm.com/blogs/research/2020/05/quantum-challenge-results/, https://www.ibm.com/blogs/research/2020/04/ibm-quantum-challenge/ : Blog-Einträge von IBMs Quantum-Team die den Umfang und die Akzeptanz von IBMs Cloudangebot Quantum Experience verdeutlichen.

xxviii https://quantum-computing.ibm.com/composer/docs/guide/ : Userguide auf IBMs Quantum Experience

xxix https://qiskit.org/textbook/preface.html: Homepage zu IBMs Qiskit-Lehrbuch, ein sehr einfacher aber gelungener Einstieg in das Quantencomputing.

xxx https://www.ibm.com/blogs/research/2020/09/ibm-quantum-roadmap/: Blogeintrag von IBMs Quantum-Team zur Hardware-Roadmap für die nächsten Jahre.

xxxi https://www.ibm.com/blogs/research/2020/09/hardware-aware-quantum/: Blogeintrag von IBMs Quantum-Team über die zukünftige Qubit-Topologie und dem speziell dafür optimierten Algorithmus zur Quantenfehlerkorrektur.

xxxii https://www.ibm.com/quantum-computing/network/members: Mitglieder des IBM Quantum Network

xxxiii https://arxiv.org/abs/1904.01502: Wissenschaftliche Veröffentlichung „Quantum advantage with noisy shallow circuits in 3D“ u.a. von IBMs Sergey Bravyi, David Gosset und Robert König von der Technischen Universität München. Diese Arbeit belegt zumindest theoretisch, dass selbst mit NISQ-Quantencomputern ein Quantenvorteil gegenüber herkömmlichen Computern möglich sein müsste. Und anders als Googles „Random Circuit Sampling“-Algorithmus ist die betreffende Aufgabe ein „sinnvolles“ Problem: Finde den „geheimen“ Schlüssel, der eine spezielle mathematische Aufgabe löst. Die Komplexität des Problems wächst auf einem herkömmlichen Computer, selbst wenn diesem zusätzliche Prozessorkerne hinzugefügt werden. Auf einem NISQ-Quantencomputer bleibt die Komplexität dagegen konstant. Allerdings lässt sich dadurch noch keine praktische Anwendung ableiten und das Leistungspotential ist nur logarithmisch besser (ganz im Gegensatz zu Googles exponentieller Steigerung).

xxxiv https://www.rigetti.com: Homepage der Firma Rigetti Computing.

xxxv https://arxiv.org/abs/1801.03897: „Cloud Quantum Computing of an Atomic Nucleus“ Fachartikel

xxxvi https://en.wikipedia.org/wiki/Cirac%E2%80%93Zoller_controlled-NOT_gate: Wikipedias Artikel zu Cirac und Zollers Ansatz für ein CNOT-Quantengatter, eine zentrale und besonders herausfordernde Komponente jedes Quantencomputers. Die Ionenfallen-Quantencomputer, die ich in diesem Artikel erwähne, verwenden alle eine Weiterentwicklung dieses Ansatzes von Mølmer und Sørensen.

xxxvii https://www.quantiki.org/wiki/ion-traps: Sehr schöner und einfacher Überblick über Ionenfallen-Quantencomputer.

xxxviii http://research.physics.berkeley.edu/haeffner/publications/review-QC-IISc-090306.pdf: Detailliertere Artikel „Quantum computing with trapped ions“ von Hartmut Häffner (der ebenfalls aus dem Innsbrucker Team stammt). Beschreibt unter anderem die verschiedenen Ansätze für CNOT-Gatter und u.a. auch den Mølmer-Sørensen-Ansatz.

xxxix Zwar ist es nicht möglich ein einzelnes geladenes Atom in einem statischem elektrischen Feld einzufangen. Die Idee der Paulfalle war es, hierfür ein rotierendes elektrisches Wechselfeld zu verwenden. Näheres unter https://de.wikipedia.org/wiki/Paul-Falle

xl https://www.aqt.eu/qc-systems/: Die Firma Alpine Quantum Technologies „AQT“ wurde aus der Zusammenarbeit der Universität Innsbruck und der Österreichischen Akademie der Wissenschaften gegründet. Offizielle Informationen zu dem 19“-Rack Quantencomputer, der aktuell nur Partnern zur Verfügung steht, gibt es noch nicht. AQT‘s Quantencomputer soll über die Python-Frameworks Qiskit, Cirq und Pennylane ferngesteuert werden können.

xli https://www.nist.gov/publications/demonstration-fundamental-universal-quantum-logic-gate: Wissenschaftliche Arbeit „Demonstration of a Fundamental Quantum Logic Gate“ von Christopher Monroe u.a. über die experimentelle Bestätigung von Cirac und Zollers CNOT-Gatter.

xlii https://www.youtube.com/watch?v=LRzhb7OkQ9s: Vortrag „Shaping the future of quantum computing“ vom Tony Uttley, dem Quantum Teamleader von Honeywell

xliii https://arxiv.org/abs/2003.01293: Wissenschaftliche Arbeit „Demonstration of the QCCD trapped-ion quantum computer architecture“ von Honeywells Team zum Hardwareansatz des eigenen Quantencomputers.

xliv https://en.wikipedia.org/wiki/Bernstein%E2%80%93Vazirani_algorithm: Wikipedia-Einführung für den Bernstein-Vazirani-Algorithmus

xlv https://en.wikipedia.org/wiki/Hidden_shift_problem: Kurze Erläuterung zum Hidden-Shift-Problem auf Wikipedia

xlvi https://www.youtube.com/watch?v=9aOLwjUZLm0: Sehr schöner Vortrag von Christopher Monroe über das Quantencomputing mit Ionenfallen-Quantencomputern. Ab Min. 0:22 erläutert er die Funktionsweise und die Vorteile von Ionenfallen-Quantencomputern. Am Ende des Videos geht er auch kurz auf das Startup „IonQ“ ein.

xlvii https://arxiv.org/abs/1208.0391: „Large Scale Modular Quantum Computer Architecture with Atomic Memory and Photonic Interconnects“: Gemeinsame Arbeit von Monroe und Kim, wie man mehrere Ionenfallen über Photonenkopplungen zu einem gro0en Ionenfallen-Quantencomputer skalieren könnte.

xlviii https://arxiv.org/abs/1903.08181: Wissenschaftliche Arbeit „Benchmarking an 11-qubit quantum computer“ von IonQs Team, in der sie Details zum Quantencomputer und zu den Benchmarks bekanntgeben.

l https://en.wikipedia.org/wiki/Quadratic_unconstrained_binary_optimization: Definition eines QUBO-Problems auf Wikipedia. Allerdings sollte man sich davon nicht allzu sehr entmutigen lassen: QUBO-Probleme können tatsächlich auf viele Problem-Felder angewendet werden.

li Den Quantencomputer von D-Wave auf bloße Optimierungsaufgaben zu reduzieren wäre tatsächlich eine starke Untertreibung. Es zeigt sich nämlich, dass viele andere Aufgabengebiete in Optimierungsprobleme übersetzt werden können (u.a. im Maschine Learning, atomare Simulationen und selbst in abgewandelter Form die Primzahlzerlegung)-

lii https://arxiv.org/abs/1611.04471: wissenschaftliche Arbeit von T. Albash, D. A. Lidar „Adiabatic Quantum Computing“

liii https://de.wikipedia.org/wiki/Simulierte_Abk%C3%BChlung : Wikipedia-Beschreibung des Prinzips der simulierten Abkühlung

liv Dabei springt es bei diesem Vorgang nach und nach über alle lokalen Täler und findet irgendwann den höchsten Berg, also das globale Optimum. Aber ein Bild sagt mehr als 1000 Worte: Dieses Gif von Wikipedia sagt eigentlich schon alles aus.

Quelle: Kingpin13 / Wikipedia

lv Die Grundlage des Adiabatischen Prinzips ist bereits seit den Gründerzeiten der Quantenmechanik bekannt https://de.wikipedia.org/wiki/Adiabatisches_Theorem_der_Quantenmechanik: Sofern das eigentliche Problem (bzw. dessen „Hamilton-Operator“) langsam genug dazugeschaltet wird, verbleiben die Qubits die ganze Zeit im Grundzustand des Gesamtproblems. Dabei ist das Wort „Langsam“ der springende Punkt: Diese Zeit hängt vom Kehrwert der Differenz der Kostenfunktion des Grundzustandes und des ersten „angeregten“ Zustandes im Verlauf der Schaltung ab. Mit zunehmender Problem-Komplexität wird diese Differenz immer kleiner und die Schaltungszeit muss immer mehr verlängert werden. Schaltet man das Optimierungsproblem zu schnell dazu, springen die Qubits aus dem Grundzustand heraus.

lvi Dieser Satz von speziellen Quantenbausteinen wird auch „Ising-Modell“ genannt. Das Ising-Modell vereinfacht die Wechselwirkungen in komplexen Quantensystemen so geschickt, dass es in der theoretischen Physik gerne als vereinfachtes Modell für zu komplizierte Systeme verwendet wird (z.B. als Modell für den Ferromagnetismus).

lvii https://www.nature.com/articles/srep37107/figures/1: Jedes Qubit ist in einer Chimera-Zelle enthalten. Die benachbarten Zellen können miteinander verschaltet werden. Jede Chimera-Zelle besteht aus zwei 4er-Reihen von Qubits. Darin kann jedes Qubit einer Reihe mit jedem Qubit der Nachbarreihe verschaltet werden: Ein sogenannter „complete bipartite graph“. https://arxiv.org/abs/1508.05087: Durch den Fertigungsprozess können nur etwa 95% der Qubits wirklich verwendet werden. Im Anhang A wird dies im Detail sehr anschaulich dargestellt.

lviii Das Prinzip der Pegasus-Graphen wesentlich komplexer https://docs.dwavesys.com/docs/latest/c_gs_4.html#pegasus-graph. Die Qubits werden hier mehreren Gruppen zugeordnet die durch drei sich ergänzenden Kopplungsarten verschaltet sind.

lix https://www.dwavesys.com/take-leap: Das Cloud-Angbot von D-Wave.

lx https://docs.ocean.dwavesys.com/en/stable/getting_started.html: D-Waves Python-Framework „Ocean“. Hier finden Sie übrigens auch diverse Codebeispiele. Wie die anderen Frameworks der Konkurrenz wird „Ocean“ als OpenSource-Projekt auf Github gehostet.

lxii Termine und vergangene Konferenzen der „D-Wave Qubits“ googeln Sie am besten z.B. https://www.dwavesys.com/qubits-europe-2019

lxiii https://arxiv.org/abs/1708.01625: Wissenschaftliche Arbeit von Volkswagen (Team um Florian Neukart) und D-Wave „Traffic flow optimization using a quantum annealer“. Diese Arbeit war meines Wissens die erste über einen praktischen Usecase, der mit Hilfe eines Quantencomputers bearbeitet werden konnte. Auf der Websummit 2019 stellten sie hierzu ein überarbeitetes Verfahren im produktiven Einsatz vor https://arxiv.org/abs/2006.14162 / „Quantum Shuttle: Traffic Navigation with Quantum Computing“

lxiv https://www.scottaaronson.com/blog/?p=4794: Scott Aaronsons Blog-Beitrag über die wissenschaftliche Arbeit „The Power of Adiabatic Quantum Computation with No Sign Problem“ von Matt Hastings.

lxv https://arxiv.org/abs/1907.00707: wissenschaftliche Arbeit von Googles Quantum AI-Team „Quantum-Assisted Genetic Algorithm“, die Hinweise darauf gibt, dass für gewisse genetische Algorithmen das Quanten Annealing mit weniger Rechenschritten auskommen kann.

lxvi https://www.xanadu.ai: Homepage der kanadischen Firma Xanadu

lxvii https://arxiv.org/abs/1607.08535: „Why I am optimistic about the silicon-photonic route to quantum computing“, Artikel von Terry Rudolph

lxviii https://www.youtube.com/watch?v=Yi6jA-HDrEo : Vortrag „Unique architectures for photonic quantum computing“ von Naomi Nickerson über den Quantencomputer-Ansatz von PsiQuantum. https://www.youtube.com/watch?v=HEe53OE3HbU: Kurzer Vortrag von Jeremy O’Brien auf dem World Economic Forum.

lxix https://thequantumdaily.com/2020/04/07/psiquantum-quantum-computer-startup-raises-230-million-possibly-largest-qc-investment-to-date-2/: News-Meldung zu PsiQuantums rekordverdächtigen $215 Million-Fundraiser im Frühjahr 2020

lxx https://medium.com/xanaduai/a-day-in-the-life-of-xanadus-hardware-team-c19bab2b456d: Eine schöne Erläuterung von Xanadus-Team, was ein Phasenraum ist und wie ein Squeezed-State darin dargestellt wird.

lxxi https://en.wikipedia.org/wiki/Squeezed_coherent_state#Two-mode_squeezed_states: Hier die formularer Wikipedia-Beschreibung eines Two-Mode-Squeezed States, die Xanadu konkret verwendet.

lxxii https://www.youtube.com/watch?v=vF6PkXmo2XA: Vortrag „Scaling Photonic Quantum Computers“ von Zachary Vernon, Hardwarechef von Xanadu auf der virtuellen Konferenz Quantum For Business 2020. Sehr viel Information in 20 Minuten: In dem Vortrag gibt Vernon einen schönen Kompletten-Überblick über den aktuellen Stand, Hardwarepläne und Softwarelösungen von Xanadu.

lxxiii https://de.wikipedia.org/wiki/Mach-Zehnder-Interferometer: Wikipedia-Beschreibung eines Mach-Zehnder-Interferometers

lxxiv https://www.scottaaronson.com/blog/?p=1631: Blogbeitrag „BosonSampling Lecture Notes from Rio“ von Scott Aaronson einem der Erfinder des Boson Samplings. Die Links bieten eine umfassende Einführung in das Thema und erläutern u.a. warum Boson Sampling vermutlich mit keinem klassischen Computer effizient simuliert werden kann: Es zeigt sich nämlich, dass die Verteilungswahrscheinlichkeiten beim Boson Sampling mit einem schwer zu berechnenden mathematischen Objekt zusammenhängt: Die „Permanente“ einer Matrix.

lxxv https://arxiv.org/abs/1912.07634: Wissenschaftliche Arbeit „Applications of Near-Term Photonic Quantum Computers: Software and Algorithms“ von Xanadus Algorithms-Team

lxxvi https://arxiv.org/abs/1803.10730: Wissenschaftliche Arbeit „Using Gaussian Boson Sampling to Find Dense Subgraphs“ von Xanadus Algorithms-Team. „Graphen“ in Form von Knotenpunkten und Kanten, die diese Knoten verbinden, stellen ein beliebtes Hilfsmittel in der Mathematik und in den Computerwissenschaften dar. Mithilfe von Graphen lassen sich Beziehungen abbilden (z.B. verlinkte Internetseiten, in soziale Medien, …).

lxxvii https://strawberryfields.ai/photonics/index.html: Homepage von Xanadus Python-Framework „Strawberry Fields“ für das CV-Quantencomputing. Auf den sehr gut dokumentierten Folgeseiten wird teilweise auch die Hardware vorgestellt und in das CV-Quantencomputing im Allgemeinen eingeführt. Aber Hand aufs Herz: Auch wenn Xanadu sich dabei wirklich Mühe gibt, anders als für das Qubit-Quantencomputing benötigt man für das CV-Quantencomputing einiges an Grundlagen in Quantenmechanik und eigentlich auch in Quantenfeldtheorie (da man es hier mit beliebig vielen Teilchenzuständen zu tun hat).

lxxviii https://arxiv.org/abs/quant-ph/0008040: Wissenschaftliche Arbeit „Encoding a qubit in an oscillator“ von den „Godfathern“ der Quantenfehlerkorrektur Gottesmann, Kitaev und Preskill um CV-Quantencomputer in Quantencomputer mit fehlerkorrigierten Qubits zu überführen.

lxxix https://medium.com/xanaduai/from-a-state-of-light-to-state-of-the-art-the-photonic-path-to-millions-of-qubits-c0e08ca1cb21: Artikel „Riding bosonic qubits towards fault-tolerant quantum computation“ von Xanadu, in dem das Prinzip von GKP-Zuständen anschaulich erklärt wird.

lxxx https://arxiv.org/abs/2010.02905: Wissenschaftliche Arbeit „Blueprint for a Scalable Photonic Fault-Tolerant Quantum Computer“ in der Xanadu den Architekturansatz für einen fehlerkorrigierten Quantencomputer vorstellt. Der Text ist allerdings schwer verdaulich. Als Einstieg empfehle ich eher den folgenden Artikel:

lxxxi https://medium.com/xanaduai/riding-bosonic-qubits-towards-fault-tolerant-quantum-computation-95b92c78cb43: Artikel „From a state of light to state of the art: the photonic path to millions of qubits“ von Xanadus Team, der die Grundaussagen aus dem Paper wesentlich leichter verdaulicher erklärt.

lxxxiii http://quantumcomputer.ac.cn/index.html: Mittlerweile zeit das damalige Cloud-Angebotvon Alibaba nur noch Schriftzeichen an.

lxxxiv https://arxiv.org/abs/2005.06787: Wissenschaftliche Arbeit „Classical Simulation of Quantum Supremacy Circuits“ von Alibabas Quantum Team über ein verbessertes Simulationsverfahren für Quanten-Schaltkreise auf herkömmlichen Computern.

lxxxv https://science.sciencemag.org/content/370/6523/1460: Chinas wissenschaftliche Veröffentlichung „Quantum computational advantage using photons“ in der Fachzeitschrift „Science“. Und hier der öffentlich zugängliche Link zu der Vorveröffentlichung derselben Arbeit auf arxiv.org https://arxiv.org/abs/2009.01177: „Benchmarking 50-Photon Gaussian Boson Sampling on the Sunway TaihuLight“. Wie bei allen Hardware-Veröffentlichungen muss man schon ziemlich tief in der Thematik drinstecken, um dem Artikel zu folgen. Aber man bekommt einen Eindruck, wie ungeheur komplex die Herausforderung ist (und die einführenden Passagen sind auf jeden Fall lesenswert)

lxxxvi Wie die astronomisch hohe Zahl zustande kommt, kann man sich leicht klar machen. Versucht man N Tennisbälle in M Körbe zu verteilen merkt man: Mit jedem weiteren Korb vervielfacht sich die bisherige Anzahl die Bälle in die Körbe zu verteilen, also eine exponentielle Steigerung.

lxxxvii Um die Häufigkeitsverteilung vom Boson-Sampling zu berechnen, muss man die „Permanente einer unitären Matrix“ berechnen. Letztere wird exponentiell groß. Aaronson und Arkhipov wussten, dass diese Aufgabe keinen effizienten klassischen Algorithmus besitzen kann, weil dies am Ende allgemein vermuteten Gesetzmäßigkeiten der Komplexitätstheorie widersprechen würde. Falls Sie sich das Thema genau ansehen wollen empfehle ich Ihnen https://www.scottaaronson.com/blog/?p=1631: Scott Aaronsons Übersichtsseite „BosonSampling Lecture Notes from Rio“. Die Links bieten eine umfassende Einführung in das Thema und erläutern u.a. warum Boson Sampling vermutlich mit keinem klassischen Computer effizient simuliert werden kann. Hier erfahren Sie auch Details über das „Gaussian Boson Sampling“, die Ausprägung, die von den chinesischen Forschern verwendet wurde. Dass das Boson Sampling ein super-effizienter Weg ist, um die Permanente einer unitären Matrix zu berechnen, ist auch der Grund für seine Anwendungen: Das Dense-Sub-Graph-Problem lässt sich nämlich z.B. ebenfalls auf die Permanente einer unitären Matrix umwandeln.

lxxxviii https://www.spektrum.de/news/ich-bin-froh-ueber-meine-rueckkehr-nach-china/1526607: Interview von der Spektrum-Redaktion mit Jian-Wei Pan im Jahr 2017.

lxxxix https://www.scottaaronson.com/blog/?p=5159: Scott Aaronsons sehr detaillierter Blogeintrag „Chinese BosonSampling experiment: the gloves are off“. Am Betrag und an dessen Kommentarbereich bekommen Sie unter anderem einen Eindruck davon, wie der Puls der Forschung in Echtzeit funktioniert. Unter anderem erläutert Aaronson auch, dass der Photon-Loss von 70%, der bei dem Experiment gemessen wurde, eine Simulation durch einen klassischen Rechner eventuell möglich machen könnte. Außerdem erläutert er, dass man ähnliches bei Googles Experiment mit Sicherheit ausschließen kann, weil dort mit dem „Linear Cross-Entropy“ ein Verfahren existiert, über das man sicherstellen kann, ab wann die gemessenen Ergebnisse klassisch nicht reproduzierbar sind.

xc Die topologischen Quantencomputer wurden im Jahr 1997 von dem theoretischen Physiker Alexei Kitaev vorgeschlagen, der auch bereits zuvor den zentralen Algorithmus für die Quantenfehlerkorrektur entdeckt hatte. Sie ahnen es wohl: Ein topologischer Quantencomputer hat quasi eine eingebaute Quanten-Fehlerkorrektur. Das Herzstück der topologischen Quantencomputer sind sogenannte „Majorana-Quasiteilchen“, mit denen man ein einzelnes Qubit räumlich in die Länge ausdehnen kann. Die Quanteninformation in einem Qubit ist damit nicht mehr in einem einzelnen Punkt im Raum lokalisiert und kann nur noch über koordinierte Aktionen auf ganze Raumbereiche verändert oder ausgelesen werden. Das ganze Konzept der topologischen Quantencomputer ist so neu, dass die ersten Hinweise für Majorana-Quasiteilchen vor gerade mal zehn Jahren gefunden wurden. Näheres erfahren Sie hier https://www.nature.com/news/inside-microsoft-s-quest-for-a-topological-quantum-computer-1.20774 und in https://arxiv.org/abs/1501.02813: „Majorana Zero Modes and Topological Quantum Computation“, Fachartikel von Michael Freedman et al.

xci https://www.wired.com/story/microsoft-win-quantum-computing-error/: Der sehr detaillierte Artikel „Microsoft’s Big Win in Quantum Computing Was an ‘Error’ After All“ über Microsofts Ambitionen und über den herben Rückschlag des Projektes. Anscheinend wurden Daten die 2018 zur Meldung eines Durchbruchs führten „fehlinterpretiert“ bzw. die Daten, die nicht passten, wurden in der Analyse weggelassen.

xcii https://docs.microsoft.com/en-us/azure/quantum/overview-azure-quantum: Überblick, einige Quick-Start-Beispiele für die verschiedenen Azure-Quantum-Dienste und eine komplette Referenzdokumentation für das Quantum Development Kit QDK von Microsoft.

Quantencomputer programmieren mit IBMs Qiskit

Quantencomputer besitzen das Potential gewissse, zentrale Computer-Anwendungen extrem abzukürzen. Dazu zählen etwa atomare Simulationen, Optimierung. Maschinenlernen und Finanzmathematik. Ermöglicht wird dies durch die faszinierende Quantenlogik. Die Hersteller der ersten Quantencomputer stellen für diese andersartige Logik spezielle Programmier-Schnittstellen für herkömmliche Computer bereit. Wie so ein Quanten-Programm konkret aussieht, stelle ich Ihnen hier am Beispiel von IBMs Quantencomputer und dem berühmten Grover-Quantenalgorithmus vor.

 

Eine Idee wird geboren

Im tiefsten Inneren funktioniert die Natur nicht nach unseren Alltagsgesetzen, sondern nach den rätselhaften Gesetzen der Quantenwelt. Aus diesem Grund stoßen herkömmliche Computer schnell an ihre Grenzen, wenn es darum geht Naturprozesse im atomaren Maßstab zu berechnen. Vor über 30 Jahren hinterließ der legendäre Physiker Richard Feynman der Wissenschaftswelt ein visionäres aber nahezu aussichtsloses Vermächtnis: Erst wenn es uns gelänge Computer zu konstruieren, die auf eben dieser Quantenlogik basieren, könnten wir die Natur letztendlich effizient simulieren und grundlegend berechnen.

Im Laufe der Zeit kamen weitere Anwendungsgebiete hinzu, für die Quanten-Forscher, dank der Quantenlogik, extrem abgekürzte Rechenwege voraussagten. Zu diesen Anwendungen zählen etwa Optimierungsaufgaben. Maschinenlernen und Finanzmathematik. Einige der Quanten-Algorithmen, die dafür gefunden wurden, stelle ich meinen Artikel „Anwendungen für Quantencomputer“ genauer vor.

Was ist ein Quantencomputer?

Was ist nun das Besondere an der Quantenlogik?

Nehmen wir z.B. den elementaren Baustein für herkömmliche Computer: Dem Bit. Ein Bit ist ein elektronischer An- / Ausschalter, dem man einfach die Werte 1 und 0 zuschreibt. Die Kombination vieler Bits ermöglicht nun beliebige Daten zu speichern und zu verändern.

In der Welt der Quantencomputer spricht man nicht von Bits, sondern von „Quanten-Bits“ bzw. „Qubits“. Genauso wie herkömmliche Bits können Qubits die Werte 0 oder 1 annehmen. Darüber hinaus können sie sich aber auch in „überlagerten“ Zuständen von sowohl 0 als auch 1 befinden.

Um dies zu veranschaulichen, verwende ich auf „quantencomputer-info.de“ eine Qubit-Darstellung, die gegenüber der Lehrbuchdarstellung vereinfacht ist aber dem Kern bereits sehr nahe kommt: Ein einfacher Zeiger in einer Ebene. Folgendes Qubit ist zum Beispiel zu gleichen Teilen sowohl im Zustand 0 als auch im Zustand 1.

Im Verlauf einer Quantencomputer-Programms werden die Qubits durch den Einsatz von sogenannten „Quantengattern“ gedreht und am Ende ausgemessen. Durch diese Messung „entscheiden“ sich die Qubits jeweils für einen der beiden Werte: 0 oder 1. Diese Entscheidung geschieht am Ende zufällig und unterliegt den Gesetzen der Quantenmechanik. Die Kunst besteht nun darin, diese Wahrscheinlichkeitsverteilung gezielt zu steuern: Im Verlaufe dieses Artikels werden Sie einen genauen Eindruck davon bekommen.

Der eigentliche Clou der Qubits ist Folgender: Ein Quantencomputer verdoppelt seine potentielle Rechenstärke mit jedem zusätzlichen Qubit. Also exponentiell!

Noch viel mehr über die fundamentalen Unterschiede zwischen einem herkömmlichen Computer und einem Quantencomputer erfahren Sie in meinem Einstiegsartikel „Der unglaubliche Quantencomputer einfach erklärt“.

Vor gut zwei Jahrzehnten fingen auch die Tech-Riesen an, sich mit der neuen Technologie zu befassen. Der Bau von leistungsstarken Quantencomputern ist eine Herkulesaufgabe, bei der wir noch ganz am Anfang stehen. Allerdings stehen mittlerweile die ersten Quantencomputer-Angebote von Tech-Firmen in der Cloud bereit. Verfügbar für jedermann. Den aktuellen Stand beschreibe ich in meinem Artikel „Welche Quantencomputer gibt es jetzt schon?“.

Die aktuellen Quantencomputer befinden sich noch in der sogenannten „NISQ-Ära“. Das steht für „Noisy Intermediate Scale Quantum“, also fehleranfällige Quantencomputer mit einer „mäßigen“ Größe von höchstens wenigen Hundert „Qubits“, perspektivisch gesehen. Voraussichtlich wird es noch einige Jahre dauern, bis die Technologie soweit skaliert ist, um von direktem gesellschaftlichen Nutzen zu sein. Aber schon jetzt bauen die Hersteller ihre gesamte Infrasktruktur aus und vielversprechende Quanten-Algorithmen können direkt erforscht und erprobt werden.

Dass allerdings selbst mit einem NISQ-Quantencomputer ein exponentieller Quantenvorteil gegenüber herkömmlichen Supercomputern möglich ist, bewies Google zuletzt eindrucksvoll. Die Details dazu erläutere ich in meinem Artikel Google und der Nachweis der Quanten-Überlegenheit“.

Quantencomputer programmieren: Die Quantengatter

Die zentralen Bausteine von Quantenprogrammen sind, neben den Qubits, die „Quantengatter“.

Herkömmliche Computer bilden unsere Alltagslogik durch sogenannte UND-, ODER-, NICHT-Gatter ab. Diese Gatter manupilieren die Bits und bilden somit die fundamentalen Bausteine von herkömmlichen Computerprogrammen. Die Quantenlogik wiederum bildet ein Quantencomputer durch völlig andersartige „Quantengatter“ ab.

Um die Quantencomputer einem breiteren Publikum näher zu bringen, verwende ich auf „quantencomputer-info.de“ eine vereinfachte Sichtweise auf die Qubits und die Quantengatter. In meinem Artikel Das Qubit und ein Magier bei „Britain Has Got Talent“ hatte ich schon die Zeigerbilder eingeführt mit denen wir uns die verschiedenen Zustände einesQubits vorstellen können. Das Qubit ist dann ein Zeiger auf der Kreislinie in diesem Bild.

(„Disclaimer“: In der Lehrbuch-Darstellung liegt die Zeigerspitze eines Qubits im Gegensatz dazu auf einer Kugeloberfläche: Die „Blochkugel“ i. Um das Quanten-Programm für den Grover-Algorithmus richtig zu verstehen, reicht meine einfache Sichtweise mit der Kreislinie aber erstaunlicherweise aus)

Folgendes Zeigerbild zeigt wieder ein Qubit, dass gleichzeitig im Zustand |0und im Zustand |1⟩ ist.

Das Besondere an diesem Bild ist außerdem, dass die Zustände |0und |1⟩ gleichmäßig überlagert sind. Es ist zu gleichen Teilen sowohl |0als auch |1⟩. Ein Qubit im Zustand |0gelangt in diesen Zustand der gleichmäßigen Überlagerung, indem es in dem vereinfachten Zeigerbild um 45° gedreht wird. Diese Drehung wird durch das Hadamard-Quantengatter H durchgeführt.

|qubit= H |0

Ein anderes Gatter ist das X – Quantengatter. Es spiegelt das aktuelle Qubit an der Winkelhalbierenden, also gerade am Zustand H |0⟩. Oder anders betrachtet: Das X-Gatter tauscht den Zustand |0und den Zustand |1gegeneinander aus.

X |0= |1und X |1= |0

Ein Quantenprogramm besteht nun aus mehreren hintereinander geschalteten Quantengattern. Am Ende eines Quantenprogramms werden alle Qubits ausgelesen und als Resultat erhält man eine Bit-Sequenz von 0en und 1en. Folgendes Beispiel zeigt ein Schaltdiagramm für den Grover-Algorithmus für zwei Qubits. Wir werden den Grover-Algorithmus weiter unten für drei Qubits programmieren.

Quantencomputer programmieren: Welche Programmiersprachen gibt es für Quantencomputer?

Um ein Quantenprogramm durchzuführen, muss ein Quantencomputer eine Serie von Quantengattern auf bestimmte Qubits ausführen. Schematisch wird das durch Schaltdiagramme symbolisiert, wie in dem Beispiel oben. Eine Programmiersprache für Quantencomputer muss also in der Lage sein, solche Diagramme programmatisch abzubilden.

Prinzipiell wäre jede Programmiersprache für herkömmliche Computer dazu in der Lage. Die Besonderheit hierbei ist lediglich, dass die Sprache Bausteine für die einzelnen Quantengatter bereitstellen muss. Der Quantencomputer muss dann für diese Bausteine einen Treiber zur Verfügung stellen, der die Quantengatter-Anweisung in eine physikalische Quanten-Schaltung übersetzt.

In einem supraleitenden Quantencomputer wird ein H-Quantengatter etwa durch einen Mikrowellenimpuls mit einer genau-dosierten Impulslänge realisiert, Dieser zielt auf einen supraleitenden Schwingschaltkreis: Dem physikalische Qubit. Für aktuelle Quantencomputer nimmt die externe Steuer- und Ausleseelektronik nebenbei den größten Platz ein. Um dies zu reduzieren, gibt es Bestrebungen die Steuerung in eine Platine direkt in den Quantencomputer zu verlagern ii.

Als Programmiersprache für Quantencomputer hat sich die beliebte Programmiersprache „Python“ für herkömmliche Computer herauskristalisiert. Die Hersteller von Quantencomputern stellen hierfür eine Programmierschnittstelle (bzw. eine API) zur Verfügung, die die benötigten Erweiterungen bereitstellt. Der Quantencomputer wird darüber von einem lokalen herkömmlichen Arbeitsplatzrechner ferngesteuert: Das fertige Programm wird über die Schnittstelle / API an den Quantencomputer gesendet, der den Programmauftrag in eine gemeinsame Warteschleife für den Quantencomputer stellt. Sobald die nötigen Ressourcen frei sind, führt der Quantencomputer das Quantenprogramm aus und sendet das Ergebnis an den lokalen Arbeitsplatz zurück.

Um diesen Ablauf abzukürzen besitzen alle APIs sogenannte Quantencomputer-Simulatoren. Diese laufen nur auf dem lokalen Arbeitsplatzrechner. Da herkömmliche Computer einen Quantencomputer nur bedingt simulieren können, kann man über die Simulatoren nur Quantenprogramme mit wenigen Qubits austesten.

Quantencomputer progammieren: IBMs Python-API „Qiskit“

IBM ist einer der Pioniere in der Quantencomputer–Entwicklung. Entsprechend verwundert es nicht, dass der Techriese der erste Hersteller war, der 2015 einen 5 Qubit-Quantencomputer als Cloudangebot zur Verfügung stellte. Mittlerweile bietet IBM in seinem Cloudangebot „IBM Quantum Experience“ weitere Quantencomputer auf Supraleiter-Basis mit bis zu 20 Qubits an iii. Mit einem Credit-System können Nutzer hierfür Quantenprogramm einstellen. Dabei stellt IBM die Dienste teilweise sogar kostenlos zur Verfügung.

Teil des Cloudangebotes ist die Python API „Qiskit“. Hierfür stellt IBM eine umfangreiche Dokumentation zur Verfügung iv. Probleme und Fragen rund um Qiskit können entweder über IBMs „Qiskit Slack“ oder über die unabhängige Website „Quantum Computing Stack Exchange“ gestellt werden v. Qiskit ist Open Source und das Projekt wird auf Github gehostet. IBM veranstaltet regelmäßig Events und „Hackathons“ für die API.

Um weitere Zusatzmodule für Python auf dem eigenen Arbeitsplatz einzubinden, stellen die Entwickler der Programmiersprache Python den Packagemanager „pip“ zur Verfügung. Mit folgenden Anweisungen installieren Sie zum Beispiel Python 3 und Pip für einen Linux Ubuntu 18.04 Arbeitsplatz:

sudo apt-get install python3-pip

Sobald „pip“ installiert ist kann Qiskit als Zusatzmodul eingebunden werden

python3 -m pip install –user qiskit

Um ein Python / Qiskit – Programm zu schreiben, reicht ein einfacher Texteditor aus. Per Kommandozeile kann die erstellte Datei (z.B. „programm.py“) dann in einer DOS- oder Linux-Shell ausgeführt werden.

python3 programm.py

Komfortabler macht man es sich, wenn man hierfür eine „Entwicklungsumgebung“ verwendet. Darüber sind diverse Zusatzfunktionen, die bei der Programmierung hilfreich sind, direkt verfügbar. Als eine der Standardumgebung (für wissenschaftliche Programmierung mit Python im Allgemeinen und für die Programmieren von Quantencomputern im Besonderen) hat sich die freie Umgebung „Jupyter Notebook“ bewährt vi.

Ein Jupyter-Notebook kann in einem beliebigen Browser (Chrome, Firefox, IE, …) bearbeitet werden und wird dort auch ausgeführt. Nebenbei kann ein Jupyter Notebook Markup-Texte, Bilder und wissenschaftliche Formeln direkt einbinden.

Folgender Befehl installiert etwa die nötigen Jupyter-Packages auf einem lokalen Linux Ubuntu – Arbeitsplatz:

python3 -m pip install –user ipython jupyter

Danach starten Sie Jupyter Notebook über den Kommandozeilen-Befehl

jupyter notebook

Noch einfacher machen Sie es sich, wenn Sie dies alles zusammen in der Python-Distribution „Anaconda“ installieren vii. Anaconda ist für sämtliche Betriebssysteme verfügbar und hat sich zu einem Standard im Data Science – und Machine-Learning- Umfeld entwickelt. Darüber hinaus stellt Anaconda diverse weitere Tools für das wissenschaftliche Arbeiten mit Daten und für das Machine-Learning zur Verfügung.

Quantencomputer programmieren: Der Grover Algorithmus

In diesem Artikel werden wir mit Qiskit ein Quantenprogramm für den berühmten Grover-Algorithmus erstellen. Das Quantengatter-Schaltdiagramm hatten Sie bereits oben kurz kennengelernt. Der Grover-Algorithmus ist ein universeller Quanten-Algorthmus für sämtliche „Nadel-Im-Heuhaufen“-Probleme. Dazu zählen übrigens auch Optimierungsprobleme. Gegenüber herkömmlichen Computern beschleunigt der Grover-Algorithmus die Ausführungszeit quadratisch: Benötigt ein herkömmlicher Computer für die Lösung des Problems 1 Millionen Durchläufe, so benötigt der Grover-Algorithmus nur etwa 1000 Durchläufe.

Sie erinnern sich, dass das Endergebnis eines Quanten-Programms per Messung aus den Qubits ausgelesen wird. Dabei bedingt die Quantenmechanik, dass es vom Zufall abhängt, ob ein Qubit am Ende den Wert 0 oder den Wert 1 zurückgibt. Der Clou des Grover-Algorithmus besteht nun darin, dass das gesuchte Ergebnis (in Form von einer Bit-Sequenz z.B. „0 0 1 0 1 1 0 ….“) mit jedem Durchlauf weiter verstärkt wird. Im Gegensatz dazu werden die „falschen“ Bit-Sequenzen immer weiter unterdrückt. Weiter unten werden sie ein genaues Bild davon bekommen.

Wir beschränken uns hier darauf das obige Schaltbild für drei Qubits zu programmieren. Den Grover-Algorithmus selbst stelle ich im Detail in dem Artikel „Der Grover-Algorithmus und die Suche nach dem heiligen Gral“ vor. Um die Funktionsweise des Algorithmus zu verstehen, empfehle ich Ihnen diesen zu lesen.

Quantencomputer programmieren: Unser erstes Qiskit-Programm

Im Folgenden sehen Sie unser Quantenprogramm, wie es sich in Jupyter Notebook darstellt. Die einzelnen Zellen klammern lediglich bestimmte Programmteile. Wir hätten hierfür auch ein einzelnes Skript bzw. eine einzelne Zelle verwenden können.

Auf „Google Colaboration“ habe ich das Quantenprogramm ebenfalls für Sie bereitgestellt:

https://colab.research.google.com/drive/1bTGLjxU33yWqKAVI5LCudf-jqdlsVy-l

Indem Sie dort auf „Open Playground“ klicken, können Sie es in einer Spielwiese selbst verändern und ausführen. Das Programm läuft dabei nicht bei Ihnen lokal, sondern auf den Google-Servern ab.








Der Grover-Algorithmus als Qiskit-Programm

Auch auf Google-Colaboration verfügbar:
https://colab.research.google.com/drive/1SchqSnnycmLpTSrs-ToUnC2zDpCjWgxs

In [72]:
# Pip-Anweisung, Qiskit nachzuinstallieren,
# falls noch nicht vorhanden
! pip3 install qiskit --quiet
! pip3 install qiskit-terra[visualization] --quiet

In [6]:
# Zunächst müssen wir die Qiskit-Module einbinden,
# die wir für das Quantenprogramm benötigen:

import qiskit
from qiskit import(QuantumCircuit, execute, Aer, BasicAer)

from qiskit.visualization import plot_histogram
from qiskit.visualization import plot_state_city

# Versionen der einzelnen Qiskit-Modulen ausgeben:
qiskit.__qiskit_version__
Out[6]:
{'qiskit-terra': '0.12.0',
 'qiskit-aer': '0.4.0',
 'qiskit-ignis': '0.2.0',
 'qiskit-ibmq-provider': '0.4.6',
 'qiskit-aqua': '0.6.4',
 'qiskit': '0.15.0'}
In [7]:
# Globale Variablen und Funktionen

# Anzahl von Qubits: 3
n = 3


# Folgende Quantenschaltungen werden wir abwechselnd
# wiederverwenden. Deshalb packen wir sie in eine Python-Funktion

# Die Quantenschaltung für das Oracle: 
# Reflektiert alle Qubits am Zeiger auf die Lösung: (0,0,1)
# Was dabei nur schwer zu sehen ist:
# Dafür müssen wir die Lösung tatsächlich NICHT kennen
# ... glauben Sie es mir einfach!
def add_reflect_oracle(circuit):
    circuit.h(2)
    circuit.ccx(0,1,2)
    circuit.h(2)      

    
# Die Quantenschaltung für den Grover-Operator:
# Reflektiert alle Qubits am Zeiger auf den Zustand
# der gleichförmigen Überlagerung s = (1, 1, 1)
def add_reflect_s(circuit):
    for i in range(n):
        circuit.h(i)
        
    for i in range(n):
        circuit.x(i)
    
    circuit.h(2)
    circuit.ccx(0,1,2)
    circuit.h(2)
    
    for i in range(n):
        circuit.x(i)   
        
    for i in range(n):
        circuit.h(i)  

Als Qiskit-Programm werden wir den Grover-Algorithmus jetzt jeweils 0 bis 4 Grover-Durchläufe ausführen. Dabei werden wir jeweils das Quanten-Schaltung und die Messergebnisse als Diagramm ausgeben. Dabei werden Sie erkennen wieviel Durchläufe der Grover-Algorithmus benötigt, um ein optimales Ergebnis zu liefern.

Grover-Algorithmus mit 0 Durchläufen

In [8]:
# Ab hier startet das eigentliche Quantenprogramm:

# Zunächst muss ein "Backend" festgelegt werden
# Unser Backend ist ein Quantencomputer-Simulator:
simulator = Aer.get_backend('qasm_simulator')
#simulator = BasicAer.get_backend('statevector_simulator')


# Wir wollen einen Quanten-Schaltkreis 
# mit n=3 Qubits erstellen:
circuit = QuantumCircuit(n, n)

# Wir überführen jedes Qubit i in den 
# Zustand der gleichförmigen Überlagerung:
for i in range(n):
    circuit.h(i)

    
# Für 0 Durchläufe lassen wir die Schaltungen für die
# Reflektionen weg.

# Am Ende Messen wir die Qubits aus
circuit.measure(range(n), range(n))
Out[8]:
<qiskit.circuit.instructionset.InstructionSet at 0x7f1c88401f98>
In [9]:
# Einer der Vorzüge von Qiskit: Die Visualisierungen!

# "Magic Function" für IPython / Jupyter
# Anweisung damit Bilder direkt angezeigt werden
%matplotlib inline

# Zeichnet das Diagramm zu unserem Quanten-Schaltkreis
# direkt im Jupyter Notebook
# Außerhalb vom Notebook muss das Image extern abgelegt
# werden mit dem Parameter filename="my_circuit.png"
# Hierbei sind diverse Datentypen möglich
circuit.draw(output="latex")

# output-Typen sind "text", "mpl", "latex", "latex_source"
Out[9]:
In [10]:
# Den "Job" wiederholen wir 1000 Mal und lassen
# Qiskit ein Diagramm über die Statistik der zeichnen
job = execute(circuit, simulator, shots=1000)
result = job.result()
plot_histogram(result.get_counts(circuit))
Out[10]:

Gleichverteilung: Nach 0 Grover-Durchläufen hat der
Grover-Algorithmus das gesuchte Ergebnis noch nicht
verstärkt.

Grover-Algorithmus mit 1 Durchlauf

In [12]:
# Schaltkreis nochmal neuerstellen,
# ausmessen und Diagramme ausgeben
circuit = QuantumCircuit(n, n)

for i in range(n):
    circuit.h(i)

# 1 Grover-Durchlauf
add_reflect_oracle(circuit)
add_reflect_s(circuit)

circuit.measure(range(n), range(n))
circuit.draw(output="latex")
Out[12]:
In [18]:
job = execute(circuit, simulator, shots=1000)
result = job.result()
plot_histogram(result.get_counts(circuit))
Out[18]:

Nach einem Grover-Durchlauf hat der Algorithmus die Lösungssequenz 1 1 1 schon deutlich verstärkt.

Grover-Algorithmus mit 2 Durchläufen

In [19]:
# Schaltkreis nochmal neuerstellen,
# ausmessen und Diagramme ausgeben
circuit = QuantumCircuit(n, n)

for i in range(n):
    circuit.h(i)

# 2 Grover-Durchläufe
add_reflect_oracle(circuit)
add_reflect_s(circuit)

add_reflect_oracle(circuit)
add_reflect_s(circuit)

circuit.measure(range(n), range(n))

circuit.draw(output="latex")
Out[19]:
In [15]:
job = execute(circuit, simulator, shots=1000)
result = job.result()
plot_histogram(result.get_counts(circuit))
Out[15]:

Nach zwei Grover-Durchläufen hat der Algorithmus die Lösungssequenz 1 1 1 fast vollständig verstärkt.

Grover-Algorithmus mit 3 Durchläufen

In [16]:
# Schaltkreis nochmal neuerstellen,
# ausmessen und Diagramme ausgeben
circuit = QuantumCircuit(n, n)

for i in range(n):
    circuit.h(i)

add_reflect_oracle(circuit)
add_reflect_s(circuit)

add_reflect_oracle(circuit)
add_reflect_s(circuit)

add_reflect_oracle(circuit)
add_reflect_s(circuit)

circuit.measure(range(n), range(n))

circuit.draw(output="latex")
Out[16]:
In [17]:
job = execute(circuit, simulator, shots=1000)
result = job.result()
plot_histogram(result.get_counts(circuit))
Out[17]:

Wir erkennen also, dass der Grover-Algorithmus nach
zwei Durchläufen das beste Ergebnis liefert und danach wieder
schlechtere Werte. Das Ganze verhält sich periodisch. Und genauso
erwarten wir es auch, wenn wir uns nochmal vergegenwärtigen, wie
der Grover-Algorithmus funktioniert.

Nur so nebenbei:

Die Quantengatter, die wir verwendet haben besitzen auch eine Matrix-Darstellung.

In [69]:
from qiskit.extensions.standard.h import HGate
HGate().to_matrix()
Out[69]:
array([[ 0.70710678+0.j,  0.70710678+0.j],
       [ 0.70710678+0.j, -0.70710678+0.j]])
In [70]:
from qiskit.extensions.standard.x import XGate
XGate().to_matrix()
Out[70]:
array([[0.+0.j, 1.+0.j],
       [1.+0.j, 0.+0.j]])

Am Ccx-Quantengatter erkennen Sie übrigens, das herkömmliche Computer schnell an ihre Grenzen
stoßen, wenn die Qubit-Anzahl zunimmt.
Das Ccx – / Toffoli – Quantengatter operiert gerade mal auf 3 Qubits.
Die Matrix ist aber schon jetzt unübersichtlich:

In [71]:
from qiskit.extensions.standard.x import ToffoliGate
ToffoliGate.to_matrix(ToffoliGate)
Out[71]:
array([[1.+0.j, 0.+0.j, 0.+0.j, 0.+0.j, 0.+0.j, 0.+0.j, 0.+0.j, 0.+0.j],
       [0.+0.j, 1.+0.j, 0.+0.j, 0.+0.j, 0.+0.j, 0.+0.j, 0.+0.j, 0.+0.j],
       [0.+0.j, 0.+0.j, 1.+0.j, 0.+0.j, 0.+0.j, 0.+0.j, 0.+0.j, 0.+0.j],
       [0.+0.j, 0.+0.j, 0.+0.j, 0.+0.j, 0.+0.j, 0.+0.j, 0.+0.j, 1.+0.j],
       [0.+0.j, 0.+0.j, 0.+0.j, 0.+0.j, 1.+0.j, 0.+0.j, 0.+0.j, 0.+0.j],
       [0.+0.j, 0.+0.j, 0.+0.j, 0.+0.j, 0.+0.j, 1.+0.j, 0.+0.j, 0.+0.j],
       [0.+0.j, 0.+0.j, 0.+0.j, 0.+0.j, 0.+0.j, 0.+0.j, 1.+0.j, 0.+0.j],
       [0.+0.j, 0.+0.j, 0.+0.j, 1.+0.j, 0.+0.j, 0.+0.j, 0.+0.j, 0.+0.j]])

Fußnoten

i Das exakte Bild eines Qubits ist das einer Kugeloberfläche. Die Zustände |0und |1⟩ müssen wir dann an Nord- und Südpol einzeichnen. Um von der Kreislinie zur Kugeloberfläche zu gelangen, muss ein zusätzliche Winkel verwendet werden, der auch „Phase“ genannt wird.

ii https://t3n.de/news/quanten-computing-intel-gibt-1253925/: Artikel „Quanten-Computing: Intel gibt Details zum neuen Cryo-Chip Horse Ridge preis“ über Intels Steuerplatine für Mikrwowellenstrahlung, der in der Lage wäre innerhalb der Tieftemperatur-Umgebung eines Quantencomputers zu arbeiten.

iii https://quantum-computing.ibm.com/: Homepage von IBM Clouddienst „Quantum Experience“.

iv https://quantum-computing.ibm.com/docs/qis-tut/: Dokumentation für IBMs Python API „Qiskit“

v https://quantum-computing.ibm.com/support: Referenz-Seite zum „Qiskit Slack“ oder zu den entsprechenden Tags auf „Quantum Computing Stack Exchange“.

vi https://jupyter.org/: Homepage des Jupyter-Projektes. „Jupyter“ ist eine Namenskombination aus den drei Programmiersprachen Julia, Python, R, die eine wichtige Rolle bei der Programmierung im wissenschaftlichen Umfeld spielen.

vii https://www.anaconda.com/distribution/: Homepage der Python / R – Distribution „Anaconda“.

Der unglaubliche Quantencomputer einfach erklärt

<<   >>

Durch Quantencomputer wird die rätselhafte Quantenmechanik dafür genutzt, um völlig neuartige berechnende Systeme bereit zustellen. Deshalb besitzen Quantencomputer Eigenschaften die schier unglaublich wirken: So steigert sich die Leistungsfähigkeit eines Quantencomputers zum Beispiel „exponentiell“, also quasi explosionsartig, mit zunehmender Größe. Im Folgenden erkläre ich Ihnen in einfachen Worten diese besonderen Eigenschaften eines Quantencomputers und gehe genauer auf die erstaunlichen Quantenprogramme ein.

Der Paukenschlag: Der Shor-Algorithmus

Im Jahr 1994 hatte der Mathematiker Peter Shor vom renommierten Massachusetts Institute of Technology / MIT die Idee seines Lebens. Eine Idee, die eine neue Ära einleiten würde.

Shor untersuchte ein neues Verfahren, um eine ganze Zahl in Primzahlen zu zerlegen. Diese Primzahlfaktorisierung ist eine extrem aufwendige Angelegenheit. Um sehr großen Zahlen in Primzahlen zu zerlegen, brauchen selbst sehr leistungsstarke Supercomputer mehrere Jahre. i

Unter anderem deshalb wird sie für die sichere Datenverschlüsselung im Internet verwendet. Es ist zwar sehr einfach selbst große Zahlen aus bekannten Primzahlen zusammenzusetzen (z.B. 7×13×13×17×53 = 1065883). Da die Umkehrung aber nahezu unmöglich ist, ist die Verschlüsselung im Internet bombensicher.

Eigentlich!

Shor fragte sich, ob man das neue Verfahren nutzen könnte, um neue Algorithmen für die Primzahlzerlegung zu erstellen. Irgendwann erinnerte er sich an eine Pflichtvorlesung über Quantenmechanik, die er seinerzeit als Mathematik-Student noch am California Institute of Technology (Caltech), hatte hören müssen. Ihm kam die grandiose Idee, dass das Verfahren ungleich schneller zum Ziel führen könnte, wenn man zur Berechnung nicht einen herkömmlichen Computer, sondern einen Quantencomputer verwenden würde. Er tüfftelte ein Jahr an seinem Quanten-Algorithmus und kam am Ende tatsächlich zu dem gewünschten Ergebnis ii.

Shors Algorithmus schlug ein wie eine Bombe. Bis zu diesem Zeipunkt, war es noch niemanden gelungen einen Quantencomputer zu konstruieren. Der Shor-Algorithmus war aber der erste Beweis, wie ungeheuer leistungsstark ein Quantencomputer sein und welche gesellschaftlichen Auswirkungen er haben würde. Shors Algorithmus löste einen regelrechten Boom in den Quantencomputer-Szene aus.

Ein Quantencomputer macht sich die außergewöhnlichen Eigenschaften der atomaren Welt zu nutze, um über spezielle Quantenprogrammen, den Quanten-Algorithmen, ganz neue Dimensionen in der Rechengeschwindigkeit zu erzielen. Das Wort „außergewöhnlich“ ist hierbei wohl noch untertrieben. Die Quantenwelt ist eine rätselhafte Welt mit schon fast magischen Eigenschaften.

Um einen Eindruck davon zu bekommen, was das Besondere an einem Quantencomputer ist, müssen wir uns erst einmal anschauen, wie ein herkömmlicher Computer funktioniert.

Einfach erklärt: Wie funktioniert ein herkömmlicher Computer?

Nehmen wir Ihren Computer, mit dem Sie diese Zeilen lesen. Er steuert Informationen in Form von Nullen und Einsen über Bits bzw. Bytes an. Die Zahl „71“ wird z.B. durch die Bit-Reihe „0100 0111“ dargestellt und der Buchstabe „J“, per Konvention, durch die Bit-Reihe „100 1010“. Ihr Computer merkt sich, ob eine Bit-Reihe eine Zahl, einen Buchstaben, ein Bild oder Musik darstellt. Die Bits selbst existieren in Form von Milliarden elektrischer An / Aus – Schalter, den Transistoren. Zusammen bilden sie den Arbeitsspeicher Ihres Computers. Ein guter herkömmlicher Computer besitzt etwa 16 * 8 Milliarden Bits oder anders ausgedrückt: 16 Gigabyte. Ein Computerprogramm manipuliert diese Bits in einzelnen Rechenschritten über die elementarsten Bausteine der menschlichen Logik: UND-Verknüpfungen, ODER-Verknüpfungen, NICHT-Verknüpfungen. Diese Verknüpfungen werden auch „Gatter“ genannt (englisch gates). Eine NICHT-Verknüpfung kehrt ein einzelnes Bit z.B. in sein Gegenteil um: NICHT 0 = 1, NICHT 1 = 0 .

Über geschickte elektrische Schaltungen, dem Datenbus, ist Ihr Computer in der Lage jedes der unzähligen Bits im Arbeitsspeicher gezielt anzusteuern, auszulesen oder mit neuen Werten zu überschreiben. Ein Rechenschritt sieht dann zum Beispiel so aus:

„Lese den Wert des Bits mit der Adress-Nummer 1543216 und den Wert des Bits mit der Adress-Nummer 6543 aus und verknüpfe beide Werte mit einem UND-Befehl. Speicher das Ergebnis im Bit mit der Adress-Nummer 789874“. Durch eine geschickte Hintereinanderreihung dieser elementaren UND-, ODER-, NICHT-Verknüpfungen ist Ihr Computer zum Beispiel in der Lage zwei Zahlen miteinander malzunehmen. Nach jedem einzelnen dieser Rechenschritte schreibt Ihr Computer die Zwischenergebnisse wieder in den Arbeitsspeicher hinein und ruft sie von dort wieder für den nächsten Rechenschritt auf. Das Programm für das Mal-Nehmen sieht unnötig umständlich und mechanisch stupide aus. Da Ihr Computer aber in der Lage ist Milliarden von Rechenschritten pro Sekunde auszuführen ist er jedem Menschen am Ende in solchen Aufgaben gigantisch überlegen.

Die Qubits einfach erklärt

Ein Quantencomputer steuert im Gegensatz dazu die Informationen nicht über einfache An / Aus-Schalter an, also den herkömmlichen Bits, sondern über sogenannte „Qubits“ (für Quanten-Bits). In einem Qubit sind die Werte 0 / 1 bzw. An / Aus gleichzeitig in einer überlagerten Form vorhanden. Das sieht auf den ersten Blick vielleicht harmlos aus. Tatsächlich ist diese Überlagerung eines der großen Rätsel der Quantenmechanik.

Als Konsequenz ersann der österreichische Nobelpreisträger Erwin Schrödinger vor fast hundert Jahren sein berühmtes Gedankenexperiment „Schrödingers Katze“: Eine Katze, die zusammen mit einem Qubit überlagert ist. Das Qubit schaltet einen Giftcocktail ein, sobald es den Wert 1 hat. Wenn das Qubit aber gleichzeitig den Wert 0 und den Wert 1 besitzt, so Schrödinger, müsste die Katze ebenfalls gleichzeitig tot und lebendig sein.

In meinem Artikel „Das Qubit und ein Magier bei Britain Has Got Talent“ vergleiche ich das Qubit mit einem spektakulären Zaubertrick des Magiers Darcy Oake in der englischen Talentshow von 2014. Darin steht Darcy Oake scheinbar zweimal gleichzeitig auf der Bühne. Ein Qubit verhält sich genauso. Allerdings nicht als Trick, sondern in Wirklichkeit.

Um dies zu veranschaulichen, verwende ich auf „quantencomputer-info.de“ eine Qubit-Darstellung, die gegenüber der Lehrbuchdarstellung vereinfacht ist aber dem Kern bereits sehr nahe kommt: Ein einfacher Zeiger in einer Ebene. Folgendes Qubit ist zum Beispiel zu gleichen Teilen sowohl im Zustand 0 als auch im Zustand 1.

Wenn Sie jetzt denken: „Verstanden! Dann wären zwei Qubits einfach zwei Zeiger“, muss ich Sie leider enttäuschen. So einfach machen die Quantencomputer es uns dann doch nicht. Tatsächlich entsprechen zwei Qubits in der vereinfachten Darstellung immer noch einem Zeiger, allerdings mit vier jeweils senkrechten Achsen!

Ich weiß, jeder Versuch vier Dimensionen irgendwie bildlich darzustellen, endet kläglich. Ich will es trotzdem versuchen:

Sie können sich vorstellen, dass dieses Verhalten sehr ungewöhnliche Konsequenzen hat … Mehr dazu weiter unten in dem Abschnitt über die „Quanten-Verschränkung“.

Die zweite so außergewöhnliche Eigenschaft von Qubits ist die Folgende: Man kann einen Quantencomputer zwar sogar durch einen herkömmlichen Computer simulieren bzw. nachbilden (Probleme aus der Quantenmechanik lassen sich schließlich auch durch „herkömmliche“ Methoden berechnen), der Aufwand dafür nimmt mit steigender Qubitzahl allerdings schnell gigantische Ausmaße an. Die folgende Liste zeigt, wie viele herkömmliche Bits notwendig sind, um die entsprechende Menge an Qubits nachzubilden iii .

        • 1 Qubit benötigt 256 herkömmliche Bits
        • 2 Qubits benötigen 512 herkömmliche Bits
        • 10 Qubits benötigen 16 herkömmliche kilo-Byte
        • 20 Qubits benötigen 16 herkömmliche Mega-Byte
        • 30 Qubits benötigen 16 herkömmliche Giga-Byte
        • 31 Qubits benötigen 32 herkömmliche Giga-Byte

Jedes weitere Qubit verdoppelt also die benötigte Anzahl von herkömmlichen Bits! Die Leistungsfähigkeit eines Quantencomputers steigt also im Vergleich exponentiell! Und so geht’s weiter:

      • 45 Qubits benötigen in etwa der Speichergröße des größten aktuellen, herkömmlichen Supercomputers
      • 50 Qubits, die „Quanten-Überlegenheit“-Grenze: Die Grenze an dem ein Quantencomputer gewisse Berechnungen durchführen kann, die mit keinem der aktuellen Supercomputer durchführbar sind iv. Mehr dazu in meinem Artikel Googles Nachweis der Quanten-Überlegenheit“ 
      • 250 Qubits: Die absolute Grenze, die überhaupt machbar wäre für herkömmliche Computer. Um einen 250 Qubit-Quantencomputer nachzubilden, müsste ein herkömmlicher Computer jedes Atom im Universum als herkömmliches Bit verwenden.

Das wirkt unglaublich. Ist es auch!

Und nun bedenken Sie mal, dass die Quantencomputer-Hersteller das Ziel haben irgendwann einmal Quantencomputer mit Millionen von Qubits zu bauen!

Quantencomputer einfach erklärt: Quantenparallelismus, Superposition

Der Clou bei diesen ungeheuren Zahlen ist aber tatsächlich Folgender: Nehmen wir nochmal das Beispiel mit dem Mal-Nehmen. Ihr herkömmlicher Computer nimmt zwei Zahlen, in Form von zwei Bit-Reihen im Arbeitsspeicher, führt das festgelegte Programm von einzelnen Rechenschritten aus und erhält am Ende eine Zahl in Form von einer Bit-Reihe.

Ein Quantencomputer nimmt im Gegensatz dazu für eine Aufgabe zwei Qubit-Reihen, speichert die Zwischenergebnisse wieder in Qubits und erhält am Ende das Ergebnis in Form einer Qubit-Reihe v. Da in einer Qubit-Reihe aber riesige Mengen von Informationen gleichzeitig enthalten sein können (s.o.), kann der Quantencomputer das Programm letztendlich gleichzeitig mit einer riesigen Menge von Zahlen ausführen. Dies ist der Quantenparallelismus. Normalerweise spricht man aber von der „Superposition“.

Tatsächlich gibt es diese Form von Überlagerung öfter in der Natur und nicht nur in der Quantenmechanik vi. Was den Quantenparallelismus so besonders macht ist die Tatsache, dass nur wenige Qubits so unvorstellbar große Datenmengen überlagern können. Die Qubits werden nämlich nicht nur einzeln überlagert, sondern der gesamte Verbund an Qubits. Und gerade dabei erhöht sich die Anzahl von möglichen Kombination so rasant. Für drei Qubits werden also z.B. bis zu acht mögliche Bit-Zustände gleichzeitig verwendet (das entspricht 2³): Nämlich 000, 100, 001, 101, 011, 111, 010 und 110.

Aber: Jede Messung zerstört die Quanteneigenschaften

Die enorme parallele Rechenleistung eines Quantencomputers hat leider einen großen Haken: Sie funktioniert nur solange der Quantencomputer perfekt von seiner Umgebung isoliert ist und die höchst fragilen Qubits ungestört sind. Indem wir am Ende allerdings das Ergebnis des Quantenprogramms aus den Qubits auslesen, tun wir aber genau das. In diesem Moment „zerfallen“ die gleichzeitig vorhandenen Werte und übrig bleibt nur ein einziger Wert der darüber hinaus auch noch zufällig gewählt wird. Dieser Zerfall ist als „Kollaps der Wellenfunktion“ bekannt und ist noch so ein Mysterium der Quantenwelt. Er war der Grund, warum manche Physiker, unter ihnen selbst Albert Einstein, die Quantentheorie zwar schätzten und vorantrieben aber im Grunde ablehnten: „Gott würfelt nicht“.

Nebenbei: Für den Bau von Quantencomputern haben solche Störungen fast unlösbare Konsequenzen. Wie man Quanteneigenschaften trotzdem dagegen „schützen“ kann, und welche grundlegende Bedeutung diese „Quanten-Fehlerkorrektur“ sogar für die Natur von Raum und Zeit haben könnte, erläutere ich Ihnen im nächsten Artikel „Der sehr, sehr steile Weg zum ersten Quantencomputer“.

Und jetzt? Was ist überhaupt gewonnen, wenn am Ende doch nur alles vom Zufall abhängt?

Jetzt kommt das Aber: Die Wahrscheinlichkeiten, mit denen die verschiedenen Werte am Ende ausgelesen bzw. gemessen werden, können wir beeinflussen. Die Kunst eines Quantenprogramms besteht unter anderem darin, die Qubits so zu manipulieren, dass das gesuchte Ergebnis am Ende am Wahrscheinlichsten gemessen wird. Bis dahin, also während er noch von seiner Umgebung isoliert ist, kann dann die enorme Rechenkraft des ungestörten Quantencomputers genutzt werden.

Mehr über Quantenprogramme erfahren Sie weiter unten. Kommen wir zunächst zu einer der merkwürdigsten Eigenschaften von Quanten bzw. von Qubits.

Einsteins spukhafte Verschränkung

Oben hatte ich schon ein Zeigerbeispiel für zwei Qubits dargestellt. Diese Zeiger-Eigenschaft hat eine bizarre Konsequenz. Albert Einstein höchstpersönlich sagte sie 1935 in einem berühmten Aufsatz voraus: Die „Quanten-Verschränkung“ (engl. „entanglement“, er selbst bezeichnete das Phänomen auch „spukhafte Fernwirkung“). Wir können zwei Qubits (oder auch mehrere Qubits) derart überlagern, dass wir sie nicht mehr als einzelne Qubits erkennen können. Stattdessen bilden sie eine völlig neuartige, einheitliche Zustandsform. Sie erscheinen „verschränkt“: Eine Messung am ersten Qubit hat sofort Auswirkungen auf das zweite Qubit.

Um das zu verdeutlichen schauen wir uns nochmal ein Zeigerdiagramm mit 4 Achsen an. Der blaue Zeiger unten beschreibt den gemeinsamen Zustand von Qubit A und Qubit B. Jetzt führen wir eine Messung nur an Qubit B durch. Im vorigen Abschnitt haben Sie erfahren, dass sich Qubit B durch die Messung für einen Zustand entscheidet: Wir messen entweder den Zustand 0 oder den Zustand 1. An Qubit A haben wir noch keine Messung durchgeführt. Eigentlich müssten wir also für Qubit A einen einzelnen überlagerten Zeiger in zwei Dimensionen erhalten, der nichts über die vorangegangene und unabhängige Messung an Qubit B „weiß.

An dem Beispiel erkennen Sie aber, dass sich die Messung sehr wohl direkt auf Qubit A auswirkt. Qubit A ist nach der Messung so etwas wie der „Schatten“ des ursprünglichen blauen Zeigers, den ich durch die gestrichelten Zeiger andeute. Die Ebene, in der dieser Schatten liegt wird durch die Messung von Qubit B festgelegt: Wenn wir für Qubit B den Zustand 0 messen, erhalten wir für Qubit A den linken gestrichelten Zeiger, der hauptsächlich in die 0-Richtung zeigt. Wenn wir für Qubit B den Zustand 1 messen, erhalten wir für Qubit A den unteren gestrichelten Zeiger, der hauptsächlich in die 1-Richtung zeigt.

Ziel von Einsteins Arbeit war es tatsächlich, der Quantenmechanik einen grundlegenden Denkfehler nachzuweisen. Laut Einstein müsste diese verschränkte Einheit bestehen bleiben, selbst wenn die beiden Qubits Lichtjahre voneinander entfernt wären. Deshalb sprach er von Fernwirkung. Das Verrückte dabei ist: Alle Experimente deuten daraufhin, dass es genauso ist. Die Fernwirkung ist real in der Quantenwelt und sie wirkt sich sofort aus!

Solche verschränkten Zustandsformen gibt es nirgendwo sonst in den Naturwissenschaften. Vielleicht bis auf eine Ausnahme: Ein sogenanntes astronomisches „Wurmloch“, das zwei schwarze Löcher über eine Distanz von vielen Lichtjahren miteinander verbinden kann, als eine Art Hyper-Schnellstraße. Die Frage, wie diese beiden Phänomene zusammenhängen ist tatsächlich Gegenstand aktueller Forschung in der theoretischen Physik.

Quantengatter einfach erklärt: Die Bausteine der Quantenprogramme

Auf einem Quantencomputer können wir nicht einfach dieselben Algorithmen laufen lassen, die auf einem herkömmlichen Computer funktionieren. Stattdessen müssen wir für Quantencomputer vollkommen neue und fremdartige Quanten-Algorithmen konstruieren.

Dafür verwendet ein Quantencomputer in jedem Rechenschritt ebenfalls elementare Logik-Bausteine, den „Quantengattern“ (engl. quantum gates). Diese spiegeln allerdings nicht unsere normale Alltagslogik wieder, sondern die Quantenlogik: Somit heißen die elementaren Bausteine nicht mehr UND, ODER oder NICHT. Stattdessen verwendet ein Quantencomputer Logik-Bausteine die z.B. Hadamard, X, S, T, Z, Controlled NOT oder Controlled Z heißen. Diese Quantengatter ähneln in ihrer Funktionsweise weniger den bekannten Bausteine unserer Alltagslogik als vielmehr Drehungen in einem riesigen abstrakten „Hyperraum“ (oder genauer: ein „Hilbert“-Raum). Die Qubits bilden in ihrer Gesamtheit einen einzelnen Zeiger in diesem Raum, der durch jedes einzelne Quantengatter gedreht wird. Für zwei Qubits hatten Sie schon weiter oben einen Eindruck davon bekommen.

Diese grundlegende Fremdheit gegenüber unserer Alltagslogik ist der Grund, warum ein Quantenprogramm nur für Kenner von Quanten-Algorithmen entziffert und verstanden werden kann.

Für alle Darstellungen von Quantengatter-Schaltungen verwende ich auf „quantencomputer-info.de“ den exzellenten Quantencomputer-Simulator „Quirk“:

http://algassert.com/quirk

Quirk ist öffentlich erreichbar und kann direkt in Ihrem Browser ausprobiert werden (per „WebGL“). Craig Gidney, der Programmierer von Quirk, hat dabei ein eine Reihe bekannter Quanten-Algorithmen beispielhaft modeliert. Sie sollten dort unbedingt einmal reinschauen. Mein Favorit ist die „Quanten-Teleportation“, in der der Autor über eine Animation sehr schön verdeutlicht, wie sich ein Qubit-Zustand per Verschränkung über eine Distanz in ein zweites Qubit sprunghaft tele-transportieren lässt. Gidney ist mittlerweile übrigens bei Google angestellt und hat dort die Quanten-Programmierschnittstelle „Cirq“ federführend entwickelt.

In jedem Bereich der herkömmlichen Programmierung existiert eine lebhafte IT-Szene im Internet, die die weitere Entwicklung stark beeinflusst: Seien es Server, Netzwerke. Datenbanken, Internet, Programmierung, … Die IT-Szene für Quantenprogrammierung sitzt hauptsächlich noch in den Forschungseinrichtungen von Universitäten und hauptsächlich in den Spezialabteilungen von Google, IBM, Microsoft & Co und einigen Startups für Quantencomputer. Seit dem Frühjahr 2018 gibt es zwar das neue Diskussionsforum „Quantum Computing Stack Exchange“ vii, dass sich sehr lebhaft und inhaltlich hochwertig entwickelt. Wichtige Ergebnisse werden trotzdem weiterhin über komplizierte wissenschaftliche Arbeiten veröffentlicht.

Die wohl folgenreichste dieser Veröffentlichung war gerade der Algorithmus von Peter Shor aus dem Jahr 1994, der in der Lage ist, die als sicher geglaubte Datenverschlüsselung im Internet zu knacken. Mittlerweile wurden andere, rasend schnelle und vermutlich auch interessantere Quanten-Algorithmen konstruiert.

Beispiel von der Quirk-Homepage: Schematischer Aufbau des Shor-Algorithmus.

Alle Anbieter von Quantencomputern haben mittlerweile Programmierschnittstellen entwickelt. Über diese Schnittstellen können die Quanten-Programme entweder per Simulator auf dem eigenen PC oder vom eigenen PC aus per Fernsteuerung auf dem Cloud-Quantencomputer des Herstellers ausgeführt. Der folgende Programmauszug zeigt Googles Beispiel zum Shor-Algorithmus in Googles eigener Programmierschnittstelle „Cirq“.

An diesen Beispielen erkennen Sie übrigens auch, wie sehr die Quanten-Programmierung noch in den Kinderschuhen steckt. Alle Programme werden aktuell noch in einer Art „Maschinencode für Quantencomputer“ geschrieben und sind entsprechend schwer zu entziffern. In den kommenden Jahren und Jahrzehnten wird sich die Quanten-Programmierung also auch in dieser Hinsicht weiterentwickeln müssen. Die Softwareentwicklung für herkömmliche Digitalcomputer hat es uns vorgemacht. So sind im Laufe der Zeit immer intuitivere Programmiersprachen entstanden, die den eigentlichen Maschinencode immer besser abstrahieren.

Finde das Pik As! Ein Quanten-Algorithmus einfach erklärt

Um Ihnen einen Eindruck von der Andersartigkeit der Quanten-Algorithmen zu vermitteln, versuchen wir mal folgendes Problem zu lösen:

Jemand mischt für uns ein Kartenspiel mit 52 Karten gut durch und breitet die 52 Karten wahllos und verdeckt vor uns aus. Jetzt schreibt er auf jede Kartenrückseite eine Nummer, die „Adresse“. Die Aufgabe soll heißen: Finde die Karte, also die Adressnummer, mit dem Pik As!

Mit unsere Alltagslogik und für jeden herkömmlichen Computer ist der beste Algorithmus für die Lösung sehr einfach und offensichtlich:

      • Schritt 1: Nimm irgendeine Karte
      • Schritt 2: Drehe sie um und prüfe: Ist es das Pik As?
          • Falls ja: Fertig!
          • Falls nein: Lege die Karte zur Seite und beginne wieder bei Schritt 1.

Im Schnitt brauchen wir für die Lösung ½ * 52 = 26 Durchläufe. Kein einzelner Mensch und kein einzelner Prozessor-Kern könnte jemals diese Aufgabe schneller durchführen. Punkt!

Der Prozessor eines Quantencomputers kann dies sehr wohl. Für ihn sieht die Lösung komplett anders und bizarr aus. Wegen des Quantenparallelismus kann sich der Quantencomputer alle Karten gleichzeitig ansehen und sie prüfen. Er kann sich die gesuchte Karte, bzw. genauer die Adressnummer zu dieser Karte, aber leider nicht so einfach herausfischen. Stattdessen muss er die falschen Karten nach und nach „ausblenden“ und das Pik As nach und nach weiter „einblenden“. Am Ende bleibt dann nur noch das Pik As mit der gesuchten Adressnummer übrig.

Der Algorithmus hierfür ist der berühmte Grover-Algorithmus. Ich stelle ihn in meinem Artikel „Der Grover-Algorithmus und die Suche nach dem Heiligen Gral“ im Detail vor. Dabei werden Sie auch erkennen wie ungemein wichtig und tiefgreifend diese auf den ersten Blick banale Fragestellung ist. Leicht abgewandelt könnte die Aufgabe etwa auch heißen: „Finde die kürzeste Route von allen möglichen Routen“ oder sogar „Finde den Beweis für … (ein wichtiges mathematisches Problem)“.

Für unser Kartenbeispiel funktioniert der Grover-Algorithmus wie folgt:

In unserem Quantencomputer haben wir zunächst jeder Karte ein Bitmuster zugeordnet. Wir suchen letztendlich also das Bitmuster für das Pik As. Jemand anderes hat diese Bitmuster jetzt in den Qubit-Registern unseres Quantencomputers „versteckt“. Wir wissen nicht wo und bekommen stattdessen nur irgendwelche Adressnummern zu den jeweiligen Registern. Diese Adressennummern sind natürlich wieder Qubits.

    • Schritt 1: Zunächst überführen wir die Qubits aller Adressnummern in einen gleichmäßig überlagerten Quantenzustand.
    • Schritt 2: Danach laden wir die unbekannten Bit-Muster der Karten nach und „heften“ sie an ihre jeweiligen Adressnummern (diese Operation nennt man auch „Quantum RAM“).
        • Wir haben jetzt einen einzelnen Zustand an dem alle Karten inklusive deren Adressnummern gleich beteiligt sind (die Qubits der Adressen und die Qubits der Bit-Muster sind darin maximal miteinander verschränkt).
        • Diesen Zustand können Sie sich als einen einzelnen Zeiger in einem riesigen, abstrakten Raum mit 52 Dimensionen bzw. Richtungsachsen „vorstellen“. Wobei: versuchen Sie es gar nicht erst. Mehr als drei Dimensionen können wir uns sowieso nicht vorstellen: oben/unten, links/recht, vorne/hinten.
        • Jede der 52 Richtungsachsen entspricht einer bestimmten Karte. Das gesuchtes Pik As ist eine dieser Achsen. Unser überlagerter Zustand zeigt vollkommen schräg in diesen Raum hinein und ein bisschen in jede der 52 Richtungen.
    • Schritt 3: Der Quantencomputer prüft jetzt in welcher Richtung das Pik As liegt.
        • Diese Prüfung ist im Prinzip ein einfaches Unterprogramm, man nennt sie trotzdem etwas geheimnisvoll: Das „Orakel“. Bildlich gesprochen dreht der Quantencomputer den Zeiger mithilfe des Orakels in die Pik As – Richtung.
        • Er kann ihn aber leider nur um in einen kleinen Winkel drehen. Dieser Winkel ist umso kleiner, je mehr Karten geprüft werden müssen.
        • Der Zeiger ist nach der Prüfung keine gleichmäßige Überlagerung mehr. Er zeigt jetzt etwas mehr in die Pik As – Richtung als in die Richtungen der anderen Karten.
    • Schritt 4: Schritt 3 müssen wir jetzt mehrmals hintereinander ausführen. Der Wissenschaftler Lov Grover hat 1996 nachgewiesen, dass der Zeiger nach 52 7.2 Prüfungen in die Richtung des Pik As gedreht wurde. Nach 7 Prüfungen messen wir also die Qubits aus und erhalten die Bit-Darstellung des Pik As und deren Adressnummer.

Folgendes Beispiel zeigt den Grover-Algorithmus für zwei Qubits.

Quantenkomplexität einfach erklärt

Vor einem halbem Jahrhundert begannen Computerwissenschaflter damit, Probleme in Klassen zu unterteilen, je nachdem wie schwierig es ist eine Lösung zu finden. Die Probleme, die relativ effektiv mit einem herkömmlichen Computer gelöst werden können, nannten sie P-Probleme.

Als die ersten Konzepte für Quantencomputer erarbeitet wurden, fügte man die Problem-Klasse BQP hinzu. Dies sind die Probleme, die relativ effektiv mit einem Quantencomputer gelöst werden können.

Mittlerweile weiss man, dass es einen grundlegenden Unterschied zwischen diesen beiden Klassen gibt. Ein Quantencomputer ist prinzipiell in der Lage wesentlich mehr Probleme effektiv zu lösen als ein herkömmlicher Computer. Ein Beispiel hierfür ist die Zerlegung in Primzahlen mit dem Shor-Algorithmus.

Dass aber selbst ein Quantencomputer seine Grenzen hat, wird im folgenden Diagramm deutlich. Es zeigt den Zusammenhang der wichtigen Problem-Klassen, den die meisten Computerwissenschaflter aktuell vermuten (mehr über die dargestellten Klassen erfahren Sie u.a. in meinem Artikel zum Grover-Algorithmus):

(Quelle: https://en.wikipedia.org/wiki/File:BQP_complexity_class_diagram.svg)

Letzte Änderungen

„quantencomputer-info.de“ ist ein lebendiges Online-Buch, das ich immer wieder aktualisiere und verbesser. Falls Sie ein wiederkehrender Besucher sind, können Sie in den Abschnitten „Letzte Änderungen“ erkennen, was sich seit Ihrem letzten Besuch verändert hat:

    • 07.11.2019:
      • Abschnitt „Die Qubits einfach erklärt“: 2-Qubit-Skizze hinzugefügt
      • Abschnitt „Einsteins spukhafte Verschränkung“: Beispiel und Skizze von 2 verschränkten Qubits hinzugefügt
      • Abschnitt „Quantengatter einfach erklärt“: Ein paar Erläuterungen über „Quirk“ hinzugefügt
      • Abschnitt „Finde das Pik As!“: QRAM-Funktionalität hinzugefügt
      • Abschnitt „Letzte Änderungen“ hinzugefügt
    • 04.07.2019:
      • Abschnitte „Finde das Pik-As“ und „Quantenkomplexität einfach erklärt“ hinzugefügt“

Fußnoten

ii https://www.scottaaronson.com/blog/?p=208: Eine allgemeinverständliche Beschreibung des Shor-Algorithmus auf Scott Aaronsons Blog. Scott Aaronson ist einer von mehreren namhaften Computerwissenschafltern, die mittlerweile im Bereich der Quantencomputer forschen.

iii https://www.youtube.com/watch?v=O_RLktWkSdg: Vortrag von Matthias Troyer (mittlerweile bei Microsoft angestellt) „Transforming Machine Learning and Optimization through Quantum Computing“. Troyers verwendete Liste beginnt allerdings bei 10 Qubits. Wenn man dies auf 1 Qubit zurückrechnet erhält man die erwähnten 256 Bits. Die kommen so zustande: 1 Qubit ist im Allgemeinen die bereits erwähnte Überlagerung a * |0> + b *|1>. Die Zahlen a und b sind sogenannte „komplexe Zahlen“ und lassen sich damit jeweils aus einem Paar von Kommazahlen („reelle Zahlen“) ausdrücken. Nimmt man auf einem normalen Computer für diese 4 Kommazahlen z.B. den Datentyp „double“ ergibt das jeweils 64 Bit. Das macht dann genau 64*4 = 256. Besten Dank übrigens an Herrn O. Wege, der mich auf eine Unstimmigkeit in meiner ursprünglichen Liste hingewiesen hat.

iv https://arxiv.org/abs/1203.5813: wissenschaftliche Arbeit von John Preskill „Quantum computing and the entanglement frontier“

v http://cds.cern.ch/record/722038/files/0403048.pdf: Aufsatz von G. Florio, D. Picca „Quantum implementation of elementary arithmetic operations“. Falls Sie sich den Aufsatz ansehen erkennen Sie auch direkt wie absolut anders ein Quanten-Algorithmus aussieht. Das liegt u.a. an den Quantengattern.

vi Tatsächlich gilt das Superpositionsprinzip auch in der Elektrodynamik und somit auch in der Elektronik. In den herkömmlichen Computern wird dies aber gerade gewollt ausgehebelt, um das digitale Verhalten der herkömmlichen Computer überhaupt erst zu ermöglichen. Möglich machen dies ausgerechnet die nichtlinearen An/Aus-Schaltelemente auf Basis der Quantentechnologie: Die Transistoren. Diese sind tatsächlich nur in einem reinen Quantensystem linear.

viii Natürlich kann ein Quantencomputer nicht mit Karten arbeiten. Stattdessen weisen wir jeder Karte ein bestimmtes Bit-Muster aus 0en und 1en zu. Entsprechend heißt dann die richtige Aufgabe: „Finde das Bit-Muster für das Pik As in den Qubits“. Die gleichmäßige Überlagerung aller Bit-Muster ähnelt dadurch dem wahllosen und verdecktem Ausbreiten der Spielkarten. Unser einfaches Beispiel mag auf den ersten Blick unlogisch aussehen, weil wir nach einem Bit-Muster suchen, das wir vorher festgelegt haben. Bedenken Sie aber, dass man den gleichen Quanten-Algorithmus z.B. auch dafür verwenden kann, um die kürzeste Route aus allen möglichen Routen zu suchen.

Googles Nachweis der Quanten-Überlegenheit

<<     >>

Google ist vor Kurzem der Nachweis der sogenannten „Quanten-Überlegenheit“ gelungen. Die Quanten-Überlegenheit ist der große Meilenstein in der Entwicklung aktueller Quantencomputer. Die Quanten-Überlegenheit markiert den Punkt in der Computer-Geschichte, an dem ein Quantencomputer erstmals nachweislich alle herkömmlichen Supercomputer für ein bestimmtes Problem überflügelt. Ich erläutere Ihnen alle Details, die spannenden Hintergründe und gebe genaue Erklärungen zu diesem wohl bahnbrechenden Ereignis.

Eine Sternstunde von Wissenschaft und Technik

Wissenschaft, das bedeutet in der Regel ein Ringen nach Erkenntnis in mühevoller Detailarbeit, das Wegstecken von Misserfolgen, dem Überdenken und dem Weitermachen. Wissenschaft bedeutet aber auch immer wieder kleine Erfolge feiern, zusammen mit einer eingefleischten Schar von gleichgesinnten Kolleginnen und Kollegen. Erfolge, die das Große und Ganze wieder ein kleines Stück nach vorne gebracht haben, in der Regel unbemerkt von der breiten Masse.

Und dann gibt es die sehr seltenen, die richtig großen Momente: Die Sternstunden von Wissenschaft und Technik. Der letzte große Baustein in einer langen Kette von vorangegangenen Ereignissen, der so mächtig ist, dass er einen ganzen neuen Wissenszweig in das Licht der Öffentlichkeit zwingt.

Dem Internet-Konzern Google so ein Paukenschlag zuletzt gelungen ist:

Das „AI Quantum“-Team des Tech-Riesens hat vor Kurzem die sogenannte „Quanten-Überlegenheit“ nachgewiesen.

Googles Nachweis der Quanten-Überlegenheit: Ein Gerücht bestätigt sich

Erste handfeste Anzeichen hierfür wurden bereits im Juni publik. Das Online-Magazin Quantamagazine berichtete über eine ominöse Berechnung, für die die enormen Rechen-Ressourcen des Tech-Riesen angezapft werden mussten. Im Juli gab dann das Forschungszentrum Jülich eine Pressemitteilung über eine neue beschlossene Partnerschaft mit Google heraus i. Später stellte sich heraus, dass auch der Jülicher Supercomputer eine gewisse Rolle bei Google Nachweis spielte.

Ende September stellte die NASA, einer von Googles Partnern in der Sache, eine vertrauliche Vorabversion von Googles Forschungsarbeit als Download bereit. Dies geschah vermutlich für interne Zwecke, nur für kurze Zeit und in einem gut versteckten Bereich auf der Webseite. Allerdings nicht versteckt genug für Googles eigene Suchmaschine: Der automatisierte Google-„Crawler“ war kurz nach der Veröffentlichung auf das Dokument aufmerksam geworden und hatte es eigenhändig weiter verteilt.

Die Meldung machte schnell die Runde und mehrere Nachrichtenseiten berichteten darüber.

Schließlich zog Google nach und stellte das besagte Dokument mit dem Titel „Quantum Supremacy Using a Programmable Superconducting Processor“ selbst zum Download bereit (zusammen mit einem Zusatzartikel) ii. Vorerst allerdings noch vollkommen unkommentiert, da sich die Arbeit zu diesem Zeitpunkt in der „Peer-Review“-Phase befand.

Es spricht für Google, dass der Konzern seine wohl bahnbrechenden Ergebnisse nicht vorschnell bekanntgab, sondern den ordentlichen wissenschaftlichen Prüfprozess abwartete.

Gestern erfolgte nun die offizielle Veröffentlichung in der Fachzeitschrift „Nature“ iii.

Im Zentrum der Arbeit steht der bisher unbekannte Quantencomputer „Sycamore“ von Google und eine Berechnung, die auf den aktuell schnellsten Supercomputern vermutlich 10 000 Jahre dauern würde: Sycamore benötigte dafür lediglich 200 Sekunden.

Anfang dieser Woche würzte die IBM-Gruppe für Quantencomputer die aktuellen Entwicklungen mit einem zusätzlichen interessanten Detail: Mit ihrem verbesserten Simulationsverfahren hätte der schnellste Supercomputer vermutlich nur 2 ½ Tage benötigt.

Im Folgenden erfahren Sie alle Details und die spannenden Hintergründe zu diesem, wohl trotzdem, bahnbrechenden Ereignis.

Die Entwicklung der ersten Quantencomputer

Im tiefsten Inneren funktioniert die Natur nicht nach unseren Alltagsgesetzen, sondern nach den rätselhaften Gesetzen der Quantenwelt. Aus diesem Grund stoßen herkömmliche Computer schnell an ihre Grenzen, wenn es darum geht Naturprozesse im atomaren Maßstab zu berechnen. Vor über 30 Jahren hinterließ der legendäre Physiker Richard Feynman der Wissenschaftswelt ein visionäres aber nahezu aussichtsloses Vermächtnis: Erst wenn es uns gelänge Computer zu konstruieren, die auf eben dieser Quantenlogik basieren, könnten wir die Natur letztendlich simulieren und grundlegend berechnen.

Nachdem diese Idee einmal geboren war, nahm das Thema schnell Fahrt auf. Der erste riesige Paukenschlag erfolgte, als der Mathematiker Peter Shor 1994 nachwies, dass die als bombensicher geglaubte Verschlüsselung im Internet mit einem sehr großen Quantencomputer in Sekundenschnelle geknackt werden könnte (nur das kein falscher Eindruck entsteht: Shors Algorithmus spielt bei Googles Nachweis der Quanten-Überlegenheit keine Rolle).

Die technischen Hürden für die weitere Entwicklung waren und sind nach wie vor gewaltig. Es dauerte nahezu 20 Jahre, bis der erste sehr experimentelle Mini-Quantencomputer in einer Forschungseinrichtung gebaut wurde.

Die NISQ-Ära der Quantencomputer

Mit der Zeit erkannten die Tech-Riesen IBM, Google, Microsoft und Co das riesige Potential der neuen Technologie. Sie starteten Kooperationen mit Forschergruppen, warben hochkarätige Wissenschaftler an und stiegen selbst in die Entwicklung der Quantencomputer ein.

Als Resultat stehen jetzt erste Quantencomputer-Angebote von Tech-Firmen in der Cloud bereit. Verfügbar für jedermann. Den aktuellen Stand beschreibe ich in meinem Artikel „Welche Quantencomputer gibt es jetzt schon?“

Aktuelle Quantencomputer haben noch eine sehr kleine Größe von bis zu 20 „Qubits“, den Quanten-Bits. Genauso wie herkömmliche Bits können Qubits die Werte 0 oder 1 annehmen. Darüber hinaus können sie sich aber auch in „überlagerten“ Zuständen von sowohl 0 als auch 1 befinden.

Um dies zu veranschaulichen, verwende ich auf „quantencomputer-info.de“ eine Qubit-Darstellung, die gegenüber der Lehrbuchdarstellung vereinfacht ist aber dem Kern bereits sehr nahe kommt: Ein einfacher Zeiger in einer Ebene. Folgendes Qubit ist zum Beispiel zu gleichen Teilen sowohl im Zustand 0 als auch im Zustand 1.

Im Verlauf einer Quantenrechnung werden die Qubits „gedreht“ und am Ende ausgemessen. Durch diese Messung „entscheiden“ sich die Qubits jeweils für einen der beiden Werte: 0 oder 1. Diese Entscheidung geschieht rein zufälligund unterliegt den Gesetzen der Quantenmechanik.

Der eigentliche Clou dabei ist Folgender: Ein Quantencomputer verdoppelt seine potentielle Rechenstärke mit jedem zusätzlichen Qubit. Also exponentiell!

Noch viel mehr über die fundamentalen Unterschiede zwischen einem herkömmlichen Computer und einem Quantencomputer erfahren Sie in meinem Einstiegsartikel „Der unglaubliche Quantencomputer einfach erklärt“.

Die aktuellen Quantencomputer befinden sich noch in der sogenannten „NISQ-Ära“. Das steht für „Noisy Intermediate Scale Quantum“, also fehleranfällige Quantencomputer mit einer „mäßigen“ Größe von wenigen Hundert „Qubits“, perspektivisch gesehen.

Was ist die Quanten-Überlegenheit?

Damit Sie einen Eindruck davon bekommen: Der Shor-Algorithmus würde vermutlich hunderttausende von Qubits und Millionen von Rechenoperationen benötigen.

Eine große Frage treibt die Quantencomputer-Szene deshalb an:

Kann man jetzt schon eine Berechnung auf einem Quantencomputer durchführen, die

      1. einen echten praktischen Nutzen hat und
      2. die kein herkömmlicher Supercomputer jemals durchführen könnte?

Mit den Jahren wurden tatsächlich mehrere Quanten-Algorithmen mit praktischem Nutzen entwickelt, die selbst auf aktuellen Quantencomputern laufen können. Das Problem dabei ist: Diese Berechnungen könnten selbst von einem normalen Laptop spielend durchgeführt werden.

Mittlerweile ist klar, dass die Suche nach einem solchen Algorithmus einfach zu groß ist.

Deshalb konzentriert man sich seit Jahren auf Punkt 2: Kann ein aktueller Quantencomputer selbst den größten Supercomputer in irgendeiner Berechnung überflügeln, egal ob sie irgendeinen praktischen Nutzen hat oder nicht?

Und genau das ist die Quanten-Überlegenheit.

John Preskill vom California Institute of Technology (Caltech), einer der führenden Wissenschaftler in der Quantencomputer-Forschung, hatte die Schallmauer für die Quanten-Überlegenheit bzw. die „Quantum Supremacy“ 2012 berechnet iv und damit auch den Startschuss für ein technologisches Wettrennen gegeben. Ab einer Quantencomputergröße von 49 oder 50 Qubit sollte ein Quantencomputer in der Lage sein, gewisse Berechnungen sehr viel schneller auszuführen als jeder herkömmliche Supercomputer. Ein Quantencomputer ab dieser Größe müsste in der Lage sein, seinen ihm eigenen und tief verwurzelten Geschwindigkeitsvorteil auszuspielen.

Welche Bedeutung hat Googles Nachweis der Quanten-Überlegenheit?

Für den Nachweis der Quanten-Überlegenheit benötigt man also nur eine einzige Berechnung.

Auf der einen Seite klingt dieser Anspruch etwas lächerlich. Nach dem Motto „Wir hängen die Kirschen mal so richtig niedrig, dass wir sie auch ja erreichen werden“. Von echter „Überlegenheit“ kann also keine Rede sein. In allen anderen Rechenaufgaben sind herkömmliche Computer den aktuellen Quantencomputern weiterhin meilenweit überlegen.

Auf der anderen Seite klingt das Vorhaben aber auch absolut absurd: Selbst ein normaler Laptop arbeitet mit Milliarden von herkömmlichen Bits und mehreren Prozessorkernen. Ein Supercomputer wiederum bewegt sich in Sphären, die mehrere Größenordnungen darüber liegen. Seit vielen Jahrzehnten arbeiten die Computerwissenschaften und die IT daran, Computerprogramme noch besser, noch schneller zu machen. Den Erfolg dieser Entwicklungen können wir überall um uns herum, in unserer digitalisierten Welt bestaunen.

Es ist deshalb vollkommen abwegig anzunehmen, dass man irgendeine neue Art von programmierbarer, universeller Rechenmaschine konstruieren könnte, mit gerade mal ein paar Dutzend „Irgendetwas-Bits“, die auch nur eine einzige Aufgabe fundamental besser erledigen könnte, als die allerbesten unserer altbewährten Computer.

Dahinter verbirgt sich letztendlich eine „uralte“ Hypothese aus der Gründerzeit der theoretischen Informatik: Die „Erweiterte Church-Turing-These“. Sie besagt gerade das Gegenteil: Jede Art von universeller Rechenmaschine kann von einem herkömmlichen Computer effizient nachgeahmt bzw. simuliert werden, und die Rückrichtung gilt genauso v. Oder einfacher ausgedrückt: Wir können zwar unsere Rechentechniken und unsere Computer immer wieder weiter beschleunigen, die Natur unserer Rechenmaschinen können wir aber nicht mehr fundamental verbessern.

Wer die Quanten-Überlegenheit nachweist, hat also insbesondere die berühmte Erweiterte Church-Turing-These widerlegt!

Das ist ein Fakt.

Kommen wir auch nochmal auf die Sternstunden-Sache zurück: Oft genug lag das Wunder solcher Momente in dem Nachweis des generell Machbaren.

Nehmen wir z.B. den Jungfernflug der Wright-Brüder: Am 17. Dezembers 1903 flog Orville Wright den ersten Flug einer navigierfähigen Propeller-Maschine: 12 Sekunden lang und 37 Meter weit. Also sehr überschaubar und eigentlich nicht der Rede wert. Trotzdem ist dieser Moment in die Geschichtsbücher eingegangen vi. Bereits Ende 1905 flogen die Brüder fast 40 Minuten lang und 40 Kilometer weit.

Wir müssen abwarten, wie es sich mit den Quantencomputern verhält …

Googles Weg zum Nachweis der Quanten-Überlegenheit

Für den Nachweis der Quanten-Überlegenheit mussten die Wissenschaftler von Googles Team fünf äußerst schwierige Aufgaben bewältigen:

      1. Sie mussten einen universellen Quantencomputer mit etwa 50 Qubit konstruieren, der verlässlich in der Lage ist, beliebige Quantenprogramme korrekt auszuführen.
      2. Sie mussten eine Rechenaufgabe finden, die speziell auf diesen Quantencomputer zugeschnitten ist und die tatsächlich alle seine Qubits und alle Standard-Operationen für Quantencomputer ausnutzt (jede andere Aufgabe wäre vermutlich effizient auf herkömmlichen Computern lösbar).
      3. Sie mussten diese Rechenaufgabe auf dem Quantencomputer ausführen.
      4. Sie mussten nachweisen, dass das Endergebnis der Rechnung höchst wahrscheinlich korrekt ist.
      5. Sie mussten nachweisen, dass diese Rechenaufgabe von keinem herkömmlichen Computer in angemessener Zeit durchführbar ist, nicht einmal von den schnellsten Supercomputern.

Von allen diesen Aufgaben war die Erste mit Sicherheit die Schwierigste.

Googles Team formiert sich

Seit mehreren Jahren sammelte Google im Bereich Quantencomputer Erfahrung und gründete im Jahr 2013 das Team „AI Quantum“, geführt von dem deutschen Informatiker und langjährigen Google-Mitarbeiter Hartmut Neven. Zuvor war Neven bereits führend am Google Glass Projekt beteiligt.

2014 startete Nevens Team eine Koorperation mit dem bekannten Physiker John Martinis von der University of California, Santa Barbara. Er sollte den Bau eines neuen Quantencomputers leiten. Martinis Gruppe ist führend im Bau von Qubits auf Supraleiterbasis. Das Team sammelte zunächst viel Erfahrung mit einem 9-Qubit Quantencomputer und beschloss dann dieselbe Technologie auf einen wesentlich größeren Quantencomputer zu skalieren.

Im Frühjahr 2018 gab Martinis Gruppe bekannt, dass ein Quanten-Überlegenheits-fähiger Quantencomputer mit dem Namen „Bristlecone“ im Testbetrieb war. Google bezifferte die Größe von Bristlecone auf sagenhafte 72 Qubits! Zu diesem Zeitpunkt besaß der größte Quantencomputer gerade mal eine Größe von 20 Qubits.

Einen solchen gewaltigen Entwicklungssprung hätte wohl niemand für möglich gehalten. Sie erinnern sich: Ein Quantencomputer verdoppelt sein Potential mit jedem zusätzlichen Qubit. Zumindest auf dem Papier besäße Bristlecone damit das 1000 Billionen-fache an Leistungsfähigkeit.

Zu diesem Zeitpunkt schien es schon so, als ob der Nachweis der Quanten-Überlegenheit kurz bevor stehen würde.

Googles Quantencomputer „Sycamore“

Es wurde danach allerdings ruhig um Googles Ambitionen. Zwar baute Google weiter seinen „Stack“ aus und veröffentlichte die Programmierschnittstelle „Cirq“ für die Fernsteuerung von Quantencomputern auf Python-Basis. Außerdem erarbeitete das Team um Neven und Martinis eine Reihe interessanter, wissenschaftlicher Ergebnisse zum Quanten-Hardwarebau und zu Quanten-Algorithmen (teilweise verweise ich in anderen Artikeln darauf). In Sachen Quanten-Überlegenheit gab es aber zunächst nichts Neues.

Einen kleinen Eindruck von den Hardware-Problemen, mit denen Googles Team in dieser Zeit wohl zu kämpfen hatte, erhält man in Alan Ho‘s Vortrag auf der Konferenz „Quantum For Business 2018“ im Dezember 2018 vii, in dem der Google-Mitarbeiter die anderen Hersteller unter anderem zu einer engeren Kooperation aufruft.

Vielleicht aufgrund dieser „Durststrecke“ beschloss das Team wohl irgendwann ein Downsizing von Bristlecone vorzunehmen. Der neue Quantencomputer bekam den Namen „Sycamore“ und besitzt eine Größe von 53voll funktionsfähigen Qubits, die schachbrettartig auf einem Chip angeordnet sind. Der Quantencomputer wird nahezu bis auf den absoluten Temperatur-Nullpunkt herunter gekühlt. Erst dadurch werden die 53 nichtlinearen Schwing-Schaltkreise des Chips supraleitend und „kondensieren“ zu Qubits mit echten Quanten-Eigenschaften.

Die „Quanten-Gatter“, die elementaren Operationen des Quantencomputers, erzeugt Martinis Gruppe über Mikrowellen-Strahlung. Sycamore ist in der Lage die Quanten-Gatter auf jedes einzelne Qubit über eine externe Steuerelektronik auszuführen, die bei Zimmertemperatur arbeitet. Für die Kalibrierung der einzelnen Quanten-Gatter verwendete Googles Team dieselben Prüfroutinen, die auch für den Nachweis der Quanten-Überlegenheit zum Tragen kamen (mehr dazu weiter unten).

Um die Kopplungen unter den Qubits herstellen zu können, benötigt ein Quantencomputer generell zusätzlich jeweils ein Zwei-Qubit-Quanten-Gatter.

In einem Quantencomputer sind hierfür normalerweise gewisse Gatter mit dem Namen „CNOT“, „CZ“ oder „iSWAP“ vorgesehen, die Qubit B nur in Abhängigkeit vom Zustand im Qubit A verändern. Die Gruppe um John Martinis wählte hierfür einen anderen Weg: Die Forscher passten neue, quasi gemischte Gatter speziell auf die reale Physik von Sycamore an. Über eine Lernalgorithmen ermittelten sie dabei den entsprechenden Mischungsgrad für jede einzelne 2-Qubit-Kopplung.

Die Rechenaufgabe: „Random Quantum Circuit Sampling“

Bereits mit dem 9-Qubit-Quantencomputer sammelte die Gruppe um John Martinis Erfahrungen mit einer sehr speziellen Rechenaufgabe, die als aussichtsreicher Kandidat für den Nachweis der Quanten-Überlegenheit in Frage kam viii.

Die Grundidee zu der Aufgabe ist eigentlich ziemlich naheliegend und geht auf Richard Feynmans Grundgedanken zurück, der überhaupt zur Entwicklung der Quantencomputer führte: Gehen wir einmal davon aus, dass ein herkömmlicher Computer ein reines Quantensystem ab einer gewissen Größe nicht mehr simulieren bzw. berechnen kann. Das würde insbesondere auch bedeuten, dass ein herkömmlicher Computer bestimmte Quantenprogramme auf einem genügend großen Quantencomputer nicht mehr simulieren kann. Diese Quantenprogramme müssten nur hinreichend komplex sein, um sicherzustellen, dass das Problem nicht irgendwie Supercomputer-tauglich vereinfacht oder zerlegt werden kann.

Der einfachste Weg dies zu erreichen sind völlig zufällig ausgewählte Qubit-Operationen auf zufällig ausgewählten Qubits. Also ein Quantenprogramm, das durch reinen Zufall zusammengewürfelt wird. Am Ende der Zufallsrechnung werden alle Qubits ausgemessen und eine Reihe von Nullen und Einsen, also eine Bit-Reihe, ist das Ergebnis der Rechnung. Indem die Messung mehrmals hintereinander für dasselbe Quantenprogramm wiederholt wird, ergibt sich eine Liste von Bit-Reihen. Irgendwann wird die Liste so lang, dass sich einzelne Reihen verschieden oft wiederholen. Die Wiederholungen sind zwar zufällig, sie sind aber nicht gleichverteilt! Genau diese unterschiedlichen Häufigkeiten, mit der die verschiedenen Reihen gemessen werden, charakterisiert gerade das jeweilige Quantenprogramm.

Das Verfahren nennt sich „Random Quantum Circuit Sampling“. Die Idee ist so einfach wie genial, die Durchführung natürlich eine Herkulesaufgabe. Warum diese Berechnung für herkömmliche Computer so schwer ist, erläutere ich Ihnen übrigens nochmal ganz am Ende dieses Artikels.

Traurigerweise erhalten wir am Ende nur Reihen von zufällig ausgewählten Nullen und Einsen. Leider total nutzlos!

Oder wer würde sich schon für völlig zufällige Bit-Reihen interessieren?

Höchstens vielleicht die Webseite www.random.org.

Moment mal!

Wieso zum Henker gibt es eigentlich eine Seite wie random.org?

Ein reales Anwendungsgebiet: Quantenzertifizierte Zufallszahlen

So oder so ähnlich stellte der bekannte Computerwissenschaftler Scott Aaronson von der University of Texas, in der ihm unnachahmlichen Weise, sein Protokoll für „quantenzertifizierte“ Zufallszahlen im Jahr 2018 vor. Aaronson überraschte die Fachwelt mit einem Vortrag über das Sampling von Zufallsschaltungen ix. Darin skizzierte er sein Protokoll, das speziell für die erste Generation von Quanten-Überlegenheit-fähigen Quantencomputer zugeschnitten ist.

Es stellt sich heraus, dass verlässliche Zufallszahlen tatsächlich von Wert sind.

Von erheblichem Wert.

Zufallszahlen sind für viele Algorithmen und für viele Bereiche in der Informatik essentiell wichtig: Insbesondere für die Kryptographie. Nicht zuletzt durch den NSA-Skandal wurde offensichtlich, dass kompromittierte Zufallszahlen für die Übertragungssicherheit ein reales Problem sind. Aaronsons quantenzertifizierte Zufallszahlen besitzen die erstaunliche Eigenschaft, dass diese nachweislich echte Zufallszahlen sind, selbst wenn das erzeugende System unsicher und der Herausgeber nicht vertrauenswürdig ist.

Das Herzstück von Aaronsons Protokoll ist gerade die Tatsache, dass die Häufigkeit, mit der eine bestimmte Reihe von Nullen und Einsen vorliegt, einer Quantenverteilung gehorchen muss. Diese Verteilung, so argumentiert Aaronson, kann ab einer gewissen Reihen-Größe nicht mehr simuliert oder manipuliert werden. Sie kann nur noch von einem genügend großen Quantencomputer verifiziert werden. Danach wissen wir, dass die Bit-Reihen geradewegs aus einem Quantencomputer stammen und dann müssen es wirklich echte Zufallszahlen sein. Manipulation ist dann tatsächlich ausgeschlossen, weil ein Quantencomputer halt immer echte Zufallszahlen liefert. Sie werden weiter unten nochmal sehen, was ich damit meine (beim Stichwort „XEB-Routine“).

Um einen Eindruck davon zu bekommen, welche Anwendungsgebiete sonst noch in Sycamore schlummern könnten, können Sie übrigens meinen Artikel „Anwendungen für Quantencomputer“ lesen.

Das Finale: Googles Nachweis der Quanten-Überlegenheit

Aber kommen wir endlich zum eigentlichen Kern dieses Artikels.

Google hatte also endlich einen geeigneten Quantencomputer betriebsbereit, der verlässlich genug funktionierte, um die eigentliche Aufgabe zu bewältigen. Eine geeignete Rechenaufgabe hatte das Team ebenfalls ermittelt. Jetzt ließen die Wissenschaftler Sycamore gegen die besten aktuellen Supercomputer antreten.

Zunächst reduzierte die Gruppe um Martinis und Neven die schachbrettartige Anordnung der Qubits auf verschiedene, deutlich kleinere Ausschnitte und ließen den Quanten-Algorithmus laufen. Diese Vereinfachung verfeinerten sie weiter, in dem sie zusätzlich einfache Kopplungen zwischen mehreren Ausschnitten auf dem Qubit-Schachbrett zuließen. Die Liste von Bit-Reihen, die sie so erhielten, verglichen sie mit einer Quanten-Simulation auf einem einfachen herkömmlichen Computer, der die verkleinerte Rechenaufgabe noch bewältigen konnte.

Dafür verglichen die Forscher die Häufigkeit mit der ein einzelnes Bit-Muster im Quantencomputer ausgemessen wurde mit der Häufigkeit, mit der dasselbe Bit-Muster über die Simulation gemessen wurde. Für dieses Benchmark-Verfahren hatten sie bereits zuvor eine spezielle Prüfroutine entwickelt (mit dem schillernden Namen „Cross Entropy Benchmark Fidelity“, kurz „XEB“). Diese XEB-Routine ist so konzipiert, das selbst kleinste Abweichungen in der Häufigkeit große Abweichungen im Benchmark-Ergebnis liefern.

Tatsächlich stimmten die Benchmark-Ergebnisse aber überein.

Dann vergrößerten sie die Ausschnitte auf dem Qubit-Schachbrett nach und nach und wiederholten ihren Vergleich. Schnell wurde die Aufgabe für normale Computer zu aufwendig. Das Team musste Rechenzeit in Googles enormen Datacentern beantragen x.

Zusätzlich ließ das Team eine komplette 53-Qubit-Simulation laufen aber mit vereinfachten Quanten-Schaltungen und verglichen diese wieder mit den Ergebnissen auf Sycamore.

Wieder stimmten die Benchmark-Ergebnisse überein.

Irgendwann müssen sie weitere Hardware miteinbezogen haben: Hier kommt wieder der Supercomputer am Forschungszentrum Jülich ins Spiel, den sie in ihrem Aufsatz auch erwähnen. Am Ende bezogen sie sogar den größten aktuell existierenden Supercomputer mit ein: IBMs „Summit“-Supercomputer im Oak Ridge National Laboratory in den USA. Für die Simulation der Quanten-Rechnung benutzten sie verschiedene „State-Of-The-Art“ -Simulationsverfahren für Quanten-Systeme.

Am Ende zeichnete sich ein deutliches Bild ab.

Bis zu gewissen Ausschnitt-Größen konnten die Supercomputer die Simulation durchführen und kamen zu den gleichen Benchmark-Ergebnissen wie Sycamore. Für größere Ausschnitte konnten sie die Rechenaufgabe nicht mehr bewältigen. Die Quanten-Berechnungen selbst hatten dabei eine Komplexität von bis zu 1113 Ein-Qubit Gattern und 430 Zwei-Qubit Gattern (Sie können sich vorstellen, dass es zu diesen realen Schaltungen noch einiges zu erwähnen gäbe xi).

Um so eine Quanten-Berechnung auf allen Qubits auszuführen und die Qubits eine Millionen mal auszulesen, mit einer Millionen zufälligen 53-Bit-Reihen, benötigte Sycamore 200 Sekunden. Dabei entfiel der Großteil der Zeit auf die Steuerelektronik. Die Rechnung auf dem Quanten-Chip benötigte tatsächlich nur 30 Sekunden.

Für die Simulationen andererseits extrapolierte Googles Team die Rechendauer der vereinfachten Rechenaufgaben auf das gesamte 53-Qubit Schachbrett und kam am Ende zu folgendem Ergebnis:

Die untersuchten Supercomputer hätten für die volle Rechenaufgabe eine Laufzeit 10 000 Jahren benötigt!

„quod erat demonstrandum“

(was zu beweisen war)

Was ist nun mit IBMs Einwand?

Nachdem Googles Vorabversion der Arbeit an die Öffentlichkeit gelangt war, hatten diverse Forscher die Möglichkeit sich mit dem Aufsatz zu beschäftigen. IBMs Forschergruppe für Quantencomputer tat genau dies … und zwar sehr intensiv:

In bester wissenschaftlicher Manier entwickelten sie ein Gegenargument, das Googles Ergebnisse zumindest in Teilen entkräften sollte. Natürlich nicht ganz uneigennützig, denn in Sachen Quantencomputer hatte ihre Gruppe bis zu Googles Veröffentlichung die Nase weit vorn.

Ich will hier einfach mal wiedergeben, was Scott Aaronson, der mit den quantenzertifizierten Zufallszahlen, dazu zu sagen bzw. zu schreiben hat. Nicht nur war er von der Fachzeitschrift „Nature“ für die Prüfung von Googles Arbeit beauftragt gewesen, er ist insbesondere auch ein viel beachteter und interessanter Wissenschaftsblogger xii.

IBM hat vermutlich bewiesen, dass Googles Quantensimulation nicht optimal war. Ihr verbessertes Simulationsverfahren hätte für die Rechenaufgabe mithilfe ihres Supercomputers „Summit“, im Oak Ridge National Laboratory in den USA, nicht 10 000 Jahre, sondern 2 ½ Tage benötigt. Was natürlich ein gewältiger Sprung ist! Und man kann sich das Aufstöhnen von Googles Team in ihrem Gebäude in Santa Barbara (Kalifornien) vorstellen, als ihnen klar wurde, diese Simulations-Alternative übersehen zu haben (tatsächlich hatte John Martinis die Möglichkeit einer besseren Simulation in der Arbeit ausdrücklich erwähnt).

Man muss allerdings Folgendes bemerken:

Der „Summit“ ist ein Supercomputer-Schlachtschiff XXL auf einer Fläche so groß wie zwei Basketballfelder. IBMs Verfahren, das die Gruppe noch nicht ausgeführt sondern hochgerechnet hat, würde die gesamten 250 Petabytes = 250 Mio Gigabyte Festplattenspeicher von Summit benötigen, das Hauptargument ihres verbesserten Verfahrens xiii,und einen gigantischen Energiehunger besitzen.

Googles Sycamore ist im Vergleich dazu eher ein „Schränkchen“ (und das auch nur wegen der ganzen Kühlaggregate). Und nebenbei, selbst mit IBMs Simulation wäre Googles Quantenalgorithmus um einen Faktor 1100 mal schneller (zeitlich). Wenn man anstelle der zeitlichen Dauer die Anzahl von einzelnen Rechenschritten (bzw. FLOPS) vergleicht, wäre Google sogar um einen Faktor 40 Milliardenmal effizienter.

Und auch das IBM-Team leugnet nicht, dass selbst ihr Verfahren einen exponentiellen Aufwand für die Aufgabe besitzt und Googles Quantenalgorithmus eben nicht. D.h. wäre Google in der Lage Sycamore mal eben ein paar zusätzliche Qubits zu spendieren, würde man schnell die wahren Kräfteverhältnisse erkennen: Mit 60 Qubits würde IBMs Verfahren vermutlich 33 Summits benötigen, mit 70 Qubits müsste man eine ganze Stadt mit Summits füllen, …

Aaronson vergleicht diesen wissenschaftlichen Wettstreit mit den Schachpartien zwischen dem Großmeister Gary Kasparow und dem Computer „Deep Blue“ (ironischer Weise übrigens vom Hersteller IBM) Ende der 1990er Jahre. Die besten etablierten Kräfte können im Rennen eventuell noch eine Weile mithalten, bald sind sie aber weit abgeschlagen.

Warum kein Supercomputer diese Berechnung durchführen kann

Das „Quantum Circuit Sampling“ ist übrigens auch ein wunderbares Beispiel um zu verdeutlichen, welchen „Quantenvorteil“ ein Quantencomputer gegenüber herkömmlichen Supercomputern bei solchen Berechnungen hat:

Im Laufe der Berechnung werden die Mess-Wahrscheinlichkeiten der einzelnen 53-Bit-Reihen teilweise weiter verstärkt oder weiter unterdrückt. Am Ende kommt eine charakteristische Häufigkeitsverteilung heraus. Wie könnte ein herkömmlicher Computer solche Aufgaben lösen?

Stellen wir uns dazu ein sehr einfaches und naives Computerprogramm vor, dass sich jede Bit-Reihe zusammen mit ihrer jeweiligen Häufigkeit in einer Tabelle im Arbeitsspeicher merkt. In jedem Programmschritt beeinflussen sich jetzt die verschiedenen Tabelleneinträge gegenseitig, mal mehr und mal weniger.

Wie viele unterschiedliche 53-Bit-Reihen kann es geben? Diese Frage hört sich zunächst harmlos an, die Anzahl ist aber tatsächlich astronomisch hoch: Etwa 10 Millionen * Eine Milliarde, eine Zahl mit 16 Nullen vor dem Komma!

Ein herkömmlicher Computer benötigt weit über 100 Millionen Gigabyte Arbeitsspeicher, um soviele 53-Bit-Reihen zusammen mit ihren Häufigkeiten in Speichervariablen abzulegen … Wie viel Arbeitsspeicher hat übrigens Ihr Computer? 8 Gigabyte, vielleicht 16 Gigabyte? (Schon mal nicht schlecht!)

In jedem Schritt, von insgesamt 20 Schritten, überarbeitet Googles Programm die Messhäufigkeiten jeder Bit-Reihe. Diese hängen im Extremfall jeweils von den Messhäufigkeiten aller Bit-Reihen aus dem vorangegangenem Programmschritt ab. Das wären also 1 Mrd * 1 Mrd * 1 Mrd * 100 000 Abhängigkeiten, eine Zahl mit 32 Nullen vor dem Komma! Wie viele Sekunden würde ein herkömmlicher Computer vermutlich brauchen, um so viele Abhängigkeiten auch nur einmal anzufassen? Als Vergleich: Ein normaler Prozessor kann etwa eine Hand voll Milliarden Operationen in der Sekunde durchführen … und unser Universum ist nicht einmal 1 Mrd * 1 Mrd Sekunden alt.

Ein herkömmlicher Computer wird von so vielen Möglichkeiten und Abhängigkeiten also förmlich erschlagen. Ein Quantencomputer wiederum braucht dafür lediglich diese 53 Qubits und die knapp 1500 Einzelschaltungen. Unglaublich.

Auf den ersten Blick ist übrigens auch klar, dass die Quantensimulationen von Google und IBM, wesentlich ausgefeilten gewesen sein mussten als unser naives Beispielprogramm.

Nebenbei: Die Strategie der exponentiellen Komplexität verfolgen auch weitere Algorithmen für Quantencomputer der NISQ-Ära: Z.B. für die Quanten-Chemie, für Optimierungsprobleme oder für Quanten-Neuronale Netze (dort spricht man von „Variational Quantum Algorithms“). Das „Random Quantum Circuit Sampling“ ist der Kandidat, bei dem dies jetzt als erstes auch erwiesenermaßen zu einem exponentiellen Erfolg führte.

Ein verpasster „Mond-Lande-Moment“ für Googles Team?

Ohne Zweifel war der wissenschaftliche Paukenschlag auch als medialer Paukenschlag geplant. Zwischendurch wurde Google dann durch die Ereignisse überholt, was irgendwie nicht verwundert, wenn man bedenkt, wie viele Personen eingeweiht waren.

Am Ende soll das die Leistung von Googles Team nicht schmälern: Die Gruppe um John Martinis und Hartmut Neven hat mit ihrem Nachweis der Quanten-Überlegenheit wohl Technik-Geschichte geschrieben.

Scott Aaronson schrieb dazu bereits Ende September in seinem Blog xiv:

„The world, it seems, is going to be denied its clean “moon landing” moment, wherein the Extended Church-Turing Thesis gets experimentally obliterated within the space of a press conference … Though the lightning may already be visible, the thunder belongs to the group at Google, at a time and place of its choosing.“

Fußnoten

i https://www.fz-juelich.de/SharedDocs/Pressemitteilungen/UK/DE/2019/2019-07-08-quantencomputer-fzj-google.html: Pressemitteilung vom Forschungszentrum Jülich über die Zusammenarbeit mit Google

ii https://drive.google.com/file/d/19lv8p1fB47z1pEZVlfDXhop082Lc-kdD/view: „Quantum Supremacy Using a Programmable Superconducting Processor“, der 12-seitige Hauptaufsatz von Googles Team. Dieses Dokument stand kurzzeitig auf der NASA Webseite. Den 55-seitigen Zusatzaufsatz mit allen Detailinformationen (den „supplementary information“) finden Sie über https://drive.google.com/file/d/1-7_CzhOF7wruqU_TKltM2f8haZ_R3aNb/view. Ein paar interessante Diskussionen zu dem Aufsatz finden Sie auf Quantumcomputing-Stackexchange https://quantumcomputing.stackexchange.com/questions/tagged/google-sycamore

iii https://www.nature.com/articles/s41586-019-1666-5: „Quantum Supremacy Using a Programmable Superconducting Processor“, der endgültig veröffentlichte Artikel von Google

iv https://arxiv.org/abs/1203.5813: wissenschaftliche Arbeit von John Preskill „Quantum computing and the entanglement frontier“, der den Begriff „Quanten-Überlegenheit“ prägte. Die Wortwahl wurde zwar allgemein übernommen aber aus offensichtlichen Gründen immer wieder kritisiert. In seinem kürzlich erschienen Gastkommentar auf Quantamagazine geht er nochmal darauf ein https://www.quantamagazine.org/john-preskill-explains-quantum-supremacy-20191002/.

v https://de.wikipedia.org/wiki/Church-Turing-These#Erweiterte_Churchsche_These: Die Erweiterte Church-Turing-These besagt, dass sich zwei universelle Rechenmaschinen in allen Fällen gegenseitig effizient simulieren können (genauer gesagt: Mit nur „polynomialem“ Rechenaufwand).

vi https://de.wikipedia.org/wiki/Br%C3%Bcder_Wright#Der_Weg_zum_Pionierflug: Wikipedea-Artikel über die Wright-Brüder und ihre Pionierarbeit für die Luftfahrt.

vii https://www.youtube.com/watch?v=r2tZ5wVP8Ow: Vortrag „Google AI Quantum“ von Alan Ho auf der Konferenz „Quantum For Business 2018“

viii https://arxiv.org/abs/1709.06678: wissenschaftliche Arbeit von John Martinis et al „A blueprint for demonstrating quantum supremacy with superconducting qubits“

ix https://simons.berkeley.edu/talks/scott-aaronson-06-12-18: Vortrag „Quantum Supremacy and its Applications“ von Scott Aaronson zu seinem Protokoll für „quantenzertifizierte“ Zufallszahlen.

x https://www.quantamagazine.org/does-nevens-law-describe-quantum-computings-rise-20190618/: Artikel auf Quantamagazine, den man als Ankündigung für Googles Nachweis interpretieren kann. Darin wird übrigens auch „Nevens-Law“, eine Quantencomputer-Variante von Moores-Law, erwähnt: Darin geht Hartmut Neven von einer doppelt-exponentiellen Steigerung der Quantencomputer-Entwicklung aus.

xi Googles Team wählte für die zufälligen 1-Qubit-Schaltungen einen speziellen Satz von Quanten-Gattern, der möglichst klein war aber trotzdem „simulationsfreundliche“ Schaltungen vermied. Näheres dazu in https://quantumcomputing.stackexchange.com/questions/8337/understanding-googles-quantum-supremacy-using-a-programmable-superconducting-p#answer-8377. Die 2-Qubit-Schaltungen waren in Googles Experiment tatsächlich nicht zufällig ausgewählt, sondern folgten einer festgelegten Reihenfolge, die sich aber anscheinend auch wieder als nicht-simulationsfreundlich erwies: https://quantumcomputing.stackexchange.com/questions/8341/understanding-googles-quantum-supremacy-using-a-programmable-superconducting-p#answer-8351. Auch wenn sich diese Kopplungen wiederholten: Unterm Strich bleibt Googles Qubit-Schaltung eine zufällige Schaltung.

xii Scott Aaronson‘s aktuellen Blogeintrag https://www.scottaaronson.com/blog/?p=4372, in dem der Forscher zu IBMs Gegenargument Stellung bezieht.

xiii https://www.ibm.com/blogs/research/2019/10/on-quantum-supremacy/: Blogeintrag zu IBMs verbesserten Simulationsverfahren: Google war davon ausgegangen, dass man für eine verbesserte Simulation einen Supercomputer mit einem astronomischen RAM-Bedarf benötigen würde. Da so ein Rechner nicht existiert, wählte Google ein ungünstigeres Simulationsverfahren, das den fehlenden RAM mit einer längeren Laufzeit kompensiert. IBMs Hauptargument ist nun, dass Summit zwar nicht über solch einen astronomischen RAM, dafür aber über astronomischen Festplattenplatz verfügt. Deshalb könne auch das günstigere Simulationsverfahren verwendet werden.

xiv https://www.scottaaronson.com/blog/?p=4317: „Scott’s Supreme Quantum Supremacy FAQ!“ Blogeintrag von Scott Aaronson zum Nachweis der Quanten-Überlegenheit. Nebenbei ist seine gesamte Webseite eine Goldgrube für jeden, der mehr über Quantencomputer erfahren will (und wie Sie hier sehen können, von mir entsprechend oft zitiert).

Anwendungen für Quantencomputer

<< >>

Erste Quantencomputer Anwendungen: Ein goldenes Zeitalter?

Glaubt man Seth Lloyd vom Massachusetts Institute of Technology / MIT, steht die Quantencomputer-Szene gerade kurz vor einem goldenen Zeitalter. Seth Lloyd bezeichnet sich selbst als „Quantum Mechanic“, ist einer der Gründerväter der Quantencomputer-Forschung und seit über 25 Jahren ein führender Theoretiker in dem Bereich. Nebenbei sind seine Vorlesungen und Vorträge einfach immer sehr unterhaltsam i (Gerne gibt Lloyd z.B. die steile These zum besten, dass der Finanzcrash von 2009 durch die verkopften Transaktions-Algorithmen von einem Haufen arbeitsloser Superstring-Theoretikern verursacht wurde, und dass dass die Forscher für Quantencomputer die Sache mit der Weltwirtschaft jetzt zu Ende zu bringen werden).

Lloyd erzählt, dass die Forschung an Quantencomputern gerade mal mit einer handvoll Wissenschaftlern begann. Heute sind es Zehntausende, die die Entwicklung in dem Bereich regelrecht beflügeln. Im Jahr 1985 wurde der erste Quanten-Algorithmus von David Deutsch vorgestellt, der für eine spezielle Aufgabe weniger Rechenschritte benötigte, als ein herkömmlicher Computer. In den Jahrzehnten seitdem wurde eine Vielzahl an faszinierenden Quanten-Algorithmen für viele Anwendungen entwickelt, die die herkömmlichen Programme für dieselbe Anwendung meilenweit hinter sich lassen und exponentielle Rechenbeschleunigungen erzielen können.

Diese existieren aber bislang nur auf dem Papier. Was bislang fehlte war die zugehörige Hardware.

Letztere ist langsam verfügbar. Diverse Tech-Firmen arbeiten an Cloud-Angeboten für ihre Quantencomputer. An öffentlichen Einrichtungen wird die Forschung an größere und verlässlicheren Quantencomputern ebenfalls weiter vorangetrieben.

Lloyd vergleicht die aktuelle Entwicklung mit der Gründerzeit der ersten Digitalcomputer. Das Konzept für die herkömmlichen Digitalcomputer wurde in den 1930er Jahren von Claude Shannon in seiner Masterarbeit, ebenfalls am MIT, vorgestellt (die Arbeit von Shannon wurde später als die „einflussreichste Masterarbeit des 20. Jahrhunderts“ bezeichnet ii).

Konrad Zuse entwickelte während des 2. Weltkriegs erste Prototypen. Bis in die 1950er Jahre waren mehrere erste Computermodelle verfügbar. Diese waren sehr limitiert, riesengroß und fehleranfällig, Aber allein diese Verfügbarkeit legte den Grundstein für die Entwicklung einer Vielzahl von grundlegenden Algorithmen, die auch heute noch verwendet werden.

Laut Seth Lloyd ist die Situation mit den ersten Quantencomputern heute sehr ähnlich. Sie sind aufwendig im Betrieb, besitzen nur wenige Dutzend Qubits und sind besonders noch sehr fehleranfällig. Aber sie können genutzt werden. Das öffnet die Tür erstmals praktische Erfahrungen mit der neuen Technologie zu sammeln.

Viele Algorithmen und Anwendungen für herkömmliche Computer wurden eben über solche Erfahrungen entwickelt. Wir können erwarten, dass dies für Quantencomputer auch zutreffen wird. Erste Kandidaten für solche heuristische Methoden gibt es bereits.

NISQ: Die ersten Generationen von Quantencomputern

Anlässlich seiner Keynote-Rede zu der Konferenz „Quantum Computing For Business 2017“ fand John Preskill vom California Institute of Technology (Caltech) einen passenden Begriff für die erste Ära von Quantencomputern: „Noisy intermediate scale quantum computer“ NISQ iii. John Preskill ist einer der führenden Kopfe hinter der Quantencomputer-Entwicklung und trifft in seinen Vorträgen oft den Nagel auf den Kopf: „Fehleranfällige, mäßig skalierte Quantencomputer“.

Damit meint Preskill Quantencomputer mit etwa 50 – wenigen 100 Qubits. Insbesondere sind die Quantencomputer der NISQ-Ära nicht in der Lage eines der Kernkonzepte für Quantencomputer umzusetzen: Die Quanten-Fehlerkorrektur für die äußerst störanfälligen Qubits. Ohne die Quanten-Fehlerkorrektur können Quantencomputer keine umfangreichen Quanten-Algorithmen ausführen. Und das betrifft aktuell fast alle Quanten-Algorithmen. Die Fehlerrate von aktuellen Quanten-Gattern, also elementaren Qubit-Schaltungen, liegt bei 1:100 bis zu 1:1000. Das liegt um viele Größenordnungen über der Fehlerrate von herkömmlichen Computern.

Die ersten Anwendungen von NISQ-Quantencomputer müssen diese Einschränkungen also berücksichtigen.

Quantencomputer Anwendung: Eine Einstufung der Algorithmen

Ein Jahr nach Preskills Vortrag hielt Adam Bouland an gleicher Stelle einen sehr guten Vortrag auf der Konferenz „Quantum Computing For Business 2018iv. Darin stellte er verschiedene bekannte Quanten-Algorithmen für diverse Anwendungen vor. Bouland stufte die Algorithmen in zwei Kriterien ein:

  1. Beschleunigung: Der Grad an Beschleunigung gegenüber herkömmlichen Computer (bzw. die Beschleunigung gegenüber den besten bekannten Algorithmen für herkömmliche Computer für dieselbe Anwendung)
  2. Verfügbarkeit: Der Zeitpunkt, wann dieser Algorithmus vermutlich verfügbar sein wird

Verfügbarkeit

Beschleunigung

Kurzfristig (NISQ)

Langfristig

Riesig

(exponentiell)

Moderat

(z.b. quadratisch)

Unbekannt

 

Diese Einteilung finde ich so sinnvoll, dass ich sie für diesen Artikel ebenso verwenden werde. Genauso werde ich einige Inhalte aus seinem Vortrag übernehmen.

Quantencomputer Anwendung: Eine Übersicht

Quantencomputer werden in absehbarer Zukunft vermutlich nur für besonders rechenintensive Probleme eingesetzt werden, deren Lösungen aber besonders wertvoll sein können. Zu den absehbaren Anwendungen zählen zum Beispiel:

        1. Simulationen für Natur- und Ingenieurswissenschaften (Physik, Materialforschung, Quanten-Chemie, Quanten-Biologie)
        2. Optimierung (Logistik, Finanzwirtschaft, …)
        3. Künstliche Intelligenz und Machine Learning
        4. IT-Beratung
        5. Kryptographie
        6. Energieeinsparung

Diese werde ich im Folgenden genauer vorstellen.

Quantencomputer Anwendung „Simulationen für Naturwissenschaften“

Verfügbarkeit

Beschleunigung

Kurzfristig (NISQ)

Langfristig

Riesig

(exponentiell)

Hamiltonische Simulation

Moderat

(z.b. quadratisch)

Unbekannt

VQE

 

1982 beendete der geniale Richard Feynman einen berühmten Aufsatz mit den ebenfalls berühmten Worten: „Nature isn’t classical, dammit, and if you want to make a simulation of nature, you’d better make it quantum mechanical, and by golly it’s a wonderful problem, because it doesn’t look so easy.“ v .

Quantencomputer Anwendung „Hamiltonische Simulation“

1996 bewies Seth Lloyd, dass jede solcher Simulationen prinzipiell und effizient mit einem Quantencomputer durchgeführt werden können vi. Diese Art von Berechnungen werden „Hamiltonische Simulationen“ genannt. Sie berechnen die Dynamik, also den zeitlichen Verlauf, von beliebigen Quantensystemen, welche generell durch den sogenannten Hamilton-Operator charakerisiert sind (daher der Name). Hamiltonische Simulationen gehören zu den schwersten Berechnungen, die ein Quantencomputer effizient durchführen kann. Herkömmliche Supercomputer können dies erwiesenermaßen genau nicht.

Hinter vielen möglichen Anwendungen für Quantencomputer stehen noch offene Fragezeichen, inwieweit bekannte Einschränkungen und Nebenbedingungen in der Praxis einmal überwunden werden können. Es herrscht aber generelle Einigkeit, dass die sagenumwobenen Heilsversprechen von Quantencomputern auf jeden Fall für die Hamiltonische Simulation zutreffen werden.

Quantencomputer Anwendung „Synthetisierung von Ammoniak“

Eine spannende Anwendung für die Hamiltonische Simulation, die bereits im Detail auf ihre Anwendbarkeit untersucht wurde, ist die „Synthetisierung von Ammoniak“:

Im Jahr 1913 wurde das Haber-Bosch-Verfahren zur Synthetisierung von Ammoniak zum ersten Mal großindustriell eingeführt. Seitdem ist es das weltweit dominierende Verfahren für die Herstellung von Düngemitteln. Es benötigt allerdings eine Hitze von 400° Celsius und einen Druck von 200 Bar. Etwa 1-2% des weltweiten Energiebedarfs wird jährlich nur in das Haber-Bosch-Verfahren gesteckt.

Pflanzen und Pilze hingegen synthetisieren Ammoniak bei 20° Celsius und einem Druck von 1 Bar, dem Atmosphärendruck. Forscher konnten die zentralen Reaktionen hierfür zwar lokalisieren allerdings nicht detailliert verstehen. Die notwendigen Quantensimulationen sind schlichtweg zu komplex, als das sie von einem herkömmlichen Supercomputer berechnet werden könnten.

Quantencomputer wären über die Hamiltonische Simulation dazu allerdings in der Lage vii. Allerdings wohl leider nicht in der NISQ-Ära.

Quantencomputer Anwendung „VQE“ – Variational Quantum Eigensolver

Die Anwendung „Hamiltonische Simulation“ übersteigt also wohl die Möglichkeiten für Quantencomputer der NISQ-Ära. Gibt es andere mögliche Anwendungen für Quantensimulationen, die auf der aktuellen Hardware umgesetzt werden können?

Eine wichtige Fragestellung für Quantensysteme ist die Frage nach den nach den Bindungsenergien des Systems und den Atom- bzw. Molekül-Orbitalen.

2014 wurde der neue Quanten-Algorithmus „Variational Quantum Eigensolver“ von Peruzzo und McClean vorgestellt viii ix. Er wurde speziell für die Quantencomputer der NISQ-Arä konzipiert. VQE ist im Grunde ein Optimierungs-Algorithmus und insbesondere ein Quanten-klassischer Hybrid-Algorithmus:

      1. Die Qubits werden so eingestellt, dass sie einen Orbital-Kandidaten darstellen.
      2. Mit diesem Kandidaten ermittelt der Quantencomputer die Bindungsenergie des Moleküls. Mit einem Quantencomputer sollte dies effizient durchführbar sein. Da diese Messung immer auch eine Sache von Wahrscheinlichkeiten ist, wird sie mehrmals durchgeführt und der kleinste Wert verwendet.
      3. Über einen herkömmlichen Computer wird ein neuer Orbital-Kandidat anhand des bisherigen Optimierungsverlaufs berechnet x.
      4. Jetzt beginnt der Algorithmus wieder bei Schritt 1. Diesmal mit dem neuen Orbital-Kandidaten. Der Algorithmus endet dann, wenn z.B. die niedrigste Bindungsenergie gefunden wurde.

Der Grundgedanke des Variational Quantum Eigensolver ist, dass ein Quantencomputer in der Lage ist auch kompliziert verschränkte Quantenzustände herzustellen und mit ihnen zu rechnen. Und gerade solche Orbitale liegen in Molekülen vor. Für einen herkömmlichen Computer wird dies normalerweise schnell exponentiell zu aufwendig.

Dadurch dass der Variational Quantum Eigensolver über die Optimierung sowieso ständig nachjustiert, ist der Algorithmus auch einigermaßen immun gegen Schaltungs- und Qubit-Fehler.

Der Variational Quantum Eigensolver hört sich in der Theorie sehr erfolgversprechend an. Tatsächlich kann aktuell aber niemand mit Sicherheit sagen, ob der VQE tatsächlich eine Beschleunigung bringt, geschweige denn, dass diese beziffert werden könnte. Hier müssen noch viele Erfahrungswerte gesammelt werden. So zeigt sich z.B. dass nicht jeder klassische Optimierungs-Algorithmus im Schritt 3 gleich gut für den Variational Quantum Eigensolver geeignet ist xi

Um den VQE-Algorithmus hat Google das Opensource-Framework „OpenFermion“ für Quantenchemie erstellt. Jarrod McClean, einer der Entwickler des Variational Quantum Eigensolvers, wurde mittlerweile von Google angeworben. Es zeigt sich, dass die Tech-Riesen vermehrt gerade mit solchen Wissenschaftlern eng zusammenarbeiten, die sich einen Namen für Anwendungen von NISQ-Quantencomputern gemacht haben.

Quantencomputer Anwendung „Optimierung“

Der Optimierung widme ich auf quantencomputer-info.de einen eigenen Artikel. Deshalb stelle ich die drei Algorithmen hier nur in Kürze vor:

Verfügbarkeit

Beschleunigung

Kurzfristig (NISQ)

Langfristig

Riesig

(exponentiell)

Moderat

(z.b. quadratisch)

Grover

Unbekannt

QAA

QAOA

 

Quantencomputer Anwendung: Der Grover-Algorithmus

Der Grover-Algorithmus ist ein universeller Suchalgorithmus, der sämtliche Lösungskandidaten ausprobiert und testet, ob sie das Problem lösen. Daran können Sie sehen, dass der Grover-Algorithmus ein unheimlich breites Feld an Anwendungen besitzt, unter anderem bei Optimierungsproblemen.

Der Grover-Algorithmus besitzt eine quadratische Beschleunigung gegenüber herkömmlichen Suchalgorithmen. In der Anwendung benötigt er aber wohl zu viele Quantengatter, weshalb er wohl nicht für Quantencomputer der NISQ-Arä verwendet werden kann.

Quantencomputer Anwendung „QAA“ – Quantum Adiabatic Algorithm

Grundlage des QAA ist das Adiabatischen Theorem der Quantenmechanik aus dem Jahr 1928.

Der Quantum Adiabatic Algorithm wird hardwareseitig durch den Quanten Annealer von D-Wave realisiert und kann dort bereits heute schon eingesetzt werden. Aus diesem Grund ordne ich ihn als „kurzfristig verfügbar“ ein.

Auf universellen Quantencomputern ist der Quantum Adiabatic Algorithm eine Anwendung der Hamiltonischen Simulation (s.o.). Deswegen wird der QAA auf NISQ-Quantencomputern zunächst nur in einer abgewandelten Form eingesetzt werden. Ein Beispiel hierfür ist gerade der QAOA:

Quantencomputer Anwendung „QAOA“ – Quantum Approximate Optimization Algorithm

Wie der Quantum Variational Eigensolver ist der Quantum Approximate Optimization Algorithm ein Quanten-klassischer Hybrid-Algorithmus:

      1. Die Qubits werden so eingestellt, dass sie einen Kandidaten für die Lösung des Optimierungsproblems darstellen.
      2. Mit diesem Kandidaten ermittelt der Quantencomputer die Kostenfunktion des Problems. Mit einem Quantencomputer sollte dies effizient durchführbar sein. Da diese Messung immer auch eine Sache von Wahrscheinlichkeiten ist, wird sie mehrmals durchgeführt und der beste Wert verwendet.
      3. Über einen herkömmlichen Computer wird ein neuer Kandidat für die Lösung des Problems anhand des bisherigen Optimierungsverlaufs berechnet.

Das Team um Edward Farhi gibt außerdem vor, wie die Lösungskandidaten ermittelt werden. Sie sind nichts anderes als eine Parametrisierung des adiabatischen Pfades im QAA. Nach Farhi ist das ein Indiz dafür, dass dieser Lösungsansatz zum Ziel führt.

Quantencomputer Anwendung „Künstliche Intelligenz und Machine Learning“

Der Künstliche Intelligenz und dem Machine Learning widme ich ebenfalls auf quantencomputer-info.de einen eigenen Artikel. Hier stelle ich die Kernaussagen meines Artikels nur kurz vor:

Zwei Schwerpunkte der Künstlichen Intelligenz und des Machine Learnings werden im Rahmen der Quantencomputer-Forschung genauer untersucht:

      • Unsupervised Machine Learning, unüberwachtes Maschinelles Lernen: Sucht nach Zusammenhängen und Gruppen in Rohdaten, ohne dass zusätliche Informationen dazu bekannt wären. Die Rohdaten werden auf das „Wesentliche“ beschränkt. Nicht zuletzt ermittelt das Unsupervised Machine Learning dabei, was das „Wesentliche“ in dem Zusammenhang überhaupt heißt.
      • Supervised Machine Learning, überwachtes Maschinelles Lernen: Bekannte und bereits beurteilte Daten werden verwendet, um neue unbekannte Daten zu beurteilen. Das „Deep Learning“ mit Neuronalen Netzwerken, das in aller Munde ist, gehört z.B. in diese Kategorie (z.B. für die Gesichter- oder für die Spracherkennung, …).

Für das Unsupervised Machine Learning wurden seit 2008 eine Reihe von Quanten-Algorithmen entwickelt, die eine exponentielle Beschleunigung versprachen. Viele dieser Algorithmen basieren auf der Tatsache, dass die Lineare Algebra (die Mathematik von Zeigern bzw. Vektoren) in Quantencomputer quasi von Natur aus eingebaut sind. Und zwar exponentiell effizient!

Im Sommer 2018 kam dann der Paukenschlag: Die junge Studentin Ewin Tang wies der kompletten Forschergemeinde nach, dass einige diese Algorithmen deutlich unspektakulärer sind als allgemein angenommen. Mehr verrate ich an dieser Stelle nicht.

Die Anwendung des zweiten Schwerpunktes der Künstlichen Intelligenz mit Quantencomputern, dem Supervised Machine Learning, wurde bis heute weit weniger detailliert untersucht. Dafür fing die Forschung in den letzten Jahren gezielt an, Strategien für Quanten-Neuronale-Netzwerke mit NISQ-Quantencomputern zu entwickeln.

Die Algorithmen nutzen unter anderem die Erkenntnisse aus, die bereits zur Entwicklung des QAOA- und des QAA-Algorithmus geführt haben (s. oben). Das Hauptargument für die Quanten-Neuronale-Netzwerke ist Folgendes: Quantencomputer sind selbst so etwas wie „Netzwerke auf Stereoide“. Sie besitzen Möglichkeiten, die für herkömmliche Netz-Strukturen nicht denkbar wären (wie die Quanten-Verschränkung). Der Schluss liegt nahe, dass sich hierbei ein Mehrtwert für das Deep Learning erzeugen lässt.

Quantencomputer Anwendung „IT-Beratung“

Aktuelle Quantencomputer sind noch nicht in der Lage interessante Anwendungen zu ermöglichen. Das könnte sich sogar noch in der NISQ-Ära ändern und möglicherweise sehr abrupt. Es gibt Hinweise, dass auch für Quantencomputer eine Art „Moores Law“ zutreffen könnte xii, das die Beschleunigungszyklen von herkömmlichen Computern lange Zeit zutreffend beschrieb. Mögliche Quanten-Algorithmen hierfür habe ich Ihnen in diesem Artikel vorgestellt. Firmen, die auf Highend-Algorithmen angewiesen sind, können sich in der Regel nicht erlauben, eine Entwicklung mit so viel Potential zu verpassen. Um aber auch nur erste Gehversuche in der Quantencomputer-Welt zu machen, ist allerdings so spezielles Knowhow notwendig, dass selbst Firmen mit viel IT-Erfahrung ohne Unterstützung nicht aus den Startlöchern herauskommen werden. Dazu müssen Sie sich zwingend mit der aktuellen Forschung zu den jeweiligen Quanten-Algorithmen auseinandersetzen, die ich z.B. in diesem Artikel vorgestellt habe.

Die Hersteller der Quantencomputer wissen das natürlich und begleiten hier durch die ersten Gehversuche. D-Wave betreute bis Ende 2018 etwa 150 Kundenprojekte. Zusätzlich haben sich zwei Startups einen Namen gemacht, die sich darauf spezialisieren, den zukünftigen Markt für Softwarelösungen herstellerunabhängig auszuloten und Knowhow im Quantencomputing zu entwickeln und zu bündeln: Die Vancouver Firma 1QBit und QCWare aus dem Silicon Valley.

Ich gehe davon aus, dass sowohl die Kunden als auch die nordamerikanischen Firmen früher oder später erkennen, dass sie auch auf IT-Beratung in Deutschland bzw. Europa angewiesen sind:

      • Für Einführungsveranstaltungen, um überhaupt einen Eindruck von der Technologie und den aktuellen Möglichkeiten zu vermitteln
      • Als Schnittstelle zwischen Hersteller und Kunden, die beide Sprachen spricht und besser verfügbar sind
      • Als Experte um Projekte direkt eigenverantwortlich auf den Cloudangeboten umzusetzen

Fußnoten

i https://www.youtube.com/watch?v=5xW49CzjhgI: Vortrag von Seth Lloyd „The Future of Quantum Computing“.

ii Das Hauptwerk von Shannon sollte später allerdings die moderne Informationstheorie werden, die er im Alleingang entwickelte und die auch die Vorlage für die Quanten-Informationstheorie wurde. Claude Shannon war ohne Zweifel einer der prägendsten Wissenschaftlern des 20. Jahrhunderts.

iii https://arxiv.org/abs/1801.00862: „Quantum Computing in the NISQ era and beyond“, Vortragvorlage von John Preskill zur Konferenz „Quantum Computing For Business“ in 2017.

iv https://www.youtube.com/watch?v=PJRatgm8sL0: „The Quantum Algorithms: The NISQ Landscape“, Vortrag von Adam Bouland auf der Konferenz „Quantum for Business 2018“

vhttps://people.eecs.berkeley.edu/~christos/classics/Feynman.pdf: „Simulating Physics with Computers“ Artikel von Richard Feynman

vi https://science.sciencemag.org/content/273/5278/1073: „Universal Quantum Simulator“, Artikel von Seth Llyod

vii http://www.pnas.org/content/early/2017/06/30/1619152114: Wissenschaftlicher Artikel u.a. von Krysta Svore, Matthias Troyer (Microsoft) „Elucidating reaction mechanisms on quantum computers“

viii https://www.youtube.com/watch?v=w7398u8G588: Vortrag von Jarrod McClean: „Quantum Computation for the Discovery of New Materials and […]“

ix https://arxiv.org/abs/1509.04279: „The theory of variational hybrid quantum-classical algorithms“ Fachartikel von Jarrod McClean et al.

xDie Orbital-Kandidaten sind dafür über vorher festgelegte Kriterien parametrisiert. z.B. : Drehe Qubit 1 um Winkel 1, drehe Qubit 2 um Winkel 2, verschränkte Qubit 5 und Qubit 6 um den Faktor 3, … Diese Parameter (Winkel 1, 2, …) werden im weiteren Verlauf anhand von klassischen Algorithmen weiter optimiert (z.B. „Gradient Descent“, Nelder und Mead‘s „Simplex-Verfahren“, …).

xi https://quantumcomputing.stackexchange.com/questions/6562/how-to-implement-nm-algorithm-for-variational-quantum-eigensolver: Antwort von Jarrod McClean zu dem Thema „Optimierer für den VQE“ auf Quantum Computing Stack Exchange

xii https://www.quantamagazine.org/does-nevens-law-describe-quantum-computings-rise-20190618/: Artikel „Does Neven’s Law Describe Quantum Computing’s Rise?“ auf Quantamagazin, das Quantencomputern sogar eine Turbo-Version von Moores Law in Aussicht stellt, weil jedes weitere Qubit die Leistungsfähigkeiten eines Quantencomputers sowieso bereits verdoppelt (zumindest auf dem Papier). Ähnlich geht Bo Ewald von D-Wave davon aus, dass die Anzahl von Qubits in D-Waves Quanten Annealer alle zwei Jahre verdoppelt werden kann: https://www.youtube.com/watch?v=UywYeMl30EM

Künstliche Intelligenz und Machine Learning mit Quantencomputern

<<   >>

Künstliche Intelligenz und Machine Learning mit Quantencomputern: Nur ein Superhype?

Künstliche Intelligenz und Machine Learning sind in aller Munde. Unser Alltag wird immer mehr durch sie bestimmt, sowohl im Offensichtlichen als auch im Verborgenen. Viele Branchen können sich gar nicht mehr erlauben Investitionen in Künstliche Intelligenz und Machine Learning zu ignorien. Staaten treiben mit Milliarden an Fördergeldern die Erprobung neuer Möglichkeiten voran i, und große gesellschaftliche Umbrüche stehen uns bevor.

Mit anderen Worten: Künstliche Intelligenz und Machine Learning ist vielleicht das Hype-Thema unserer Tage schlechthin.

Einer anderen Technologie, die ein gewaltiges Potential hat, habe ich diese Webseite gewidmet: Den Quantencomputern.

Was passiert also wenn ein Hype auf einen anderen Hype trifft?

Vorsichtig sein, sagt uns unser Instinkt. In diesem Artikel gebe ich Ihnen einen realistischen und aktuellen Lagebericht zu dem Thema. Wie angebracht diese Vorsicht ist, beweist die folgende Episode.

Eine Teenagerin schreckt die komplette Forschergemeinde auf (Teil 1)

Juni 2018, University of California in Berkeley: Eine Woche lang beraten führende Wissenschaflter für Quantencomputer-Algorithmen auf der Konferenz „Challenges in Quantum Computation“ über die Herausforderungen vor denen die aktuelle Forschung steht.

Am Ende der Konferenz bittet Scott Aaronson, von der University of Texas in Austin und einer der führenden Köpfe der Quantencomputer-Szene, einige Teilnehmer zu einer Extraschicht in einer dringenden Angelegenheit. Die Forscher treffen sich in der Folgewoche wieder. Unter ihnen sind auch Iordanis Kerenidis und Anupam Prakash.

Zwei Jahre zuvor hatten die beiden Forscher einen Algorithmus für ein Quanten-Empfehlungssystem entwickelt ii. Empfehlungssysteme ermitteln Vorlieben von Kunden anhand ihrer Bestellhistorie und bilden häufig das Herzstück von Bigdata-Unternehmen wie Amazon oder Netflix.

Der neue Algorithmus von Kerenidis und Prakash hatte in der Zwischenzeit eine enorme Aufmerksamkeit in der Forschergemeinde bekommen. Er war einer der ersten Quanten-Algorithmen, der speziell auf eine reale Anwendung im Bereich Bigdata und Machine Learning zugeschnitten war und erwiesenermaßen eine exponentielle Beschleunigung gegenüber allen bekannten Algorithmen für herkömmliche Computer besaß.

Am Morgen des 18. Junis tritt Aaronsons junge Studentin Ewin Tang vor die erlesene Runde und beginnt einen Vortrag über Kerenidis und Prakashs Arbeit.

Und langsam dämmert den verblüfften Anwesenden die bittere Tragweite von Ewin Tangs Ausführungen … (Teil 2 folgt weiter unten).

Künstliche Intelligenz und Machine Learning: Ein Kurzüberblick

Um die Episode zu beenden und überhaupt um diesen Artikel zu verstehen, müssen wir erst mal ganz von vorne anfangen. Was ist eigentlich Künstliche Intelligenz oder Machine Learning?

Eines der Hauptziele der klassischen künstlichen Intelligenz und des Machine Learnings ist es Daten zu struktieren und zu klassifizieren. Folgende Schwerpunkte gibt es dabei:

  • Supervised Machine Learning, überwachtes Maschinelles Lernen: Dabei werden bekannte und bereits beurteilte Daten dafür verwendet, um neue Daten zu klassifizieren. Das Standardbeispiel hierfür sind die Deep Learning – Netzwerke. Ein Deep Learning – Netzwerk wird z.B. mit beurteilten Tierbildern gefüttert (Bild 1 = „Katze“, Bild 2 = „Vogel“, Bild 3 = „Katze“, …). Nach einer längeren Anlernphase ist das Netzwerk optimiert bzw. trainiert und in der Lage neue, unbekannte Bilder richtig einzuordnen.
  • Unsupervised Machine Learning, unüberwachtes Maschinelles Lernen: Dabei wird nach Zusammenhängen und Gruppen in Rohdaten gesucht, ohne dass irgendwelche Zusatzinformationen zu diesen Daten bekannt wären. Dadurch wird versucht, die Rohdaten auf das „Wesentliche“ zu reduzieren.
  • Semi-supervised Machine Learning, teilüberwachtes Maschinelles Lernen: In einer Datenmenge sind einige Daten bereits beurteilt und einige noch nicht. Anhand der zusätzlichen Informationen wird versucht, die gesamte Datenmenge besser zu strukturieren und zu gruppieren. Dies geschieht insbesondere über statistische Methoden.
  • Reinforced Machine Learning, bestärkendes Maschinelle Lernen: Das Verhalten eines Softwareagenten wird mittels „Belohnung und Bestrafung“ immer weiter verbessert.

Die ersten beiden Schwerpunkte erläutere ich Ihnen im Weiteren etwas genauer. Dabei stelle Ihnen einige Algorithmen für Quantencomputer vor, von denen man sich eine Beschleunigung gegenüber Methoden für herkömmliche Computer erhofft.

Wie Machine Learning – Algorithmen Rohdaten sehen

Um Rohdaten für das Machine Learning aufzubereiten, hat es sich bewährt, diese Daten als Zeiger bzw. „Vektoren“ in riesigen, hochdimensionalen Datenräumen darzustellen. Und mit „riesig“ meine ich jetzt nicht so etwas, wie die „grenzenlosen Weiten des Weltalls“, sondern einen abstrakten Hyperraum mit vielen, vielen Dimensionen (also Achsen, die jeweils senkrecht aufeinander stehen). Hier wieder mein Hinweis: Versuchen Sie erst gar nicht, sich mehr als drei senkrechte Achsen räumlich vorzustellen (nämlich Höhe, Länge, Breite). Wir Menschen können es einfach nicht! Die Mathematik hat damit allerdings überhaupt keine Probleme. Sie kann mit beliebig vielen Dimensionen arbeiten, sogar mit unendlich vielen.

Ein Bild mit 16 * 16 Pixeln, wird so z.B. als ein Zeiger in einem Datenraum mit 16 * 16 = 256 Dimensionen dargestellt. Falls Pixel Nr. 194 in dem Bild auch nur etwas grau ist, dreht sich der Datenzeiger etwas in die Richtung der 194. Achse und zwar umso mehr, je schwarzer der Punkt im Bild ist.

Machine Learning mit Quantencomputern

Solche Datenräume stellen für herkömmliche Computer einen gewissen Aufwand dar: Um z.B. einen Zeiger in einer Ebene mit auch nur zwei Dimensionen (also wie ein Uhrzeiger) mit einer Genauigkeit von 0.1% darzustellen, braucht Ihr Computer etwa 20 Bits. Um diesen Zeiger zu verändern, in dem er z.B. gedreht wird, muss auf jedes dieser 20 Bits ein größere Anzahl an elementaren Bit-Operationen ausgeführt werden.

Ein Quantencomputer besitzt solche Zeigerdarstellungen von Natur aus. In meinem Artikel „Das Qubit und ein Magier bei Britain has Got Talent“ erkläre ich Ihnen, dass sich ein Qubit selbst, etwas vereinfacht, wie ein Zeiger in einer Ebene verhält. Die Achsen heißen in dem Fall „0“ und „1“. Im Prinzip kann unser Zeiger-Beispiel also mit einem einzigen Qubit dargestellt werden.

Zeiger-Operationen sind prinzipiell ebenfalls direkt im Quantencomputer eingebaut und erfordern nur wenige Qubit-Operationen bzw. Quantengatter.

Aber es geht noch viel besser: Dieser Vorteil eines Quantencomputers verstärkt sich prinzipiell, je größer bzw. hochdimensionaler die Datenräume werden.

Und zwar exponentiell, also quasi explosionsartig!

Der Grund dafür ist, dass ein Quantencomputer seine potentielle Leistungsfähigkeit mit jedem weiteren Qubit verdoppelt. Dieses Quanten-Phänomen beschreibe ich genauer in meinem Einführungsartikel „Quantencomputer einfach erklärt“.

Unsupervised Machine Learning mit Quantencomputern

Dieser exponentielle Quanten-Vorteil ist bereits ein Hauptargument vieler Quanten-Algorithmen für Machine Learning.

Auch klassische Algorithmen können viele Information über Rohdaten ermitteln, wenn sie als Zeiger in einem Datenraum dargestellt werden. Über die bloße „räumliche“ Verteilung ihrer Zeigerspitzen in dem riesigen Datenraum können sie z.B. zu Gruppen zusammengefasst werden.

Ein Quantencomputer rechnet prinzipiell anders als ein herkömmlicher Computer. Abstände von zwei Zeigerspitzen können über einen kleinen Rechen-Trick allerdings auch mit einem Quantencomputer berechnet werden: Dabei werden die Zeiger in zwei neue, sehr spezielle Zeiger umgewandelt. Der Abstand der ursprünglichen Zeigerspitzen wird dann aus dem Winkel der zwei neuen Zeiger ermittelt iii.

Die Hauptkomponentenanalyse mit Quantencomputern

Ein weiterer interessanter Algorithmus für das klassische Unsupervised Machine Learning ist die Hauptkomponentenanalyse bzw. Principal Component Analysis (PCA) iv. Die PCA verwendet für die Rohdaten ebenfalls den Datenraum. Darin werden die Datenpunkte bzw. die Zeigerspitzen als Bausteine eines massiven, starren Körpers interpretiert. Für diesen Körper können dann „mechanische Eigenschaften“ ermittelt werden. Die Hauptdrehachsen des Körpers (bei einem Spielzeugkreisel wäre die Hauptachse z.B. die senkrechte Drehachse des Kreisels) sind dann gerade die Hauptkomponenten des Datensatzes. Die PCA reduziert den starren Köper des Datensatzes im Prinzip auf einfachere geometrische Formen, mit ähnlichen mechanischen Eigenschaften. Die Rohdaten werden dadurch ebenfalls auf ihre Hauptkomponenten-Anteile reduziert.

Für die PCA wurde ebenfalls ein Quanten-Algorithmus mit einer exponentiellen Beschleunigung gefunden v. Dieser nutzt eine ganzen Latte von weiteren vielversprechenden Quanten-Algorithmen aus. Unter anderem der „Quantum Matrix Inversion“ oder geläufiger als „HHL-Algorithmus“ bezeichnet (nach seinen Autoren Harrow-Hassidim-Lloyd) vi. Der HHL-Algorithmus wurde 2008 gefunden und basiert selbst auf mehreren Algorithmen, die ich auf quantencomputer-info.de teilweise schon vorgestellt habe. Er ist in der Lage sogenannte lineare Gleichungssysteme exponentiell schneller zu lösen als alle herkömmlichen Algorithmen. Solche Gleichungssysteme so extrem häufig, dass der HHL-Algorithmus mittlerweile einer der Eckpfeiler der Forschung für Quanten-Algorithmen ist.

Quantencomputer und Machine Learning: Lese das Kleingedruckte …

Die spektakulären Quanten-Algorithmen, die ich bisher erwähnt habe, haben allerdings mindestens einen ganz gewaltigen Haken: Wie kommen die klassischen Rohdaten in den Quantencomputer?

Ein Quantencomputer ist in der Lage die Rohdaten exponentiell effizient darzustellen, soweit korrekt. Trotzdem müssen sie aber erstmal irgendwie in den Quantencomputer gelangen. Wenn das nicht mindestens genauso effizient erfolgen kann, ist der ganze Vorteil des superschnellen Quanten-Algorithmus bereits ganz am Anfang wieder hinfällig.

Wie dies erfolgen könnte wurde natürlich auch schon untersucht. Das vielversprechendste Konzept dafür nennt sich Quantum Random Access (QRAM) vii. QRAM hat aber auch einen Haken: Es gibt ihn noch nicht und wäre auch eine zusätzliche Quanten-Hardware, um die man sich kümmern müsste. QRAM besitzt eine Baumstruktur, an deren Knoten bzw. Verästlungen Quantenweichen sitzen, die jede Laderoutinen entweder in den linken oder in den rechten Seitenast weiterleiten. An den Blättern des Baumes befinden sich dann Informationen über die Zeiger der Rohdaten. Die Quantenweichen besitzen, anders als die Qubits, nicht zwei Quantenzustände, sondern drei. Von diesen Zuständen muss der Grundzustand besonders stabil sein. Die Entwicklung von QRAM ist noch völlig offen.

Ein weiterer Haken vieler Quanten-Algorithmen für Machine Learning: Wie Sie erfahren haben, basieren sie auf einer Mehrzahl zusätzlicher grundlegender Quanten-Algorithmen. Obwohl diese sehr spannend sind und großes Potential besitzen, wie z.B. der HHL-Algorithmus: Sie alle setzen die ein oder andere Bedingung voraus. Z.B. benötigen sie sehr große Quantencomputer oder eine gewisse Datenstruktur oder halt QRAM.

In Summe zu viele Fragezeichen für den eingangs erwähnten Scott Aaronson von der University of Texas. 2015 schrieb er einen Weckruf an seine Forscher-Kollegen: „Quantum Machine Learning Algorithms: Read the Fine Print“ viii und erhielt damit viel Zuspruch.

Eine Teenagerin schreckt die komplette Forschergemeinde auf (Teil 2)

Hier kommt seine junge Studentin wieder ins Spiel:

Ein Jahr später veröffentlichten Iordanis Kerenidis und Anupam Prakash den eingangs erwähnten Algorithmus für ein Quanten-Empfehlungssystem. Er war vielleicht der erste Algorithmus, der viele dieser Einschränkungen berücksichtigte, für eine reale Anwendung im Bereich Bigdata und Machine Learning zugeschnitten war und eine exponentielle Beschleunigung gegenüber allen bekannten Algorithmen für herkömmliche Computer besaß.

Was noch fehlte, war der Nachweis, dass es tatsächlich keinen schnelleren klassischen Algorithmus geben konnte. Scott Aaronson war genau davon überzeugt. Im Herbst 2017 übergab er die Suche nach diesem Nachweis an seine außerordentlich talentierte und vielversprechende Studentin Ewin Tang, als Thema für ihre Bachelor-Arbeit.

Was Ewin Tang dann der verblüfften Gruppe namhafter Forscher im Juni 2018 auf der Konferenz „Challenges in Quantum Computation“ in Berkeley präsentierte, war der von niemanden für möglich gehaltene Negativ-Nachweis. Ein neuer superschneller Algorithmus für Empfehlungssysteme sehr ähnlich wie der Quanten-Algorithmus Kerenidis und Prakash: Aber für herkömmliche Computer!

Erst später informierte Tangs Mentor Scott Aaronson die Forschern über ein weiteres kleines aber interessantes Detail zu dieser Entdeckung: Zum Zeitpunkt ihres Vortrages war Ewin Tang gerade einmal 18 Jahre alt ix.

„Quantum-inspired …“: Neue klassische Algorithmen für Machine Learning

Seit ihrer Entdeckung hat Ewin Tang eine Reihe von Artikeln über klassische Algorithmen mit dem Etikett „Quantum-inspired … “ veröffentlicht x. Diese machen die bereits gefunden Quanten-Algorithmen zwar nicht hinfällig, schränken aber wohl ihren Nutzen noch weiter ein xi.

Dabei ist Tangs Hauptargument das Folgende:

Wie viele andere Quanten-Algorithmen für Machine Learning und Linearer Algebra, geht auch der Algorithmus für das Quanten-Empfehlungssystem davon aus, dass die Datengrundlage (die Matrix von Benutzern und deren bekannten Produktvorlieben) Quantencomputer-gerecht und supereffizient in z.B. einer QRAM-Struktur abgelegt ist.

Tang argumentiert nun: Wer in der Lage ist, die Rohdaten in einer so aufwendigen Struktur von Quantenüberlagerungen abzulegen, sollte erst recht in der Lage sein, die Rohdaten in einer klassischen „Sample-And-Query“-Struktur abzulegen. Diese Struktur ist Tangs Pendant zum QRAM, ihm sehr ähnlich und genauso effizient aufgebaut. Anstatt mit Quanten-Überlagerungen arbeitet diese Datenbank mit reiner Statistik.

Die Rohdaten werden dabei in Datenfragmente aufgeteilt. Diese Fragmente werden in der SQ-Struktur nach ihrer Signifikanz am kompletten Datensatz statistisch gewichtet und können von dort supereffizient abgerufen werden. Die komplexe Berechnung des Quanten-Empfehlungssystems ersetzt Tang durch eine clevere statistische Einzelrechnung mit zufällig ausgewählten Datenfragmenten gemäß ihrer Gewichtung. Da auch die statistische Signifikanz der Fragmente abgerufen werden kann (ihre „statistische Verteilung“), ist Tang in der Lage das gesuchte, exakte Endergbnis abzuschätzen: Als Mittelwert aus der Statistik dieser Einzelergebnisse und mit jedem zusätzlichen Einzelergebnis immer genauer.

Dank des Quanten-Parallelismus kann der Quanten-Algorithmus von Kerenidis und Prakash von Anfang an mit dem kompletten Datensatz und exakt rechnen. Die Messung des Endergebnisses ist dann allerdings von der Quanten-Statistik abhängig. Im Gegensatz dazu „mißt“ Tang also nur Fragmente der Rohdaten gemäß ihrer statistischen Signifikanz und das schon ganz am Anfang. Dadurch reduziert sie die Datengröße und somit den Rechenumfang exponentiell und komponsiert den fehlenden Quanten-Parallelismus.

Wer meint, dass sich jetzt so ziemlich jedes Bigdata-Unternehmen um Ewin Tangs – Algorithmen reißen müsste, wird etwas enttäuscht. Tang bewertet den Nutzen ihrer bisherigen Arbeit für reale Anwendungsfälle in ihrem Blog nur „verhalten positiv“ xii.

Trotz des „Negativ-Ergebnisses“ zeigt diese Episode auch, wie fruchtbar die neuen Denkansätze für Quantencomputer selbst für herkömmliche Computer sein können. Oder wie Matthias Troyer von Microsoft Research es formuliert hat: „Ein Quanten-Algorithmus für Null Qubits“.

Quantencomputer, Künstliche Intelligenz und Machine Learning: Die Suche nach neuen Algorithmen

Als Zwischenfazit können wir festhalten: Die Quantencomputer-Forschung hat für die Künstliche Intelligenz und für das Machine Learning bereits eine Reihe interessanter Algorithmen entwickelt, die aber ihren Geschwindigkeitsvorteil hauptsächlich aus Unterroutinen wie QRAM und dem HHL-Algorithmus beziehen.

Wann und ob diese überhaupt eingesetzt werden können, ist noch offen.

Erst vor ein paar Jahren hat man damit begonnen, nach ganz neuen Wegen für die Künstliche Intelligenz und für das Machine Learning mit Quantencomputern zu suchen. Und zwar nach solchen Wegen, die bereits mit den kommenden Generationen von Quantencomputer beschritten werden können. Für Letztere prägte der bekannte Quantencomputer-Forscher John Preskill den Begriff „Noisy Intermediate Scale Quantun Computers“ (NISQ): Fehleranfällige, mäßig skalierte Quantencomputer xiii.

Drei prominente Vertreter solcher Quanten-Algorithmen habe ich Ihnen Bereits in meinem Artikel „Anwendungen für Quantencomputer“ vorgestellt: Dem „Quantum Adiabatic Algorithm“ (QAA), dem „Variational Quantum Eigensolver“ (VQE) und dem „Quantum Approximate Optimization Algorithm“ (QAOA). Die aktuelle Forschung für das Machine Learning mit Quantencomputern versucht diese Konzepte für die eigenen Ziele anzuwenden.

Kommen wir aber erst mal zu dem zweiten wichtigen Schwerpunkt der klassischen Künstlichen Intelligenz und des Machine Learnings:

Supervised Machine Learning und Deep Learning

Ein Herzstück aktueller Algorithmen für künstliche Intelligenz und Machine Learning sind „tiefe“ neuronale Netzwerke (Deep Learning – Netzwerke). Historisch gesehen war das Ziel hier, die Neuronen und Synapsen im Gehirn irgendwie programmatisch nachzuahmen. Herausgekommen ist ein Netzwerk von Knotenpunkten, die über mehrere Schichten miteinander verbunden werden.

Quelle: https://de.wikipedia.org/wiki/Deep_Learning#/media/Datei:MultiLayerNeuralNetworkBigger_english.png

Anhand von beliebigen Eingabe-Daten (z.B. mit Bildern von der Ziffern „1“, Bildern von der Ziffer „2“, …) wird das Netzwerk so eingestellt bzw. „trainiert“, dass es möglichst das gewünschte Ergebnis erkennt (die Ziffer 1, 2, …) xiv. Wie die Rohdaten für die Eingabe aufbereitet werden, habe ich Ihnen weiter oben schon anhand des „Datenraumes“ erklärt.

Das klassische Deep Leaning wurde in den 1970er entwickelt aber erst 1986 durch den „Backpropagation-Algorithmus“ revolutioniert: Ein Algorithmus über den das gesamte Netzwerk mit jeder neuen Trainingsrunde besonders effizient nachjustiert werden kann. In den letzten 10-15 Jahren zog dann die Hardware nach und wurde leistungsstark genug für die komplexen Algorithmen. Das Zeitalter von Google und Social Media fügte dann den letzten fehlenden Baustein hinzu: Eine Informationsflut von beurteilten Rohdaten, mit denen die Neuronalen Netze trainiert werden können.

Wie beeindruckend gut das Deep Learning mittlerweile funktioniert, sehen wir z.B. an den selbstfahrenden Autos und an den Sprachassistenten. Warum das ganze Konzept aber so gut funktioniert ist bis heute tatsächlich noch nicht genau verstanden xv.

Quantencomputer: Netzstrukturen auf Stereoide

Aber wie kommen jetzt die Quantencomputer ins Spiel?

Auf der einen Seite haben wir also die Deep Learning – Netzwerke. Diese sind sehr komplexe, programmierte Netzstrukturen. Durch eine Trainingsphase werden sie so filigran eingestellt, dass sie neue unbekannte Eingabedaten erfolgreich beurteilen können.

Quantencomputer auf der anderen Seite, sind so etwas wie Netze „auf Stereoide“. In Quanten-Netzen können andersartige Strukturen wie selbstverständlich verwendet werden, die in „normalen“ Netzen nicht denkbar wären. Die Vermutung liegt nahe, dass Quantencomputer dadurch einen Mehrwert gegenüber herkömmlichen Computer erzielen können.

Wem dieser Ansatz zu vage ist, dem sei gesagt, dass die Geschichte der Computerwissenschaften voll von „Schaun wir mal“-Algorithmen ist, die sich in der Praxis unheimlich bewährt haben. Ein Beispiel sind gerade die Deep Learning – Netze selbst.

Edward Farhi und Hartmut Neven von Googles Quantum AI-Team, haben 2018 gerade solche neuronalen Quanten-Netze genauer untersucht, die auf die NISQ-Quantencomputer optimiert sind xvi. Diese Strukturen bauen unter anderem auf Farhis oben erwähnten QAOA-Algorithmus auf.

Dabei wendeten Farhi und Neven ihre Algorithmen auch auf den MNIST-Datensatz an. MNIST ist ein öffentlich zugänglicher Datensatz von 55.000 beurteilten Bildern. Jedes Bild zeigt eine handgeschriebene Ziffer zwischen 0 und 9. Die MNIST-Bilder sind der allgemein gebräuchliche Standarddatensatz für Deep Learning – Netze über den die verschiedenen Algorithmen einigermaßen objektiv miteinander verglichen werden können.

Farhi und Neven konnten ihr neuronales Quanten-Netz erfolgreich mit den MNIST-Bildern trainieren. Auf einem Quantensimulator mit gerade mal 17 Qubits! Das ist ein Achtungserfolg und ein erster vielversprechender Anfang. Quantencomputer verdoppeln im Prinzip mit jedem weiteren Qubit ihr Potential. Deshalb besteht die Erwartung, dass jeder neue Quantencomputer auch bei den neuronalen Quanten-Netze deutlich meßbare Verbesserungen erzielen kann.

Das Beispiel zeigt aber auch, wie weit der Weg noch ist, bis die Forschung konkurrenzfähige neuronale Quanten-Netzwerke, geschweige denn real überlegene neuronale Quanten-Netzen konstruiert hat. Einen möglichen Weg zeigen Farhi und Neven auch auf: Hybride Quanten-klassische neuronale Netze. Eine Kombination von klassischen Deep Learning – Netzwerken mit neuronalen Quanten-Netzen. Erstere bereiten die Eingabedaten in handlichere Formen auf. Letztere sollten in der Lage, diese reduzierten und speziell präparierten Daten auch mit wenigen Qubits weiter zuverarbeiten und das Gesamtnetzwerk mit den gewünschten Quanten-Effekten zu „würzen“.

Fußnoten

ii https://arxiv.org/abs/1603.08675: „Quantum Recommendation Systems“, wissenschaftliche Arbeit von Iordanis Kerenidis und Anupam Prakash

iii https://arxiv.org/abs/1409.3097: „An introduction to quantum machine learning“, wissenschaftlicher Artikel von Maria Schuld et al

v https://arxiv.org/abs/1307.0401: „Quantum principal component analysis“, wissenschaftlicher Artikel von Seth Lloyd, Masoud Mohseni und Patrick Rebentrost

vi https://arxiv.org/abs/1802.08227: „Quantum linear systems algorithms: a primer“. Ein Einführungsartikel von des HHL-Algorithmus Danial Dervovic et al. inkl. Erläuterungen zu den Grundlagen auf denen er aufbaut.

vii https://arxiv.org/abs/0708.1879: „Quantum random access memory“, wissenschaftliche Arbeit von Giovannetti, Lloyd und Maccone

viii https://scottaaronson.com/papers/qml.pdf: „Quantum Machine Learning Algorithms: Read the Fine Print“, Artikel von Scott Aaronson

x https://arxiv.org/abs/1807.04271: „A quantum-inspired classical algorithm for recommendation systems“, https://arxiv.org/abs/1811.00414: „Quantum-inspired classical algorithms for principal component analysis and supervised clustering“ oder https://arxiv.org/abs/1811.04909: „Quantum-inspired sublinear classical algorithms for solving low-rank linear systems“ von Ewin Tang et al.

xi https://www.youtube.com/watch?v=P2Bucnq_ap0: In dem Video „TCS+ talk: Ewin Tang“ erläutert Ewin Tang ihren Algorithmus. Insbesondere stellt sie die Vermutung auf, dass man keine exponentielle Beschleunigung für niedrigdimensionale Datenzeiger erwarten darf. Das soll heißen: Rohdaten, die nur an vergleichsweise wenigen Stellen von Null verschieden sind.

xii https://ewintang.com/blog/2019/01/28/an-overview-of-quantum-inspired-sampling/: Ein sehr hilfreicher Übersichtsartikel von Ewin Tang in ihrem Blog über ihre Veröffentlichungen.

xiii https://arxiv.org/abs/1801.00862: „Quantum Computing in the NISQ era and beyond“, Vortragvorlage von John Preskill zur Konferenz „Quantum Computing For Business“ in 2017.

xiv http://neuralnetworksanddeeplearning.com/: Das Online-Buch von Michael Nielsen ist eine wunderbare Einführung für das Deep Learning. Interessanterweise ist Michael Nielsen außerdem der Co-Author des Standard-Lehrbuches für Quantencomputer „Quantum Computation and Quantum Information“. Man könnte meinen, dass er für den Forschungszweig Quantencomputer und Machine Learning prädistiniert ist. Aber anscheinend widmet sich Nielsen mittlerweile ganz anderen Themen, die weder mit dem einem noch mit dem anderen zu tun haben.

xv https://www.quantamagazine.org/new-theory-cracks-open-the-black-box-of-deep-learning-20170921/: „New Theory Cracks Open the Black Box of Deep Learning“, Artikel auf Quantamagazine

xvi https://arxiv.org/abs/1802.06002 : „Classification with quantum neural networks on near term processors“ wissenschaftlicher Artikel von Edward Farhi und Hartmut Neven.

Kann man Quantencomputer kaufen?

Wie muss man sich einen Quantencomputer vorstellen?

Quantencomputer tauchen regelmäßig in den Medien auf. Inzwischen ist allgemein bekannt, dass sie ein sehr spannendes Thema sind aber dass die Entwicklung von Quantencomputern noch am Anfang steht.

Ich stoße immer wieder auf die Frage, ob man Quantencomputer schon kaufen kann. Die Antwort darauf lautet: Kleines „Ja“ und großes „Aber“.

Zunächst einmal muss man sich klar machen: Ein Quantencomputer hat nur wenig bis nichts mit einem herkömmlichen Computer gemein. Was ich damit genau meine, erfahren Sie am besten in meinem Artikel „Quantencomputer einfach erklärt“.

Erste Quantencomputer existieren bereits heute schon. Deren Quanten-Prozessoren müssen bis fast zum absoluten Nullpunkt heruntergekühlt werden (dieser liegt bei -273°C). Erst dann werden dessen LC-Schaltkreise supraleitend und somit zu Quanten-Bits (Qubits): Den elementaren Bausteinen der Quantencomputer. Um diesen Temperaturpunkt zu erreichen sind große Kühlaggregate notwendig. Ein Quantencomputer ist deshalb ein großer Aufbau, der bestenfalls in einen großen Schrank passt.

Also nichts für den Schreibtisch.

Wofür sollte man einen Quantencomputer kaufen?

Als Nächstes sollte man sich darüber im Klaren sein, dass Quantencomputer voraussichtlich nur für ganz bestimmte Anwendungen eingesetzt werden, die sehr wichtig aber besonders rechenintensiv sind. Inbesondere für folgende Aufgabengebiete

  • für Simulationen für Physik, Quantenchemie, -biologie und Materialforschung
  • für Optimierungsaufgaben
  • für Künstliche Intelligenz und Machine Learning
  • für Lineare Algebra

Mehr darüber erfahren Sie in meinem Artikel „Anwendungen für Quantencomputer“.

Aktuell befindet sich die ganze Branche in einer „Proof-Of-Concept“-Phase. Aktuell verfügbare Quantencomputer funktionieren und können erfolgreich betrieben werden. Derzeit ist der konkrete Nutzen allerdings noch nicht vorhanden. Auf dem Papier wurden superschnelle und sehr vielversprechende Algorithmen für Quantencomputer konstruiert. Diese sind für die aktuellen Minimal-Quantencomputer allerdings zu umfangreich.

Erst in den letzten Jahren hat die Forschung damit begonnen, an Algorithmen zu arbeiten, die für die aktuelle Hardware optimiert sind. Diese müssen sich aber erst noch bewähren.

Eine Investition in Quantencomputer wird sich also eher erst mittelfristig, vielleicht sogar erst langfristig und ganz vielleicht sogar gar nicht auszahlen.

Welche Quantencomputer-Angebote kann man kaufen?

Falls Sie meinen Artikel „Welche Quantencomputer gibt es jetzt schon?“ gelesen haben, haben Sie bereits einen Eindruck davon bekommen, welche Quantencomputer-Hardware schon heute oder in Kürze angeboten wird. Darunter sind die Hersteller

  • D-Wave-Systems
  • IBM
  • Google
  • Rigetti-Computing
  • Alibaba

In meinem Artikel erkennen Sie auch einen klaren Trend:

Alle Hersteller setzen auf Cloudangebote: Dabei werden die Quantenprogramme per Internet an die Cloud-Quantencomputer zum Hersteller übermittelt. Dort werden sie quasi per Fernsteuerung ausgeführt und die Ergebnisse wieder zurück übermittelt. Diese Fernsteuerung kann von einem PC oder auch von einem firmeneigenen Server erfolgen. Den Zugang in die Quantencomputer-Cloud erhält man per Abo.

Die kanadische Firma D-Wave-Systems bietet die eigene Hardware auch als dedizierten Quantencomputer zum Kauf an: Also einen Quantenserver, der im eigenen Rechenzentrum betrieben werden kann, zu einem Listenpreis von vielen Millionen Dollar. Bislang haben allerdings nur wenige Kunden davon Gebrauch gemacht, darunter die NASA und Google.

Der Techriese IBM plant ein ähnliches Angebot für seine Quantencomputer.

Quantencomputer und Optimierung

<<   >>

Die Optimierung ist ein breites Anwendungsfeld für Computer im Allgemeinen. Schon in den 1990er Jahren zeichnete sich ab, dass die Optimierung auch ein vielversprechendes Anwendungsgebiet für Quantencomputer sein könnten.

Optimierungsprobleme zeichnen sich formal so aus, dass eine „Kostenfunktion“ gegeben ist. Eine Lösung des Problems optimiert diese Kostenfunktion. Neben den exakten Lösungen sind auch Lösungsnäherungen von Interesse, die das Problem besser optimieren als eine Reihe anderer Kandidaten aber vielleicht nicht die beste Lösung sind.

Optimierungsprobleme sind für Quantencomputer auch deshalb von Interesse, weil viele Problemfamilien für Optimierung bekannt sind, die erwiesener Maßen nur mit viel Anfwand auf einem herkömmlichen Computer zu lösen sind.

Einstufung der Quanten-Algorithmen für Optimierung

Auch für die Optimierung stufe ich die Algorithmen nach Adam Boulands Beispiel in zwei Kriterien ein, die ich auch in anderen Artikeln auf quantencomputer-info.de verwende:

  1. Beschleunigung: Der Grad an Beschleunigung gegenüber herkömmlichen Computern (bzw. die Beschleunigung gegenüber den besten bekannten Algorithmen für herkömmliche Computer für dieselbe Anwendung)
  2. Verfügbarkeit: Der Zeitpunkt, wann dieser Algorithmus vermutlich verfügbar sein wird

Verfügbarkeit

Beschleunigung

Kurzfristig (NISQ)

Langfristig

Riesig

(exponentiell)

Moderat

(z.b. quadratisch)

Grover

Unbekannt

QAA

QAOA

 

Optimierung mit dem Grover-Algorithmus

Der Grover-Algorithmus ist ein Urgestein der Quantencomputer-Forschung. Für einen Quanten-Algorithmus ist er „einigermaßen verständlich“. Wegen seiner universellen Anwendungen habe ich ihm einen einen eigenen Beitrag auf quantencomputer-info.de gewidmet, unter anderem auch wegen der so grundlegenden Fragestellungen, ob ein Quantencomputer die schwierigen NP-Probleme effizient lösen kann.

Da auch Optimierungsprobleme dazugehören, können wir den Grover-Algorithmus hier ebenfalls auflisten. Er ist im Prinzip ein Suchalgeorithmus, der alle möglichen Lösungskandidaten durchprobieren kann.

Tatsächlich erzielt der Grover-Algorithmus nur eine moderate, quadratische Beschleunigung gegenüber herkömmlichen Suchalgorithmen. Ich erläutere in meinem Spezial-Artikel, dass vermutlich keine schnelleren Suchalgorithmen mit einem Quantencomputer möglich sind. Aus diesem Grund geht die Quantencomputer-Forschung davon aus, dass die schwierigen NP-Probleme mit einem Quantencomputer nicht generell effizient gelöst werden können.

Auf der anderen Seite können selbst quadratische Beschleunigung einen gewaltigen Vorteil bringen. Für herkömmliche Computer wurde in der Vergangenheit z.B. der Algorithmus „Schnelle Fourier-Transformation“ entwickelt. Er beschleunigt die „Normale Fourier-Transformation“ ebenfalls quadratisch. Was es damit auf sich hat, ist an dieser Stelle unwichtig. Was ich aber bemerkenswert finde, ist der Titel den die Schnelle Fourier-Transformation für diese moderate Beschleunigung bekommen hat: „The most important numerical algorithm of our lifetime“ i.

Wie fast alle Quanten-Algorithmen mit aktuell erwiesener Beschleunigung gegenüber herkömmlichen Computer, ist der Grover-Algorithmus vermutlich zu umfangreich für die NISQ-Quantencomputer der nächsten Generationen.

QAA: Optimierung und dem Quantum Adiabatic Algorithm

Der Quantum Adiabatic Algorithm basiert auf dem Adiabatischen Theorem der Quantenmechanik, das noch aus den Anfangszeiten der Quantenmechanik stammt ii. Das Theorem sagt Folgendes aus:

Wir präparieren ein Quantensystem derart, dass es die Quantenversion von einem Optimierungsproblem mit einer bekannten Lösung ist. Die Qubits sind so eingestellt, dass sie der bekannten Lösung in Bit-Darstellung entsprechen. Wenn wir das Quantensystem „adiabatisch“ also langsam ändern, entspricht es jetzt einem neuen Optimierungsproblem. Im Weiteren nenne ich diesen Verlauf den „adiabatischen Pfad“. Die Qubits werden sich dadurch ebenfalls ändern. Die Clou des Adiabatischen Theorems ist, dass die geänderten Qubits jetzt die Lösung des geänderten Problems darstellen iii! Sie müssen nur noch ausgemessen werden, um die Lösung in Bit-Darstellung zu erhalten.

Dabei ist es unerheblich, wie stark wir das Problem ändern. Es kommt lediglich darauf an, dass wir das System langsam ändern. Das Theorem sagt auch aus, wie langsam man das System ändern müsste. Und gerade das könnte sich in der Anwendung als Problem erweisen.

Der Quantum Adiabatic Algorithm ist untrennbar mit dem Quanten Annealer von D-Wave verbunden. D-Waves Annealer ist eine Hardware-Version des Quantum Adiabatic Algorithm. Er ist speziell auf diesen einen Algorithmus abgestimmt und funktioniert dort genauso wie ich es oben beschrieben habe. Andere bekannte Quanten-Algorithmen können allerdings nicht auf ihm ausgeführt werden.

Universelle Quantencomputer, wie die Quantencomputer von Google, IBM, Rigetti und Alibaba können andererseits prinzipiell sowohl den Quantum Adiabatic Algorithm als auch andere Algorithmen ausführen. Hier wird der Quantencomputer allerdings nicht wirklich zeitlich verändert. Stattdessen wird ein Quantenschaltkreis konstruiert, der diese zeitliche Veränderung simuliert. Und tatsächlich ist der Quantum Adiabatic Algorithm auf einem universellen Quantecomputer eine Anwendung der dynamischen Quantensimulation, also der Hamiltonischen Simulation (s.o.). Aus diesem Grund kann der Quantum Adiabatic Algorithm in absehbarer Zeit nur in abgewandelter Form auf einem NISQ-Quantencomputer ausgeführt werden. Diese abgewandelte Form ist gerader der QAOA, den ich weiter unten vorstellen werden.

Auf D-Waves Quanten Annealer kann der Quantum Adiabatic Algorithm allerdings schon heute ausgeführt werden. Wie erfolgreich gegenüber herkömmlichen Optimierungsmethoden dies dort möglich ist, muss erst die Anwendung zeigen.

D-Wave sieht die Anwendungen für den eigenen Quanten Annealer übrigens wesentlich vielfältiger. Tatsächlich gibt es diverse D-Wave-Kunden, die den Quantum Adiabatic Algorithm für andere Anwendungsfelder wie der Künstlichen Intelligenz, Simulation von Quantensystemen, … eingesetzt haben iv.

QAOA: Optimierung mit dem Quantum Approximate Optimization Algorithm

Im Jahr 2014 stellten Edward Farhi et al vom Massachusetts Institute of Technology / MIT einen neuen Algorithmus für Optimierung vor, der speziell für die Quantencomputer der NISQ-Arä abgestimmt ist v vi .

Die Funktionsweise des Quantum Approximate Optimization Algorithm / QAOA ist sehr ähnlich wie die des VQE, der zufälligerweise im selben Jahr vorgestellt wurde, und den ich Ihnen oben beschrieben habe. Der QAOA ist ebenfalls ein Quanten-klassischer Hybrid-Algorithmus:

  1. Die Qubits werden so eingestellt, dass sie einen Kandidaten für die Lösung des Optimierungsproblems darstellen.
  2. Mit diesem Kandidaten ermittelt der Quantencomputer die Kostenfunktion des Problems. Mit einem Quantencomputer sollte dies effizient durchführbar sein. Da diese Messung immer auch eine Sache von Wahrscheinlichkeiten ist, wird sie mehrmals durchgeführt und der beste Wert verwendet.
  3. Über einen herkömmlichen Computer wird ein neuer Kandidat für die Lösung des Problems anhand des bisherigen Optimierungsverlaufs berechnet.

Farhi et al geben darüber hinaus genaue Strategien vor, wie die Kandidaten für die Lösung zu finden sind. Und darin ähnelt der Quantum Approximate Optimization Algorithm / QAOA wiederum dem Quantum Adiabatic Algorithm vii: Die Kandidaten für die Lösung werden derart mit Quantengattern manipuliert, dass sie am Ende nichts anderes sind als eine Stückelung des adiabatischen Pfades für das Problem mit einem universellen Quantencomputer. Wie wir weiter oben gesehen haben, garantiert der Quantum Adiabatic Algorithm, dass dieses Verfahren immer zu der Lösung des Problems führt, falls wir die Stückelung nur extrem detailliert wählen.

Farhi argumentiert nun wie folgt: Selbst wenn wir die Stückelung nur sehr grob wählen, können wir versuchen sie über klassische Methoden zu optimieren. Dafür müssen wir nur prüfen, ob die optimierte Stückelung bessere Kostenwerte im Quantencomputer liefert als die vorherige. So gelangen wir vielleicht nicht zu der besten Optimierung aber zumindest zu einer besseren Lösung. Deshalb nennt Farhi den Quanten-Algorithmus auch „approximate algorithm“. Ein weiterer Vorteil von Farhis Methode ist, dass diese Lösungskandidaten vermutlich effizient auf einem NISQ-Quantencomputer erzeugt werden können.

Ob der QAOA eine Beschleunigung gegenüber herkömmlichen Computern erzielt, ist derzeit noch nicht erwiesen. Allerdings stellte Edward Farhi direkt mit der ersten Veröffentlichung eine bestimmte Klasse von kombinatorischen Optimierungsproblemen vor, die sich mit seinem Algorithmus effizienter lösen lassen als durch den besten Algorithmus für herkömmliche Computer. Mit diesem Ergebnis erzielte er große Aufmerksamkeit viii. Eine Gruppe namhafter Informatiker nahm darauhin Farhis Ideen als Vorlage und entwickelten einen neueren noch schnelleren klassischen Algorithmus für diese Problem-Klasse.

Nichts destotrotz werden große Hoffnungen in den QAOA gesetzt. Die Anwendungen für den QAOA werden weiterhin ausgiebig untersucht ix. Auf dem Portal arxiv.org für Vorveröffentlichungen zähle ich zwischen Dezember 2018 und Juli 2019 23 Fachartikel zum Thema QAOA.Tendenz steigend.

Fußnoten

iii Tatsächlich erfordert das Adiabatische Theorem zusätzlich, dass es eine „Energielücke“ zwischen dem ursprünglichen Problem und dem finalen Problem gibt. Das werde ich hier allerdings nicht weiter ausführen. U.a. steuert diese Energielücke die Zeitspanne, die man für den Quantum Adiabatic Algorithm einplanen muss.

iv https://www.youtube.com/watch?v=UywYeMl30EM: Vortrag von Bo Ewald, President von D-Wave, auf der Konferenz „Quantum For Business 2018“, über die vielfältigen Projekte von D-Waves Kunden.

v https://arxiv.org/abs/1411.4028: „A Quantum Approximate Optimization Algorithm“, Fachartikel von Edward Farhi, Jeffrey Goldstone und Sam Gutman

vi https://www.youtube.com/watch?v=J8y0VhnISi8: „A Quantum Approximate Optimization Algorithm“, Vortrag von Edward Farhi zum Fachartikel

vii Dasselbe Autorenteam (Edward Farhi, Jeffrey Goldstone und Sam Gutman) war übrigens knapp 15 Jahre vorher maßgeblich daran beteiligt, dass der Quantum Adiabatic Algorithm und dadurch auch das Konzept des Quanten Annealers eine größere Aufmerksamkeit in der Forschergemeinde bekam. z.B. https://arxiv.org/abs/quant-ph/0104129: „A Quantum Adiabatic Evolution Algorithm Applied to Random Instances of an NP-Complete Problem“ zusammen mit weiteren Autoren.

viii https://www.scottaaronson.com/blog/?p=2155: „Quantum computing news items“ Blogeintrag von Scott Aaronson über den QAOA, der so viel Aufmerksamkeit unter Informatikern erregte, dass diese einen neuen effizienteren, klassischen Algorithmus entwarfen.

ix https://www.cs.umd.edu/class/fall2018/cmsc657/projects/group_16.pdf: Eine schöne Übersicht finden Sie im Artikel „An Introduction to Quantum Optimization Approximation Algorithm“ von Wang und Tauqir