QCon全球软件开发大会8折优惠倒计时,购票立减¥1760!了解详情 >>> 了解详情
写点什么

猫、量子位和远距传动:令人匪夷所思的量子计算世界(第三部分)

2018 年 7 月 25 日

关键要点

  • 让量子理论显得如此惊人的因素同样也让得量子计算机在实践中很难实现:量子现象并未在日常生活中表现出来。
  • 在考虑量子计算机的强大程度时,最重要的是要考虑错误率以及量子位数。在增加量子位数时,如果错误率也随之上升,那么并不会给量子计算机带来任何改进。
  • 因为量子计算机的成本、大小和物理特性,它们非常适合“按使用付费”的云消费模型。
  • 诸如 QISkit 量子 SDK 之类的工具可用于编写和编译量子程序,然后在硬件上运行。QISkit 包含了一个基于 Python 的量子 DSL 和 qasm(一种量子汇编语言)。
  • 当量子计算机足够大且足够健壮,并能够发挥作用时,量子的优势将会开始显现。我们还没有达到那样的程度,我们甚至不知道边界的确切位置。

问题领域

本系列文章的前面两篇分别介绍了量子理论,并解释了这些反直觉的量子行为如何实现了一系列非凡的算法。特别是 Peter Shor 发现了量子计算机如何对整数进行有效的因子分解,而 Lov Grover 的算法在搜索非结构化数据时提供了显著的速度提升。在过去的十五年中,没有一个算法可以与 Shor 或 Grover 相媲美,但随着量子计算机开始变得愈加可行,人们开始考虑可以将这些算法应用在哪些场景中。

到目前为止,没有人知道量子远距传动可以用在什么地方。以超过光速的速度发送信息是非常酷的,但必须先向接收方发送半个纠缠对,然后进行经典的通信,这是一个繁重的过程。光的速度也非常快,对于地球上所有的通信,光子的传播时间小于计算机发送消息的处理时间,远小于人类在接收消息时的反应时间。

另一方面,因子分解已经有了非常明显的应用场景。矛盾的是,因子分解是最有用和最不实用的量子算法。打破公钥加密技术将是一项非凡的成就,对零售商、金融业和情报机构都会产生重大影响。然而,一旦它们被认为是不安全的,基于因子分解的公钥加密技术就会被淘汰,并且该行业将转向“量子安全”加密协议。一旦没有使用基于因子的加密,读取以这种方式进行加密的传输就变得没有那么大价值。

因子分解的唯一目的是撤消其他人所做的事情,与因子分解不同的是,针对旅行推销员问题的量子解决方案可以提升人类的能力。问题在于传输(显然!)、物流、微芯片制造和 DNA 测序的不同。需要注意的是,一旦旅行推销员问题变得更加复杂,就难以得到精确的解决方案,但仍然可以得到一些非常好且成本很低的近似值。旅行推销员问题的精确解决方案可能需要很多年(甚至数百万年)才能计算出来,即使只有数十个城市也是如此。除了用于解决那些微不足道的问题之外,这样做显然是不切实际的。但是,如果放宽要求,不要求那么完美,那么即使是百万个城市,也可以得到与最佳解决方案只有 2-3%的误差。大多数情况下,这已经足够了。

乍一看,非结构化搜索似乎很少被应用在实际当中。Grover 将他的使用场景描述为搜索一本巨大的电话簿,找出具有给定号码的人的姓名。在数据搜索场景中,Grover 的算法对于某些情况还是很有用的,比如无法创建反向查找表,或者无法索引大量数据。但其实 Grover 的算法是通用的。从数学角度讲,搜索的结果是可以满足给定函数(“函数反转”)的东西。这意味着我们可以为任何问题搜索解决方案,只要可以轻松验证答案。这样看来,Grover 算法是 Shor 算法的表兄弟,只是相对较慢,但也更通用。它可以用在基于对称密钥或后量子加密方案的暴力攻击上(只要密钥不太长)。

除了破解密码之外,还有一些有趣的可能性。例如,Grover 的算法可用于解决一些机器学习问题。虽然它不能用于找到一些问题(如旅行推销员问题)的最优解决方案,但它可以找到满足一些最低标准的解决方案(例如,“三天的旅行时间”)。在很多情况下,这已经足够了。

最后,因为这些算法会枚举一系列可能性,量子计算机就很自然地被应用于复杂的建模问题上。为财务数据或风险建模就是一个潜在的应用场景,航空物流则是另一个。

自然科学

物理学家意识到最强大的计算机都无法模拟小量子系统,于是提出了量子计算机。(目前, IBM 团队可以模拟 56 个粒子,但这需要使用一些非常聪明的数学算法、几天的计算和 3TB 的内存)。

由于无法模拟更复杂的粒子系统,所以很难理解它们或对它们的行为进行预测。例如,一些分子具有“强相关性”的性质,这意味着传统的化学技术不起作用。即使我们知道正确的方程式,进行精确的计算也需要花费很长的时间,并且进行近似计算会得到一个“错误”的答案。这阻碍了很多领域的进步,例如低温物理学、材料科学和药物设计。

一般来说,量子有两个主要的作用,降低目前昂贵的计算成本,并实现当前无法实现的计算。

实现的障碍

让量子理论显得如此惊人的因素同样也让得量子计算机在实践中很难实现:量子现象并未在日常生活中表现出来。尽管可以在实验室中观察到量子现象,但通常是在极端的条件下——单个孤立的光子或粒子、真空、温度高于绝对零度的千分之几,这比星星之间的空间更冷。

这些条件难以达到,但凭借足够的资源和现代科学的优势,从技术上说是可行的。然而,还有一个更具哲理性的挑战。日常事物似乎都是非量子,那是因为它们是宏观的,量子效应只能在很小的范围内表现出来。当粒子与其他粒子相互作用时,就开始成为宏观的一部分——即经典系统。(为什么宏观系统看起来很经典?这仍然是一个具有争议性的问题,但人们普遍认为,这与量子态和外部影响之间的“退相干”有关)。

因此,量子计算机如果要保持“量子”状态,必须完全断绝与外部世界的互动。这是一个悖论,因为任何“墙”或“障碍”本身都是外部世界的一部分,“被墙包围”本身就是一种互动。即使有可能在技术上实现完全隔离,也这不是我们想要的:我们需要能够在计算开始时与系统交互,以便设置位的初始状态(写入量子内存),然后在计算结束时再次与它进行交互,以便测量它们的状态,并得到答案(读取量子内存)。这些操作需要是经典的(我们不能说“后续可以将内存设置为 0”或“在某个宇宙中将内存设置为 0”)。换句话说,我们需要能够打开和关闭与外部世界的连接,以及开启和关闭计算机的量子效应。

当前实现的工作原理

目前的量子计算机实现似乎克服了这些障碍。但是,他们只能在很短的时间内这样做。截至去年,量子计算机可以在“退相干”之前进行约 0.0001 秒的计算,也就是在与外界不必要的交互破坏量子态之前。

所有的量子计算机都是通过隔离个体光子或隔离个体原子粒子实现的。量子效应(如双缝干涉)可以在像巴基球一样大的分子中观察到,但相当困难。量子位实现往往尽可能小,以便尽可能减少退相干。

展望未来

后量子密码学

一旦我们拥有一个具有数千个量子位(还需要很多年的时间)的容错通用量子计算机,基于公钥因子分解的加密算法(如 RSA)将不再是安全的。其他算法,比如基于离散对数问题椭圆曲线离散对数问题的算法同样容易受到影响,因为可以通过 Shor 算法来破解它们。

但这并不意味着公钥密码技术的终结。仍然存在很多可能的方案,包括“基于格子”的加密协议。

硬件发展

实现量子优势需要材料科学的进一步发展。企业、学术机构和政府正在推动量子比特数和质量的提升。

随着量子计算机变得越来越大,首选架构可能会从同类计算机转变为模块化计算机。通过将量子位分组为相互隔离的子单元,可以实现可扩展性,而不是让每个量子位之间互相连接。这有点像微服务,只是微服务对应的是量子位,而不是软件。就像微服务一样,模块之间的通信也是必需的,并且可能需要在架构中使用特殊的通信中心。物理量子比特需要在网络中移动,或者需要让光子与物理量子位混合,作为具有量子能力的通信网关。

目前所有的量子计算机都需要在 -270 摄氏度的温度下运行,以保护微妙的量子态免受噪声影响。除了昂贵的成本之外,这种极端制冷既难实现又笨重。寻找在室温下进行量子计算的方法是一个正在进行研究的领域。2013 年,一个加拿大研究小组表示,量子态可以在室温下存活 39 分钟,这对于很多计算来说已经足够了。可惜的是,为了设置初始状态或读出状态,该特定系统仍然需要冷却到 4 开尔文,所以它仍然需要一个巨大的制冷设备,只有一部分时间可以处于室温条件下。



容错

即使运行在比深空更冷的条件下,当前的量子系统仍然存在严重的噪声和误差。量子计算机容错是一个正在积极研究的领域。经典计算机也会遇到物理错误,但修复这些错误相当简单。单个位可能会遇到的唯一错误类型是位翻转。为防止位翻转,只需拥有相同位的多个副本(例如,3 个),然后在测量时进行投票。



这种算法并没有直接转化为量子计算机,因为测量量子位进行投票会破坏状态的量子效应。不过可以进行“奇偶校验”,以查看两个量子位是否处于相同的状态。然后,这可以用于捕获量子位处于错误状态的情况,并通过从上到下翻转或调整相位来纠正它。纠错协议用逻辑量子位替换物理量子位,其中每个逻辑量子位由几个物理量子位组成。物理量子位可能很脆弱,但逻辑量子位很健壮。

缺点是实现这种容错涉及大量的信息冗余,这意味着会有很多的开销。量子容错协议的每个逻辑量子位至少需要 5 个物理量子位。目前最好的协议可以容忍更高的操作误差(1%),但它需要 9 个物理量子位。仅通过在物理量子位上扩展状态无法校正一些量子操作。实现这些操作的容错是可能的,但需要稳定地注入额外的量子位(称为“魔术状态”),以保持系统无错误。目前的量子计算机没有足够的量子位来满足这种容错需求,要实现可能还需要至少十年的时间。目前比较有趣的问题是,如何在没有容错的情况下进行有用的量子计算。对于某些计算来说,近似答案已经足够好,因此量子计算最有可能在近期用于解决这类问题。例如,一些量子化学问题难以解决,使用近似量子计算机可以显著提高计算的准确性。

在考虑量子计算机的强大程度时,最重要的是要考虑错误率以及量子位数。在增加量子位数时,如果错误率也随之上升,那么并不会给量子计算机带来任何改进。

量子云

因为量子计算机的成本、大小和物理特性,它们非常适合“按使用付费”的云消费模型。由于计算机需要保持在低于开尔文的温度,因此量子云绝对是最冷的云,目前大多数数据中心的冷却要求与之相比显得微不足道。更多的云厂商可能会基于当前的云提供内置的量子功能。



概念压缩

概念压缩是指编程任务中的概念开销的缩减,开发人员只需要了解更少的概念就可以使用新技术。或者换一个说法,就是从低级抽象转换到更高级别的抽象,并且保持这些抽象是无缝隙的。这不是低能化,而是释放开发人员的脑力,让他们专注于更有趣的事情。概念压缩从一开始就是我们行业的一个稳定趋势。我们已经看到从汇编语言向高级语言的转变,引入垃圾收集器以降低内存管理的成本(和对功能的影响),用 ORM 框架替换原始的 SQL,引入高度可访问的机器学习库,用 IaaS 替换硬件,用 PaaS 替换个别系统。量子计算机向云的迁移是概念压缩的另一个例子,这意味着想要使用它们的人不需要为管理超导传输量子比特或稀释制冷机的健康状况操心。

量子编程也有类似的趋势。15 年前,任何想要实现量子算法的人都需要直接在硬件级实现门序列。现在,可以使用诸如 QISkit 量子 SDK 之类的工具来编写和编译量子程序,然后在硬件上执行。 QISkit 包含了一个基于 Python 的量子 DSL 和 qasm(一种量子汇编语言)。然而,即使使用 Python 版本,想要利用量子能力的人也需要了解量子计算的基本原理。QISkit 程序是基于量子门和寄存器编写的。为了扩展压缩类比,压缩减小了文件大小,但它不会使文件消失。目前,编写基于量子的有效算法所需的文件大小仍然很大。很明显,随着时间的推移,量子开发人员将能够利用更高级别的抽象。

在未来,我们肯定会看到量子库的发展。我们甚至可以看到量子库的消除,也就是说,如果量子硬件变得无处不在,量子库可能被通用的优化库所取代,这些库自动选择给定计算的哪些部分应该以量子方式完成,哪些应该以经典方式完成。(这类似于现代机器学习库根据系统硬件来运行 GPU 优化的计算版本,因此机器学习开发人员不需要考虑 GPU 级别的东西)。

量子优势和量子就绪

量子优势被定义为量子计算机解决经典计算机无法解决的问题的能力。当量子计算机足够大且足够健壮,并能够发挥作用时,量子的优势将会开始显现。我们还没有达到那样的程度,我们甚至不知道边界的确切位置。然而,我们正处于一个“量子就绪”的时期,一切正蓄势待发。

虽然没有人可以准确预测我们什么时候会看到量子优势,但最近的进展令人印象深刻,里程碑似乎是不可避免的。目前,量子计算机的价格非常昂贵,只有极少数人可以使用,容量有限,而且相当不可靠的。这听起来令人沮丧,但它与七十八年前的经典电脑非常相似。1943 年,IBM 的 Thomas J. Watson 告诉他的投资者,“我认为世界只需要 5 台计算机”。1949 年,“大众机械”杂志预言,“未来的计算机重量可能不会超过 1.5 吨”。这些”雄心勃勃“的预测在七十年后的今天看起来实在是可笑。可能再过七十年,我们的后代也会笑我们对超过 50 个量子位并使用巨大的制冷机来实现 0.0001 秒的相干时间而感到无比兴奋。

这是量子计算系列的第三部分,第一部分侧重介绍了量子计算,第二部分介绍了量子算法。

关于作者

Holly Cummins  是一位全栈开发人员和云计算技术主管。她经常发表演讲,是一位 Java Champion,以及 Enterprise OSGi in Action 一书的作者。Holly 拥有牛津大学量子计算博士学位(PhD)。

查看英文原文 Cats, Qubits, and Teleportation: The Spooky World of Quantum Computation Applications (Part 3)

2018 年 7 月 25 日 18:291010
用户头像

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

关注

评论 1 条评论

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

Kubernetes config多集群管理工具

雪雷

k8s kubecm k8s多集群管理 kubeconfig

小小的代码分支模型如何撬动研发过程管理

陈晨

大数据技术思想入门(一):分布式存储特点

抖码算法

Java 大数据 hadoop 分布式

曾经每个手机上都有的游戏,作为前端如今你也能开发出来了,附教程

web前端程序猿

html5 前端 前端训练 前端教程 web前端

等级三整理之深信服

Lane

支付宝蜻蜓刷脸支付

诸葛小猿

支付宝 蜻蜓 刷脸支付

如何优雅的备份账号相关信息

Simon

MySQL

Go: 使用pprof收集样本数据

陈思敏捷

go golang pprof

Kubernetes-学习必备(awesome-kubernetes-notes)

雪雷

学习 k8s入门 k8s文档 k8s知识

玩K8S不得不会的HELM

雪雷

k8s Helm

区块链加未来3至5年可以预见 上链将成为常态

CECBC区块链专委会

区块链 金融 数字时代

构建统一监管制度 加快数据要素立法修法

CECBC区块链专委会

区块链 金融 区块链数字经济

Prometheus + Grafana详解

雪雷

监控 Grafana Prometheus 告警

MySQL5.7应当注意的参数

Simon

MySQL 参数

Java 生成解析二维码

喜瑞斯

Gitlab CI进阶之共享CI库

雪雷

DevOps gitlab CI/CD gitlab ci

Gitlab CI之单元测试和代码扫描

雪雷

单元测试 CI/CD gitlab ci 代码扫描

Istio微服务治理笔记(一)

雪雷

istio 服务治理 server mesh

极客公园张鹏对话百度CTO王海峰,揭秘中国AI的今昔与前路

脑极体

搜狗联合清华天工研究院推出ChoreoNet模型:让数字人随着音乐翩翩起舞

脑极体

mPaas-RPC拦截器各种场景下的使用指南

阿里云金融线TAM SRE专家服务团队

RPC

微服务链路追踪之Jaeger

雪雷

全链路监控 Jaeger

一文带你检查Kubernetes应用是否为最佳实践

雪雷

k8s k8s最佳实践

赋能云端管理 激发智能边缘 英特尔发布超能云终端解决方案

最新动态

Git 常用命令总结

迷羊

git

必看的数据库使用规范

Simon

MySQL 技术规范

K8s事件监控之kube-eventer

雪雷

k8s事件告警 k8s资源监控 k8s管理

K8s可视化监控之-Weave Scope

雪雷

k8s k8s可视化 k8s监控

GitOps工具Argo CD实战

雪雷

DevOps CI/CD gitops argo cd

一.操作系统概述

Winter

操作系统

XSKY新一代分布式文件系统XGFS揭秘——元数据服务

XSKY融合存储

移动应用开发的下一站

移动应用开发的下一站

猫、量子位和远距传动:令人匪夷所思的量子计算世界(第三部分)-InfoQ