Cirq

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen
Cirq
Basisdaten
Erscheinungsjahr 17. April 2018
Aktuelle Version 1.4.1[1]
(27. Juni 2024)
Programmier­sprache Python
Lizenz Apache-Lizenz, Version 2.0
quantumai.google/cirq

Cirq ist ein Open-Source-Framework für Noisy Intermediate-Scale Quanten (NISQ)-Computer.[2]

Es wurde von Google entwickelt, um Quantenalgorithmen effizient auf aktuellen Quantenprozessoren zu entwerfen, zu optimieren und auszuführen. Cirq bietet eine flexible Schnittstelle zur Steuerung von Quanten-Hardware, unterstützt die Simulation von Quanten-Schaltkreisen und ermöglicht Forschern sowie Entwicklern die Implementierung und Analyse von Algorithmen für reale Quantencomputer.

Cirq wurde vom Google AI Quantum Team entwickelt. Die erste öffentliche Alpha-Version wurde auf dem Internationalen Workshop on Quantum Software and Quantum Machine, am 18. Juli 2018 vorgestellt.[2] Eine Vorführung durch QC Ware hat eine Implementierung des Quantum Approximate Optimization Algorithm (QAOA) gezeigt, der ein Beispiel eines Max-Cut-Problems mit einem Cirq-Simulator gelöst hat. Diese Demonstration veranschaulichte, wie Quantenalgorithmen für kombinatorische Optimierungsprobleme eingesetzt werden können und wie Cirq zur effizienten Simulation und Analyse solcher Algorithmen genutzt wird.[3]

In Cirq werden Quantenschaltkreise durch „Circuits" dargestellt, die aus einer Reihe von „Moments" bestehen. Jeder „Moment" repräsentiert eine Schicht von Quanten-Gattern, die gleichzeitig angewendet werden sollen.[4]

Die Programme können auf lokalen Simulatoren[5] oder auf Hardware von IonQ, Pasqal [6] , Rigetti und Alpine Quantum Technologies [7] ausgeführt werden.

Die folgenden Beispiele zeigen wie man einen Bell-Zustand in Criq erstellt und misst:

import cirq

# qubits auswählen
qubit0 = cirq.GridQubit(0, 0)
qubit1 = cirq.GridQubit(0, 1)

# Circuit erstellen
circuit = cirq.Circuit(
 cirq.H(qubit0),
 cirq.CNOT(qubit0, qubit1),
 cirq.measure(qubit0, key="m0"),
 cirq.measure(qubit1, key="m1")
)

Das Ausgeben des Schaltkreises zeigt sein Diagramm an:

print(circuit)
# prints
# (0, 0): ───H───@───M('m0')───
# │
# (0, 1): ───────X───M('m1')───

Die wiederholte Simulation des Schaltkreises zeigt, dass die Messungen der Qubits korreliert sind:

simulator = cirq.Simulator()
result = simulator.run(circuit, repetitions=5)
print(result)
# Gibt aus:
# m0=11010
# m1=11010

OpenFermion ist eine Bibliothek, die Quanten-Simulationsalgorithmen für Cirq kompiliert. Sie wird insbesondere für die Simulation quantenmechanischer Systeme in der Quantenchemie und Physik verwendet und ermöglicht die effiziente Umwandlung von Fermionen-Hamiltonianen in Quanten-Schaltkreise.[2]

TensorFlow Quantum

[Bearbeiten | Quelltext bearbeiten ]

TensorFlow Quantum ist eine Erweiterung von TensorFlow, die es ermöglicht, hybride klassisch-quantenbasierte Machine-Learning-Algorithmen zu erforschen. Sie kombiniert die Leistungsfähigkeit von TensorFlow mit Quantencomputing-Techniken und erlaubt die nahtlose Integration von Quanten-Schaltkreisen in bestehende neuronale Netzwerke und Optimierungsprozesse.[8] [9]

ReCirq ist ein Repository für Forschungsprojekte, die mit Cirq durchgeführt wurden. Es enthält eine Sammlung von Open-Source-Experimenten, Algorithmen und Anwendungen, die von der Quantenforschungs-Community entwickelt wurden, und dient als Ressource für das Testen und Optimieren von Quantenalgorithmen.[10]

Qsim ist ein leistungsstarker Wellenfunktionssimulator, der Gate-Fusion, AVX/FMA-Instruktionen und OpenMP nutzt, um hohe Simulationsgeschwindigkeiten zu erreichen. Qsimcirq ermöglicht die Verwendung von Qsim direkt innerhalb von Cirq und bietet eine effiziente Möglichkeit, große Quanten-Schaltkreise zu simulieren, indem es hardwarebeschleunigte Optimierungen nutzt.[11]

Einzelnachweise

[Bearbeiten | Quelltext bearbeiten ]
  1. Release 1.4.1. 27. Juni 2024 (abgerufen am 21. Juli 2024).
  2. a b c Announcing Cirq: An Open Source Framework for NISQ Algorithms. Abgerufen am 3. März 2025 (englisch). 
  3. public_demos/max_cut/max_cut_cirq.py at master · qcware/public_demos. Abgerufen am 3. März 2025 (englisch). 
  4. Cirq basics. Abgerufen am 3. März 2025 (englisch). 
  5. Simulate a circuit | Cirq. Abgerufen am 3. März 2025 (englisch). 
  6. Homepage pasqal. Abgerufen am 3. März 2025 (amerikanisches Englisch). 
  7. Carina: Home. Abgerufen am 3. März 2025 (amerikanisches Englisch). 
  8. TensorFlow Quantum. Abgerufen am 3. März 2025 (englisch). 
  9. Seunghyeok Oh, Jaeho Choi, Joongheon Kim: A Tutorial on Quantum Convolutional Neural Networks (QCNN). IEEE, 2020, ISBN 978-1-72816-758-9, S. 236–239, doi:10.1109/ICTC49870.2020.9289439 (ieee.org [abgerufen am 3. März 2025]). 
  10. quantumlib/ReCirq. quantumlib, 28. Februar 2025, abgerufen am 3. März 2025. 
  11. Client Challenge. Abgerufen am 3. März 2025. 
Abgerufen von „https://de.wikipedia.org/w/index.php?title=Cirq&oldid=253880434"