Die Qubit-Algorithmen dieser Blog-Serie zu verstehen und nachzuvollziehen macht mehr Spaß, wenn wir sie selber erstellen und laufen lassen können. Das geht mit IBM Quantum Experience, einer frei zugänglichen Umgebung, in der man Qubit-Circuits entwerfen und testen kann. Testen auf einem Simulator oder sogar echten IBM Quanten-Computern.

Wie kommt man da dran?

Zugang zur IBM Quantum-Computing-Umgebung

Es findet wie heute üblich, alles im Browser statt (Web-Application). Gesonderte Apps für Smartphone und Tablet gibt es für IBM Q Experience Apps (noch) nicht. Und über den Browser geht es dort nicht so richtig gut. Es wird also ein “richtiges” Gerät –  PC, Laptop, Mac oder ähnliches – empfohlen.

Im Browser gibt man ein
https://quantum-computing.ibm.com/login

Man sieht … alles auf Englisch, natürlich! Daher ein paar Hinweise.

Beim ersten Mal muss man sich zunächst registrieren. (Später wird man direkt auf seine aktuelle Arbeitsumgebung geführt (s. Dashboard, unten)). Zum Registrieren dient der Link hinter “Create an IBM Account“. Damit startet man die Registrierung. Ist erkennbar, dass der Link von einem deutschsprachigen PC aufgerufen wurde, findet der weitere Dialog auf Deutsch statt: “Bei IBM anmelden“. “Sie haben noch kein Konto?” – Genau! Deshalb geht es dort weiter: Link “IBMId erstellen” (Die IBMId wird dann bei weiteren Login’s gebraucht.)

Nun wird es wieder Englisch: “Sign up for an IBMId” ist die Seite, auf der E-mail, Name und Passwort und Land (Germany) eingegeben werden. Mit “Next” geht’s weiter zu “Verify email“, d.h. zur Überprüfung, ob die E-mail Adresse gültig ist und im rechtmäßigen Besitz des Users. Es wird dazu ein 7-stelliger Code an die eingetragene E-mail Adresse geschickt.  Also, in der Mailbox nachsehen und die 7 Zeichen in die kleine Box “Verification token” eintragen. Anschließend endlich “Create account” (Konto erstellen) anklicken. Dann erscheint – unvermeidbar – erst noch die Einwilligung zum IBM Konto Datenschutz. Mit “Proceed” bestätigen, und dann ist es schon geschafft.

Danach kann man die Kontoinformationen (E-Mail Adresse, Password) zum Login verwenden: Link-Adresse wie oben und dann auf “Bei IBM anmelden” die E-mail-Adresse eingeben und “Weiter“. Wenn gewünscht, kann man vorher das Kästchen “Merken” ankreuzen. Dann noch das Passwort unter “Kennwort” eingeben. Und schon ist man drin!

Halt – nein! Beim ersten Mal muss man noch das IBM Quantum End User Agreement ankreuzen und “Accept & continue” klicken. Das ist halt so üblich, dass man die “Geschäftsbedingungen” akzeptiert. Und wie bei (kosten-)freien Diensten üblich, wird man anschließend gebeten, etwas über sich preis zu geben. “Your institution” ist ein Muss (Sternchen-Feld): hier gibt man  z.B. die Schule an oder irgendwas. Der Rest ist optional: Drop-down Auswahl über seine Vorkenntnisse mit “quantum”, Freitext-Feld um anzugeben, was man mit IBM Q Experience machen will, und Auswahl-Liste, welche Informationen man zu IBM Q Experience erhalten will (per E-mail).

Dann endlich “Continue” und jetzt ist man (fast) drin. Wo drin?

Erscheinungsbild (User Interface) der IBM Quantum-Computing-Umgebung

Anfangs oder immer wieder beim Login wird man mit einem Fenster konfrontiert, das uns ein “Get started” Tutorial anbietet. Nicht schlecht, das mal durchzugehen, wenn man Zeit hat oder schon ein wenig mit dem Circuit Composer “gespielt” hat. Mit “Close” lehnen wir das Angebot ab.

Wenn man seine Zugangsdaten gespeichert hat und den gleichen Browser benutzt, wird man schon direkt auf seine aktuelle Arbeitsumgebung geführt (s. Dashboard, unten).

Anm.: Es ist natürlich alles auf Englisch, von daher erfordern die Tutorials und weitere Dokumente möglicherweise Englischkenntnisse, die über das schulische Niveau einer Mittelstufe hinausgehen.

Das User Interface öffnet sich mit einer Welcome-Seite. Neben der Begrüßung findet man dort einige Informationen über das, was man schon gemacht hat: Welche Circuits, welche Ergebnisse (results) anstehen (pending), welche zuletzt angefallen sind (Latest).

Spannend ist die Liste rechts der gerade verfügbaren “Backends“. Das sind die Quanten-Computer, die weltweit zur Verfügung stehen (online). Zu jedem Eintrag gibt es Informationen darüber, wo er steht, wieviel Qubits er hat – und wieviel “Jobs” (Programmausführungen) in der Warteschlange stehen. Am Ende der Liste ist der “virtuelle” Quanten-Computer aufgeführt, der ibmq_qasm_simulator, den man aktuell mit bis zu 32 Qubits nutzen kann.

Diese Informationen sind umrahmt von einer Menüleiste mit teilweise kryptischen Symbolen. Die Menüleiste befindet sich links (s. Bild unten).

Einige Menü-Punkte des User Interfaces

Oben in der Ecke deuten drei waagerechte Striche an, dass man hiermit das Menü ausklappen kann, so dass man sehen kann, was die Symbole bedeuten. Hier einige kurz erläutert:

  • Dashboard: So heißt die Welcome Seite
  • Tools | Circuit Composer: Enthält im Kern den grafischen Circuit Composer mit den möglichen Gates und den (einstellbaren) Qubit / Mess-Bit Linien. Seit August 2020 sind hier noch eine ganze Reihe weiterer Widgets (Fensterchen) mit dargestellt.
    • Das für Messergebnisse (Measurement Probabilities) ist für die Blog-Serie interessant.
    • Statevector (Zustandsvektor) zeigt die (theoretischen) Faktoren an (als farbige Säulen), mit denen die verschiedenen Basiszustände in einer Superposition vertreten sind, so wie sie vom Qubit-Algorithmus gerade erzeugt wird. In der Blog-Serie auch als Koordinaten bezeichnet. Im Fachjargon des Quanten-Computing spricht man auch von der Amplitude.
    • Rechts gibt es noch einen Bereich für Dokumente und Tutorial-Empfehlungen. Alternativ (Tabs direkt darüber) kann man sich hier den QASM Skript-Code zur Grafik anzeigen lassen und verändern, oder die aktuelle Job-Übersicht.
    • Das ist leider ziemlich viel auf einmal und wird gegenüber der Vorversion leicht unübersichtlich für unsere Zwecke. Aber man gewöhnt sich daran und kann über den Menüpunkt View einiges “abwählen”.
    • Die einzelnen Menüpunkte oben in der Leiste mit ihren Unter-Optionen muss man Zug um Zug kennenlernen. Zuviel, um das alles hier zu erklären. Es wird sicher auch deutschsprachige Tutorials dazu geben.
  • Tools | Quantum Lab: Der Bereich, in dem man Qubit-Algorithmen in Form von Python-Notebooks und mit Verwendung der Qubit-Programmbibliothek Qisqit erstellen und managen kann. Wir hatten ein Beispiel dafür im Kommentar zu Blog Q8.
  • Tools | Results: Zeigt die Übersicht der Resultate von QC-Jobs an.
  • Resources | Docs und Support: IBM Q Experience Dokumentationen, Tutorials und Zugang zu Q&A und anderen Support-Formen.

Der Circuit Composer in Kurzfassung

Ein kurzer Blick auf den Circuit Composer. Er erscheint innerhalb des User-Interfaces mit seiner Menüleiste am linken Rand, wie oben erklärt.

  • Der Circuit Composer hat eine eigene Menüleiste, waagerecht oben im Widget.
  • Im oberen Bereich (Widget) hat man die “Partitur”. Die Gates und die Qubit- und Messbit-Linien. Natürlich kann man diese einstellen über Edit.
  • Darunter hat man weitere Widgets, z.B. die Measurement Probabilities, also die theoretische Vorhersage der Messergbnisse. Oder den “Zustandsvektor”, der den (Superpositions-) Zustand des Qubit-Systems zeigt. Gezeigt wird der Zustand, der am Ende des Circuits resultieren würde. Alle nicht benötigten Widgets kann man “verstecken”, z.B. über View.
  • Über Run Settings und Run on … kann man den Qubit Circuit starten.
  • Die Ergebnisse findet man unter Jobs, einer von 3 Inhalten, die man in einem Widget ganz rechts darstellen kann. (Im Bild ausgeblendet.) Die anderen beiden enthalten Dokumentationen und Hinweise (Docs) und das QASM Code-Skript zum aktuellen Circuit.
  • Zwischen oberer Menüleiste und den Gates-Symbolen findet man eine typische Pfadangabe: Verzeichnis/Datei. Hier Circuits/Untitled Circuit. D.h. für den gezeigten Circuit haben wir noch keinen Namen vergeben. Das kann man mit dem Stift-Symbol ändern. Der Stift erscheint, wenn sich der Mauszeiger über den Circuit Namen befindet. Das Verzeichnis Circuits ist das Standard-Verzeichnis, in dem man alle seine gespeicherten Circuits (saved) wiederfindet.
  • Die Details und Unterpunkte findet man am besten heraus, indem man sie ausprobiert. Allerdings muss man sich mit einigen englischen Begriffen vertraut machen – was aber nicht so schwierig sein sollte, da die meisten ohnehin auch schon im deutschen Sprachgebrauch verwendet werden.

Wenn diese Zusatzinformation aus dem Kontext von Q8 heraus aufgerufen wurde: hier gehts zurück zu Q8.