引言:
谷歌2019年秋天大张旗鼓地宣布,它已经证明了“量子至上”——也就是说,它进行特定的量子计算的速度远远快于最好的经典计算机系统之一。IBM立即对这一声明进行了回复,称自己的PC可能以几乎相同的速度、更大的恒定性进行计算。由于这一事实,谷歌的声明需要“带着很大的怀疑”。
这不是第一次有人怀疑量子计算。去年,法国蒙彼利埃大学(University of Montpellier)的理论物理学家Michel Dyakonov在电气与计算机工程旗舰期刊《IEEE Spectrum》上的一篇文章中提出了一系列技术理由,说明为什么永远不会建造出实用的量子超级计算机。
接下来的正文部分我打算以翻译为主的理解这篇文章。我的评论和想法会以红字标出,最后会有总结。原论文链接
正文:
量子计算风靡一时。似乎每天都会有一些新闻媒体描述这项技术所承诺的非凡的事情。大多数评论员忘记了,或者只是掩盖了这样一个事实:人们已经在量子计算上工作了几十年,没有任何实际的结果可以证明。IBM指出量子计算机可以“在许多学科上提供突破,包括材料和药物发现、复杂系统的优化和人工智能。”微软向我们保证量子计算机将“永远改变我们的经济、工业和学术,记者们一再警告说,量子计算机可能很快就会破坏保护互联网的加密技术。它已经到了这样一个地步:许多物理学领域的研究人员不得不证明他们所做的任何工作都是正当的,他们声称这与量子计算有某种关联。
(感觉技术的进步都一样,听说十几年前多媒体火,所有计算机科学家的title都是多媒体研究者。现在人工智能火,全是人工智能研究者。路教授说的。。。)
与此同时,政府研究机构、学术部门(其中许多由政府机构资助)和企业实验室每年都要花费数十亿美元开发量子计算机。在华尔街,摩根士丹利(Morgan Stanley)和其他金融巨头预计量子计算将很快成熟,并热衷于研究这项技术如何帮助他们。
(我听说过量子/量化经济学的概念,但里面QUANTUM这个词,不知道是不是他们搞市场的搞混了: ),应该不会,随便说一句)
这已经成为一场自我延续的军备竞赛,许多组织似乎都在这场竞赛中,如果只是为了避免被落在后面的话。一些世界顶尖的技术人才,在谷歌、IBM和微软正在努力工作,并在最先进的实验室拥有丰富的资源,以实现他们对量子计算未来的愿景。
(确实许多的相关的报道出来)
有鉴于此,人们自然会怀疑:什么时候才能建造出有用的量子计算机?最乐观的专家估计需要5到10年。更谨慎的预测是20到30年。(顺便说一句,在过去的20年里,也有类似的预测)我属于少数回答“在可预见的未来不会”的人。我花了几十年时间在量子和凝聚态物理方面进行研究,形成了我非常悲观的观点。这是基于对巨大的技术挑战的理解,而要使量子计算发挥作用,就必须克服这些挑战。
(在Michel Dyakonov所发表的论文里,确实有许多有影响力的物理学论文)
量子计算的概念最早出现在将近40年前的1980年,当时出生于俄罗斯的数学家尤里·曼宁(Yuri Manin),现在在波恩的马克斯·普朗克数学研究所(Max Planck Institute for Mathematics)工作,他首次提出了这个概念,尽管形式相当模糊。然而,当加州理工学院的物理学家理查德·费曼(Richard Feynman)在第二年独立提出这一概念时,这一概念真的出现了。
Feynman意识到当被监视的系统变得过于复杂时,对量子系统的计算机模拟就不可能进行了,他提出了计算机本身应该以量子模式运行的观点:“大自然不是经典的,该死的,如果你想对大自然进行模拟,你最好把它变成量子力学,天哪,这是个很好的问题,因为看起来不那么容易,”他说。几年后,牛津大学物理学家大卫·德伊奇正式描述了一种通用量子计算机,一种通用图灵机器的量子模拟。
(我之前简单了解过量子计算机,不过确实了解的也不深入,经典的pc机利用0和1来获取数据。这些数字可能是电路中完全不同部件上的电压。然而,量子pc在量子比特上工作。可以把它们想象成与振幅和截面有关的波。用这个来表示0或1)
不过,直到1994年,数学家彼得·肖尔(当时在贝尔实验室,现在在麻省理工学院)提出了一种理想量子计算机的算法,这种算法可以比传统计算机更快地计算出非常大的数。这一杰出的理论成果引发了人们对量子计算的极大兴趣。成千上万的研究此后,有关这一主题的论文(大多是理论性的)不断发表,并且不断以越来越快的速度发表。
(我看了一下学术搜索引擎的统计,确实如此)
量子计算的基本思想是以一种与传统计算机完全不同的方式存储和处理信息,传统计算机是以经典物理学为基础的。简单地说,传统的计算机是通过操纵大量的小晶体管来工作的,这些晶体管基本上起到开关的作用,在计算机时钟周期之间改变状态。
因此,经典计算机在任何给定时钟周期开始时的状态可以用与单个晶体管的状态物理对应的长比特序列来描述。对于N个晶体管,计算机可能处于2N种状态。这种机器上的计算基本上包括根据规定的程序,在“开”和“关”状态之间切换一些晶体管。
在量子计算中,经典的两态电路元件(晶体管)被称为量子比特(quantum bit)的量子元件所取代。和传统的位一样,它也有两种基本状态。虽然各种物理对象可以合理地用作量子比特,但最简单的用途是电子的内部角动量,或自旋,它具有在任何坐标轴上只有两个可能投影的特殊量子性质:±1/2或1/2(以普朗克常数为单位)。无论选择的轴是什么,都可以表示电子自旋的两个基本量子态。
(大概就是量子比特如何表示0和1吧)
这就是事情变得奇怪的地方。有了量子比特,这两种状态并不是唯一可能的。这是因为电子的自旋态是由量子力学波函数描述的。这个函数包含两个复数α和β(称为量子振幅),作为复数,有实部和虚部。这些复数α和β都有一定的量值,根据量子力学的规则,它们的平方量值必须加起来等于1。
这是因为这两个平方量级对应的概率,当你测量电子的自旋时,它处于基本态↑和↓。因为这是唯一可能的结果,两个相关的概率加起来必须是1。例如,如果发现电子处于↑状态的概率是0.6(60%),那么在↓状态找到它的概率必须是0.4(40%),其他的都没有意义。
与经典比特不同,只能处于其两个基本态中的一个,量子比特可以处于可能态的任何一个连续系统中,由量子振幅α和β的值定义。这个性质经常被一个相当神秘和令人畏惧的说法描述,一个量子位可以同时存在于它的两个状态。
(这里由于触及到知识的盲区,所以翻译可能不是太好,原文链接在引言部分)
是的,量子力学经常违背直觉。但是这个概念不应该被困在这样令人困惑的语言中。相反,考虑位于X-Y平面中的矢量,并在X轴上倾斜45度。有人可能会说这个向量同时指向x和y两个方向。这种说法在某种意义上是正确的,但实际上并不是一种有用的描述。在我看来,把一个量子比特描述为同时处于↑和↓两种状态,同样没有帮助。然而,对于记者来说,这样的描述几乎已经成为一种惯例。
(大佬都喜欢抨击记者。。。)
在一个有两个量子位的系统中,有22个或4个基本状态,这些状态可以被写入(↑↑)、(↑↓)、(↓↑)、(↓↓)。很自然,这两个量子位可以用包含四个复数的量子力学波函数来描述。在N个量子位的一般情况下,系统的状态是由2的n次方个复数来描述的,这些复数的平方大小都必须等于1。
虽然在任何给定时刻具有N个比特的传统计算机是量子比特的同数量下的一个很小的子集(这里采用意译,不知道理解的对不对),但具有N个量子比特的量子计算机的状态由2的N次方个量子振幅的值来描述,2的N次方个量子振幅是连续参数(可以取任何值,而不仅仅是0或1)。这是量子计算机所谓的力量的起源,但也是它非常脆弱和脆弱的原因。
在这样一台机器中,信息是如何处理的?这是通过应用某些被称为“量子门”的变换来实现的,这些变换以精确和可控的方式改变这些参数。
专家估计,一台有用的量子计算机所需的量子比特数在1000到100000之间,而这台计算机在解决某些有趣的问题方面可以与你的笔记本电脑相媲美。因此,描述这样一个有用的量子计算机在任何给定时刻的状态的连续参数的数目必须至少为2的1000次方,也就是说,大约为10的300次方。这确实是一个很大的数字。有多大?它比可观测宇宙中的亚原子粒子数量多得多。
重复:一台有用的通用量子计算机需要处理一组连续参数,这些参数大于可观测宇宙中的亚原子粒子数。
(这里我觉得可以作为第一个造不出通用量子计算机的原因,但我想这里未来应该会有一种巧妙的方式去处理。)
在描述未来可能的技术时,一个固执的工程师失去了兴趣。但让我们继续。在任何现实世界的计算机中,都必须考虑错误的影响。在传统的计算机中,当一个或多个晶体管本应打开时被关闭,或反之亦然时,就会出现这种情况。这种不必要的情况可以使用相对简单的错误纠正方法来处理,这种方法利用了硬件中内置的某种程度的冗余。
(大佬还挺幽默的)
相比之下,如何控制10300个连续参数的误差是完全无法想象的,这些参数必须由一台有用的量子计算机处理。然而量子计算理论家已经成功地说服了公众这是可行的。事实上,他们声称所谓的阈值定理证明了这是可以做到的。他们指出,一旦每个量子门的每个量子比特的误差低于某个值,就有可能进行无限长的量子计算,代价是大大增加所需的量子比特数。他们认为,有了这些额外的量子位,就可以通过使用多个物理量子位形成逻辑量子位来处理错误。
每个逻辑qubit(量子比特)需要多少物理qubit?没有人真正知道,但估计通常在1000到100000之间。结果是一台有用的量子计算机现在需要一百万甚至更多的量子比特。而定义这台假设量子计算机器状态的连续参数的数目,已经超过了1000个量子比特的天文数字,现在变得更加荒唐。
21世纪初,应高级研究与发展活动(美国情报界的一个资助机构,现在是情报高级研究项目活动的一部分)的要求,量子信息领域的一个杰出专家小组制定了量子计算的路线图。它在2012年的目标是“需要大约50个物理量子位”和“在容错量子计算所需的全部操作范围内执行多个逻辑量子位,以便执行相关量子算法的简单实例……”现在是2019年,这一能力仍未得到证明。
大量关于量子计算的学术文献对于描述用实际硬件进行实验的研究特别有帮助。目前很少有组织或团体能够有实力组织实验,据报道,这种行为极难进行,必须得到尊重和钦佩。
这种原理证明实验的目的是展示进行基本量子运算的可能性,并展示已设计的量子算法的一些元素。用于它们的量子位数小于10,通常为3到5。显然,从5位到50位(由ARDA专家小组为2012年设定的目标)是很难克服的实验困难。很可能它们与一个简单的事实有关,即2的5次方=32,而2的50次方=1125899906842624。
(看到这里我理解目前报道的使用多少个量子位比如50或100,实际都是一共加起来的,包括容错。 实际用于计算的量子位也就三个到五个)
相比之下,量子计算理论在处理数以百万计的量子比特方面似乎没有遇到任何实质性的困难。例如,在误差率的研究中,人们考虑了各种噪声模型。已经证明(在某些假设下)由“局部”噪声产生的误差可以通过精心设计和非常巧妙的方法来修正,其中包括大量的并行性,成千上万的门同时应用于不同的量子位对,同时进行成千上万的测量。
十五年前,ARDA专家小组指出,“在某些假设下,已经确定,如果每个门操作都能达到阈值精度,量子误差修正将允许量子计算机无限期地计算。”,关键词是“在一定的假设下”。著名专家小组没有说明,但是,要解决这些假设是否能得到满足的问题。
我认为它们不能。在物理世界中,连续的量(无论是电压还是定义量子力学波函数的参数)既不能精确测量也不能精确操纵。也就是说,任何连续可变的量都不能有一个精确的值,包括零。对一个数学家来说,这听起来可能很荒谬,但正如任何工程师所知,这是我们生活的世界中不容置疑的现实。
(尤其是计算机科学与技术,我觉得这种不能离散的变量,要得多么精确的测量或采样啊)
当然,离散量,比如教室里的学生人数或处于“开”状态的晶体管的数量,都可以精确地知道。对于连续变化的数量,情况并非如此。这个事实解释了传统的数字计算机和假设的量子计算机之间的巨大差异。
事实上,理论界对量子位制备到给定状态、量子门的操作、测量的可靠性等所作的所有假设都无法完全实现。它们只能以有限的精度接近。所以,真正的问题是:需要什么样的精度?比如说,2的平方根(一个进入许多相关量子操作的无理数)必须以什么样的精确性在实验上实现?它应该被近似为1.41还是1.41421356237?还是需要更精确?对这些和类似的关键问题没有明确的答案。
(前面的想法得到了肯定)
虽然目前正在探索各种建造量子计算机的策略,但许多人认为最有前途的是最初由加拿大的一个公司研发的D波系统,现在正被IBM、Google、Microsoft和其他公司所追捧,它的基础是使用由Josephson结相互连接的量子系统。通常要求冷却到非常低的温度(大约10毫开尔文)。
最终目标是创建一个通用量子计算机,一个可以在使用Shor算法分解大量数据方面胜过传统计算机的计算机,Shor算法是由一个著名的量子计算算法,Grover于1996年在贝尔实验室开发,以及其他适用于量子计算机的专门应用。
在硬件方面,目前正在进行高级研究,最近已经制造和研究了49位芯片(英特尔)、50位芯片(IBM)和72位芯片(谷歌)。这项活动的最终结果并不完全清楚,特别是因为这些公司没有透露他们工作的细节。
虽然我相信这样的实验研究是有益的,并可能导致更好地理解复杂的量子系统,但我怀疑这些努力是否会产生一个实用的量子计算机。这样一台计算机必须能够在微观层面上以极高的精度进行操作,这是一个物理系统,其特征是一组难以想象的庞大参数,每一个参数都可以具有连续的值范围。我们能学会控制10的300次方多个连续可变的参数来定义这样一个系统的量子态吗?
我的回答很简单。不,永远不会。
我相信,与表面上相反,量子计算的热情已经接近尾声。这是因为几十年是技术或科学中任何一个大气泡的最大寿命。经过一段时间后,许下了太多未兑现的承诺,任何关注这一主题的人都开始对即将到来的突破性进展感到恼火。更重要的是,到那时,该领域所有的终身教职人员职位都已被占据。支持者的年龄越来越大,热情也越来越低,而年轻一代则在寻求全新的、更有可能成功的东西。
所有这些问题,以及我在这里没有提到的其他一些问题,都对量子计算的未来提出了严重的怀疑。在用少量量子位进行的初步但非常困难的实验和极其发达的量子计算理论之间存在着巨大的差距,后者依靠操纵数千到数百万个量子位来计算任何有用的东西。这一差距不太可能很快缩小。
在我看来,量子计算研究人员仍应注意IBM物理学家Rolf Landauer几十年前在该领域首次升温时提出的警告。他敦促量子计算的支持者在他们的出版物中加入一个这样的免责声明:“这个方案,和所有其他量子计算方案一样,依赖于推测性技术,其当前形式没有考
(突破性的进展如果有。并且足够大,可能才能够让人有更大的信心)
总结:
这篇文章从技术角度,总结了不能实现量子计算的原因:
- 一个量子计算位,需要更多的辅助量子位去容错。这会导致可用的量子计算机需要的量子位远远多于人们想象,而目前才一百个不到。
. 量子计算的许多边角的理论其实还没提出,比如理论界对量子位制备到给定状态、量子门的操作、测量的可靠性等所作的所有假设都无法完全实现。它们只能以有限的精度接近。所以,真正的问题是:需要什么样的精度?比如说,2的平方根(一个进入许多相关量子操作的无理数)必须以什么样的精确性在实验上实现?它应该被近似为1.41还是1.41421356237?还是需要更精确?对这些和类似的关键问题没有明确的答案。
. 目前的工艺技术做到符合人们想象的量子计算机还太远。而量子计算机架构又没有什么新的进展。
. 现代科学研究最火热的时期就几十年,量子计算从提出到现在已经好久了,如果工业一直没有进步的话,就会导致后继无人。
对我个人来说,这篇文章也是有着挺大的意义,首先这是一篇IEEE的旗舰期刊论文,因此具有一定的权威性。所以能够保证知识的相对正确。
其次,这篇论文是我一直感兴趣却有没有了解过的量子计算机领域,自己动手翻译他,并且仔细了解过后,发现量子计算机和自己理解的完全不一样。还是一个没有足够理论支持的架构。
最后,计算机体系结构确实很重要,量子计算机未来也许也会衍生出与众不同的量子计算机体系结构。
最后的最后,我大胆预测一下,集成电路的计算机不会在通用量子计算机出现后落伍,至于为什么,感觉这个东西其实挺奇妙的。我觉得可能量子计算机在处理传统业务的时候,会不如传统计算机。