观察者网

袁岚峰:九章不是计算机,是浮夸宣传?这是严重的误解

袁岚峰

袁岚峰

中国科学技术大学副研究员,风云学会会长 来源:风云之声 2021-01-28 13:44:04

【文/袁岚峰】

最近,有一位朋友来咨询我一些问题。

他说:中国的量子计算机“九章”大家都很关注,不过也有一些反对的声音。最基本的问题是,它到底是真的还是假的?

我说:当然是真的,全世界很多专家发来了祝贺。

2020年12月5日,本文作者与潘建伟研究组苑震生教授在实验室,面前就是九章的光路

他说:我们是被当年的汉芯搞怕了。

我说:汉芯是一直藏着掖着,没有任何中间成果,最后只有一个打磨的芯片。而九章用到了大量的先进技术,当今世界最好的量子光源、最好的干涉技术、最好的锁相技术、最好的单光子探测器等等。例如九章在2米自由空间加20米光纤的光程中能够保证抖动不超过25纳米,这相当于100公里的距离误差小于一根头发丝。

九章光量子干涉实物图

左下方为输入光学部分,右下方为锁相光路,上方共输出100个光学模式,分别通过低损耗单模光纤与100超导单光子探测器连接。(摄影:马潇汉、梁竞、邓宇皓)

九章在《Science》上的论文,正文有4页,附件长达64页,详细描述了论证过程与实验细节。

九章在《Science》上的论文(https://science.sciencemag.org/content/370/6523/1460.full)

多位国际专家对九章的评价

这些技术在九章之外也会有很多用处,例如打造更好的雷达、更好的卫星,所以怎么可能是假的呢?

窦贤康院士与潘建伟研究组张强教授合作研制的量子雷达,将大气风场探测距离增加到3倍

这位朋友说:这我就放心了。下一个问题是,很多人说它不是个计算机,对此该怎么看?

我说:很多人有这个问题。例如有文章(《杂谈|是量子计算,还是光学实验?》)说:

该“SCIENCE”文章,混淆了“实验”与“计算”的概念,所做的光学实验与量子计算无关,“九章”机器不是量子计算机,不能直接显示量子计算的优越性。

又如有文章(《高斯玻色采样不是量子并行计算而是经典的硬件蒙特卡洛模拟》)说:

就好比你用很多支手电筒在装满凹凸不平的镜子的屋子里乱照一通,然后让经典计算机计算出光的图像。你完全可以说你用手电筒就那么一晃,超级计算机就得计算几亿年。并且随着你的计算精度要求的提高,超级计算机的计算年数还可以无限延长。但这与量子霸权无关。这是模拟霸权。

又如有文章(《“九章”量子计算机为啥这么快?玻色采样问题是什么?量子霸权时代是否已经到来?》)说:

九章只能算是一个原型机,而不是计算机。因为它使用量子的方法去模拟量子过程,速度当然会超过经典计算机。这就好像点燃一个爆竹问碎片怎么飞,物理方法1秒就知道了,可是用计算机去计算可能要知道爆竹的结构、火药的种类,甚至要知道每一个分子和原子的位置,要获得足够的精度,计算量非常大。这并不是因为经典计算机不行,而是因为世界太复杂。

因为这些问题,所以有文章说,九章是“科学宣传的浮夸风”。

这些说法似乎很有道理。但请仔细想一想,难道九章是这么简单的东西吗?为什么九章能发《Science》,而拿手电筒乱照或者点爆竹不能发任何科学杂志?

基本的道理在于,计算机必须要稳定地、可重复地获得数据。九章确实做到了这一点,而拿手电筒乱照或者点爆竹不能做到,它们不具备可重复性。你这次点个爆竹,和下次点个爆竹,有多少碎片、这些碎片往哪儿飞,都是不一样的。你没法控制,除非你能控制爆竹中的每个原子。

点爆竹

所以,九章是计算机,而拿手电筒乱照或者点爆竹不是计算机。

你也许想问,九章究竟计算了什么?回答是“积和式”(Permanent)。

什么叫做积和式呢?取一个n × n的方阵,在第一行取一个数字,在第二行不同的列取一个数字,在第三行跟前两个数字不同的列取一个数字,如此等等,总共取n行的n个数字,然后把它们乘起来。

积和式

如果你学过高中数学,你立刻就会认出来:这不是行列式(Determinant)吗?没错,行列式就是这样做的。不过关键在于,行列式中这样的n个数字的乘积,有一半要加个负号,有加有减。例如对于a、b、c、d四个数组成的方阵A,

它的行列式

det(A) = ad - bc。

但在积和式中,所有的乘积前面都是正号,只有相加,没有相减。对于上面这个方阵,它的积和式就是

perm(A) = ad + bc。

这个符号之差,就带来了计算量的巨大差别。在经典计算机上,行列式有快速的算法,但积和式至今都没有快速的算法。你要让经典计算机算一个比较大的方阵的积和式,它到太阳爆炸都算不完。

现在来看九章是怎么计算积和式的。它是一个光学实验装置,做的任务叫做“玻色子取样”(boson sampling)。这个任务可以大致理解为:一个光路有若干个入口和若干个出口,把若干个光子放进去,让它们经过复杂的透射、反射和干涉,问光子从每一个出口出去的概率是多大。

九章论文附件(https://science.sciencemag.org/content/suppl/2020/12/02/science.abe8770.DC1)图1,整个装置的示意图

玻色子取样的结果,是直接跟积和式相关的。所以我们可以根据要算的方阵,设计一个玻色子取样的实验装置,对它取样,然后就能算出这个方阵的积和式了。九章用200秒取样5千万次,而现在最强的经典计算机计算同样的体系需要6亿年,九章实现了一百万亿倍的优势。

现在你完全明白了吧?

拿手电筒乱照或者点爆竹很复杂,是因为其中的粒子很多,而你的控制能力很差,所以你无法精确表述问题。而玻色子取样很复杂,是因为计算量太大,但这个问题是可以精确表述的。九章通过精密的操作,快速解决了这样一个有精确表述的复杂问题,这当然是了不起的成就。

有些人整天叫中国没有创新,真到重大的创新放在他们眼前,他们又认不出来。分不清稻草和黄金,把引领世界的成就当作骗局,这实在是太荒诞了。

关于九章的突破之大,有一个戏剧性的故事。有一位以色列数学家吉尔·凯莱(Gil Kalai),是一个铁杆的量子计算反对者。在他看来,量子计算机永远都不可能成功。他预言,玻色子取样不可能做到8至10个光子以上。

吉尔·凯莱

但九章做到的是多少呢?平均43个光子,最多达到76个光子!远远超出了凯莱的预测。这就像1943年,IBM董事长托马斯·沃森(Thomas John Watson,1874 - 1956)的名言:“全世界有5台计算机就够用了。”

托马斯·沃森

玻色子取样是美国理论家斯科特·阿伦森(Scott Aaronson)和他的学生亚历克斯·阿尔希波夫(Alex Arkhipov)提出的,他们指出这个问题很适合量子计算机超越经典计算机,即实现量子优越性。

斯科特·阿伦森(https://www.cs.utexas.edu/people/faculty-researchers/scott-aaronson)

最近阿伦森在自己的博客上(https://www.scottaaronson.com/blog/?p=5122)庆祝了九章的成功,并专门记录了凯莱立的这个flag及其被打脸。群众都喜闻乐见。

凯莱立的flag

有人可能还想问:九章确实快速得到了结果,但它不是把数据输进去一步步地计算,而是运行玻色子取样这个物理过程,这能算是计算吗?

其实这是典型的外行问题,真正研究量子计算的都不会问这个。因为他们知道,量子计算机本来就是这么做的,否则它凭什么能超过经典计算机呢?

量子计算的起源之一,是1981年伟大的物理学家理查德·费曼(Richard Phillips Feynman,1918 - 1988)的一个演讲《用计算机模拟物理》(Simulating Physics withComputers)。

理查德·费曼

他在里面指出,现在的计算机用来模拟经典力学很合适,但模拟量子力学就会遇到计算量爆炸。因为量子力学里同一个原因会产生不同的结果,我们的描述只能用概率的语言。请注意,这是一个质的区别。我们平常见到的随机都是伪随机,而量子力学里的随机是真随机!

在量子力学中我们只能预测概率

现在来看看,概率为什么会导致计算量爆炸。对于一维空间中的一个粒子,它只有一个坐标x,我们可以用一个函数f(x)来表示在x这个位置找到这个粒子的概率。假如把空间分成N个格点,我们就需要知道f(x)在这N个位置的N个取值。

这看起来很简单。但真正的麻烦在于,当我们有R个坐标时,概率函数就成了一个多元函数f(x1,x2, x3, …, xR)。每一个坐标有N个取值,所以总共有NR组坐标,我们需要知道这个多元函数的这么多个取值才行。数据量对R是指数增长的,这是灾难性的增长。

直接描述量子多粒子体系会导致计算量爆炸

例如,中国信息通信研究院发布的《大数据白皮书(2020年)》说,2020年全世界产生的数据量是47 ZB。1 ZB是1021字节,47 ZB就是4.7 × 1022字节或者3.76 × 1023比特。1 ZB约等于十亿TB,大家平时用的硬盘容量在1 TB左右,所以全世界一年大约填满了470亿个硬盘。

为迎接更大的数据洪流做好准备

请问,什么样的量子体系所需的数据量会超过47 ZB?答案非常惊人。

只要我们在三维空间中取8个粒子,每个粒子有3个坐标,总共24个坐标,即R = 24。每个坐标取10个值,即N = 10。这么小的体系,它的概率函数的数据量就是1024,超过了47 ZB这个全球一年的数据量。存都存不下,更不用说计算了。

现在,大家明白量子力学的计算为什么这么困难了吧?

面对这种计算量爆炸,费曼提出了一个办法,就是用量子体系去模拟量子体系。

我们不是直接用解析的方法去计算多元概率函数,而是构造一个量子体系,它演化的方式跟要模拟的体系在数学上等价。然后我们去测量这个量子体系的演化结果,也就是取样。做若干次取样后,我们就直接知道了这个多元概率函数。当然是在一定的误差范围内,这个误差会随着取样的增加而减少。

在计算机上做相应的实验,获得相应的概率

这种思路可以表述为:只有魔法才能打败魔法,只有量子才能打败量子。

所以你看,九章做的不正是费曼建议的吗?这正是量子计算机的本意。

通过以上的解释,你也会明白,为什么现在的量子计算机做的往往都叫做某某取样:九章做的叫做玻色子取样,2019年谷歌实现量子优越性的计算机“悬铃木”(Sycamore)做的叫做“随机线路取样”(random circuit sampling)。因为取样正是适合量子计算机干的事情。那些认为九章不是计算机、是浮夸宣传的人,其实踩的不只是九章,而且还包括悬铃木,包括现在所有的量子计算机。

谷歌论文图1对“悬铃木”量子计算机结构的演示

量子计算这个领域以前突出的困难在于,没有任何一台量子计算机在任何一个问题上超越经典计算机。大家都好像玩具模型一样,能算,但是算得很慢。所以有凯莱这种唱衰派,认为量子计算机永远不可能成功。九章和悬铃木的成就,就是突破了这个限制,显示出了量子计算机真正有用的前景。

我的朋友立刻明白了这些道理,他总结道:九章是一台原理验证机。他的下一个问题是:有人说九章不能编程,所以它不是个计算机,对此应该怎么看?

我的回答是:真正的关键在于,许多人对量子计算机的编程有误解。他们以为量子计算机是在所有问题上都能超越经典计算机,就像486比386快,所以他们觉得量子计算机一定要能编程。但这完全是错的。

486跟386运行的是同样的底层逻辑,486更快只是因为它的主频更高、晶体管更小、内存更大等等。但量子计算机跟经典计算机的底层逻辑完全不同,它们的基本操作单元就不同。

经典计算机的基本操作单元是“比特”,即一个体系有且只有两个状态。好比一个开关,它只有开和关两个状态。量子计算机的基本操作单元是“量子比特”(qubit),它好比一个旋钮。旋钮跟开关的区别是什么?它不是只有两个状态,而是有无穷多个状态。

用数学语言来表述,如果一个量子比特能处于|0>和|1>两个状态,那么它也能处于这两个状态的任何叠加态,即a|0> + b|1>。这里的a和b是两个数,|>叫做“狄拉克符号”(Dirac notation),在其中填上任何的数字或字母就可以表示一个量子力学的状态。

经典计算机的基本操作,是对比特进行的。例如把0变成1、把1变成0,这叫做“非门”(NOT gate)。

经典门

量子计算机的基本操作,是对量子比特进行的。例如把a|0> + b|1>变成b|0> + a|1>,这叫做“泡利-X门”(Pauli-X gate)。

量子Hadamard门

所以你看,量子计算机跟经典计算机的编程完全不是同样的意义。经典计算机的算法都是人用手算可以实现的,只是算得慢点。而量子计算机的算法是人用手算无法实现的,因为基本操作就不同。

量子计算机超越经典计算机的关键,在于量子算法。对于某些问题,我们设计出了快速的量子算法,例如因数分解,这时它们就可以远远超越经典计算机。而对于另一些问题,我们没有快速的量子算法,例如最基本的加减乘除,这时量子计算机就没有任何优势。

所以,量子计算机的用处就是解决某些经典计算机难以处理的问题,而不是解决所有的问题。许多人以为量子计算机将来会取代经典计算机,这是误解。无论量子计算机进步到什么程度,它都不会完全取代经典计算机。正确的前景是,量子计算机跟经典计算机联合使用。

因此,量子计算机只要在一个问题上超越了经典计算机,它就是有价值的。这正是九章和悬铃木的成就。在当前阶段,编程并不是主要目标。

事实上,光量子计算机首先在原理上是可以实现编程的。然后,现在的九章可以部分的编程,这可以通过调整实验中光的强度、干涉仪的透射率、反射率等参数来实现。潘建伟指出,九章的下一步,就是要成为一个可完全编程的计算机。

上海纽约大学计算机教授张峥表示,大众理解的“编程”是码农写程序,而九章和悬铃木的编程指的是硬件的“重构”(reconfiguration)。前者是用程序指令调动计算机的硬件资源,包括计算和存储,而后者有点像用乐高积木根据任务搭一个硬件。这两者的编程在目前并不在一个层面上。

潘建伟和张峥介绍量子计算机的编程《科学不避争论:众学者激辩量子计算九大问题》

我的朋友完全明白了这些道理,然后用自己的语言总结了一番,可见确实是理解了。我很高兴为这位朋友解答了问题。如果大家都有这样的思考能力和学习能力,我们的社会将会进步得多么快啊!

(本文原载于微信公众号“风云之声”,观察者网已获授权转载。)

作者
袁岚峰

袁岚峰

中国科学技术大学副研究员,风云学会会长
责任编辑
李泠

李泠

评论投稿了解一下?liling@guancha.cn

分享到
作者最近文章
“九章”是不是计算机?
中国科学曾经落后,但我们要自信能在未来领先
韩春雨撤稿一周年,大家还在拭目以待
“只写答案不给分”,这真的是为你好!
并不是所有人都值得“科普”
风闻·24小时最热
网友推荐最新闻
相关推荐
切换网页版
下载观察者App
tocomment gotop