写点什么

谷歌发布 Cirq:一个用于量子计算的 Python 开源库

  • 2018-08-01
  • 本文字数:1079 字

    阅读完需:约 4 分钟

Cirq 旨在让嘈杂中型量子计算机(Noisy Intermediate Scale Quantum,NISQ)算法的编写、操作和优化变得更容易。Cirq 还支持在本地模拟器上运行这些程序,并计划支持未来的量子硬件和量子云处理器。

NISQ 计算机将成为第一批在不久的将来可用的量子计算机,包括微软、谷歌、IBM、英特尔等在内的多家公司已经宣布开发 NISQ。NISQ 计算机由 50-100 个量子比特组成,让研究人员能够证明量子霸权,尽管它们的用途将受到量子门噪声以及后续将要出现的纠错算法效率的限制。

根据谷歌 AI 量子团队工程师 Alan Ho 和 Dave Bacon 透露,NISQ 计算机编程的主要障碍之一是如何正确地映射算法和硬件,从而可以完全将量子位用于解决问题最困难的部分,以及处理特定的处理器约束,因为如果没有正确处理这些问题,可能会导致计算错误。这正是 Cirq 发挥作用的地方。

Cirq 为用户提供了对量子电路的精确控制,使用原生的门指定门的行为,将这些门适当地放置在设备上,以及在量子硬件的约束内调度这些门的时序。数据结构经过优化,可用于编写和编译这些量子电路,从而让用户能够充分利用 NISQ 架构。

以下是最简单的“hello world”程序:

复制代码
import cirq
# Pick a qubit.
qubit = cirq.GridQubit(0, 0)
# Create a circuit
circuit = cirq.Circuit.from_ops(
cirq.X(qubit)**0.5, # Square root of NOT.
cirq.measure(qubit, key='m') # Measurement.
)
print("Circuit:")
print(circuit)
# Simulate the circuit several times.
simulator = cirq.google.XmonSimulator()
result = simulator.run(circuit, repetitions=20)
print("Results:")
print(result)

如你所见,Cirq 提供了高级语法来管理典型的量子计算抽象,例如电路、量子位上的逻辑运算或度量。正如上面的代码片段所示,Cirq 提供了对本地模拟的支持,但根据谷歌的说法,Cirq 的高级指令也可以转换为谷歌 Bristlecone 处理器的量子电路,并将用于访问云端版本(当云端 Bristlecone 处理器可用时)。 谷歌提供了更完整的教程,将指导你完成创建量子变分算法的过程,同时还有Cirq 的官方文档。此外,谷歌正在发布OpenFermion-Cirq,一个用于创建低深度量子算法的平台,创建的算法主要针对量子化学问题,通过将化学问题的细节(例如模拟分子和复杂材料的特性)转换为Cirq 电路来创建量子算法。

Cirq 托管在 GitHub 上,可以使用 pip 安装在 Linux、Mac OS X 和 Windows 上:

复制代码
python -m pip install --upgrade pip
python -m pip install cirq

Cirq 早期采用者包括 Zapata Computing QC Ware Quantum Benchmark 等。

查看英文原文 Google Cirq: a Python Open Source Library for Quantum Computing

2018-08-01 07:083416
用户头像

发布了 731 篇内容, 共 466.9 次阅读, 收获喜欢 2006 次。

关注

评论

发布
暂无评论
发现更多内容

Nest.js初步学习

木偶

Express nestjs 10月月更

基于 docker 实现对容器的 CPU 和内存的资源限制

忙着长大#

Docker 镜像

嵌入式 Linux 入门(九、Linux 下的磁盘管理)

矜辰所致

Linux 10月月更 磁盘管理

远程代码执行漏洞

网络安全学海

网络安全 安全 信息安全 渗透测试 漏洞挖掘

半小时看懂互联网运营,学会做局与破局

蔡农曰

运营 互联网+ 互联网行业 互联网运营

【精彩内容分享】SoCC 2022 | 大规模云系统自动化容量评估的探索与落地 – DeepScaling

TRaaS

QECon上海站|蚂蚁测试用例智能生成技术架构与实践

TRaaS

C++从入门到精通(第七篇) :string类的讲解和模拟实现

雪芙花

c 10月月更 C++

海龟编程 python绘图工具turtle库的用法 turtle库使用方法大全,画笔设置 画布设置 绘图设置,画笔粗细,画笔颜色, 画笔速度。

Python-派大星

10月月更

6000字带你揭开ICT和云计算技术的神秘面纱!

wljslmz

云计算 ICT 以太网 10月月更

AI读懂中国,文心方可雕龙

脑极体

流式计算引擎对比

穿过生命散发芬芳

10月月更 流式计算

【笔记】面向过程的SQL扩展(一)

w010w

数据库 sql 10月月更

http 协议 harbor 镜像仓库部署

忙着长大#

Java | Collection集合

陌上

Java 编程 10月月更

运维进阶训练营 -W02H

b1a2e1u1u

运维

极客时间运维进阶训练营第二周作业

Starry

Java | Map集合

陌上

Java 编程 10月月更

Python 文件处理 open()函数

Python-派大星

10月月更

云数据库助力电池云(二)

CnosDB

IoT 时序数据库 开源社区 CnosDB infra

JavaScript基础部分能力提升以及解答方案

木偶

JavaScript 前端 10月月更

C++从入门到精通(第七篇) :vector深度剖析及模拟实现

雪芙花

c 10月月更 C++

【一Go到底】第三十一天---查找

指剑

Go golang 10月月更

Go语言入门09—结构体

良猿

Go golang 后端 10月月更

服务怎么升级

agnostic

服务升级

【点滴】生活模型

无人之路

个人成长 日志 模型思维

前端开发-初始HTML

木偶

html 前端 10月月更

Java | Collection集合的子类

陌上

Java 编程 10月月更

虚拟化资源监控

阿泽🧸

10月月更 虚拟化监控

Mimir 速体验 (Part 4):数据抓取的高可靠

Grafana 爱好者

Grafana Prometheus Mimir

Mimir 速体验 (Part 5):原生 OTLP 数据写入

Grafana 爱好者

Grafana OpenTelemetry Mimir

谷歌发布Cirq:一个用于量子计算的Python开源库_开源_Sergio De Simone_InfoQ精选文章