“量子霸权”新闻的正确打开方式 | 袁岚峰
2019年9月底,有一条轰动的新闻:谷歌实现了“量子霸权”(quantum supremacy)!
许多人对这新闻的感觉,可能是“霸权”这个词很刺激。是美国对其他国家的霸权?还是谷歌对其他企业的霸权?有些人热血上涌,连阴谋论都出来了。
其实,这条新闻的正确打开方式完全不是这样。首先,量子霸权是一个科学术语,跟政治或商业无关。然后,这个成果还没有得到确认,因为论文还没有正式发表。用描述非典的语言说,现在的状态是“疑似”。
要理解这个新闻,我们需要解读这样几点。
第一个问题是,量子霸权是什么意思?
回答是:量子计算机在解决特定问题上远远超过现有的计算机。
由此可见,量子霸权说的是量子计算机对传统计算机的霸权,而不是国家之间或者企业之间的霸权。如果你不喜欢霸权这个词,那么把它称为压倒性优势或者决定性优势也无妨。
第二个问题是,量子计算机为什么可以远远超过传统计算机?
回答是:因为它们的基本原理不一样。
大家知道,“比特”(bit)是信息科学的基本单元。它指的是一个体系有且仅有两个可能的状态,常常用“0”和“1”来表示,例如硬币的正和反两个面或者开关的开和关两个状态。所以作为一个形象的比喻,比特就是一个开关。
但量子计算机的基本单元却不是比特,而是“量子比特”(qubit)。它不是一个开关,而是一个旋钮。旋钮跟开关的区别在哪里呢?旋钮是连续可调的,你可以把它转到任何一个角度。
这个比喻严格表述,就是量子力学中的“叠加原理”:如果两个状态是一个体系允许出现的状态,那么它们的任意“线性叠加”也是这个体系允许出现的状态。
什么叫做线性叠加?看下面这个图就容易明白。
首先,我们要把一个量子力学中的状态理解为一个矢量。也就是说,它是有方向的。
然后,为了方便书写,我们引进一个符号:左边一个竖杠,右边一个尖括号(|>)。这个符号叫做“狄拉克符号”(Dirac notation)。当我们要表示一个状态的时候,把一些字母或者数字填到狄拉克符号里就可以了。
回头看叠加原理里的第一句话:“如果两个状态是一个体系允许出现的状态。”现在我们可以把这两个基础的状态写成|0>和|1>,它们在图中分别对应两个方向的单位矢量,这两个方向成90度角。
最后,线性叠加就是两个单位矢量按照某种比例的组合,组合的结果可以指向任何一个角度。例如图中的|+>这个态指向45度角,而|->这个态指向135度角,其他某些状态对应25度、100度等等。
了解这些基本原理之后,你就可以明白,一个比特只有两个状态,一个量子比特却有无穷多个状态。因此,量子计算机有可能做到传统计算机做不到的事。
第三个问题是,量子计算机的研究现在是什么状况?
基本状况是:进步迅速,但离实用还远。
这里有个严重的误解,一定要澄清一下。很多科普作品把量子计算机描写得无所不能,但实际上,量子计算机并不是干什么都特别快,而是只对于某些特定的问题才特别快。
可以这样理解:量子比特包含无穷多个状态,这是一个潜在的优势。这个优势是否能发挥出来,是依赖于问题的。对于有些问题,人们设计出了高明的量子算法,它们的表现远远超过传统的算法。而对于其他问题,量子算法并不比传统的算法强。
量子计算机擅长的问题虽然还不是很多,但在其中就有一些非常重要的。
例如最著名的一个叫做“因数分解”,就是把一个合数分解成两个质数的乘积,21 = 3 × 7这种。你不管三七二十一就可以立刻分解21,但当一个数字很长的时候,用传统计算机分解它就非常困难。用数学语言表述,分解一个n位数所需的时间是随着n指数增长的。例如,如果计算机一秒做一万亿次运算,那么分解一个300位的数字需要15万年,而分解一个5000位的数字需要50亿年。
现在最常用的密码体系之一叫做RSA,它就是基于因数分解的困难性来保密的。我公开一个很大的数,如果你能把它分解成两个质数,你就能破解我的密码,但我有信心你在合理的时间内解不开。
但是,对量子计算机来说,因数分解不是难题。1994年,肖尔(Peter Shor)发明了一种量子算法,把因数分解的计算量从指数级别减少到了多项式级别。
因此,量子算法可以把分解300位数字的时间从15万年减到不足1秒钟,把分解5000位数字的时间从50亿年减到2分钟!在这个意义上,RSA密码已经被破解了。
不过,这个破解只是理论上的,因为在实验上我们还没有造出能分解上千位数字的量子计算机。小规模的演示是有的,例如我的科大同事杜江峰和彭新华等人在2017年实现了291311 = 523 × 557。这比以前演示的15 = 3 × 5进步了不少,但离实用还远。
量子计算机这么难造,是因为在物理上有很多难题,包括量子比特的制备、操作、读取和纠错等等。
从积极的一面来说,如果你想从事科研,那么量子计算是大有可为的。这是当今最热的研究领域之一,各国的政府和企业都在大量地投资。谷歌对量子计算的投资一向是领头羊,所以这次它取得重要成果很正常。
于是我们到了第四个问题:谷歌这个成果到底是什么?
让我们从2017年5月的一条新闻说起。当时许多媒体热报,科大的潘建伟和陆朝阳等人造出了一台光量子计算原型机。“光”的意思是它用光来实现量子比特。但这台量子计算机到底做到了什么?大多数人都“不明觉厉”。实际上,它的成就是:第一次对于某个问题超越了早期的电子计算机。
什么问题呢?这个问题叫做“玻色子取样”(boson sampling)。这是一个很偏门的问题,选择它就是因为量子计算机处理它有优势。这台量子计算机在处理“玻色子取样”的时候,比四五十年代的第一台电子管计算机ENIAC和第一台晶体管计算机TRADIC快了10到100倍。
你也许会问:现在随便一台个人电脑都比这些古老的电子计算机快得多,这岂不是说这台量子计算机还远不如现在的个人电脑吗?确实不如,但这并不能否定这个成果的重要性。
研究人员跟我解释过,希望分三步走实现量子计算机对传统计算机的超越:先超越早期的电子计算机,再超越个人电脑,最后超越最强的超级计算机。这样看来,这个成果就是实现了第一步。
好,现在谷歌的成果就是实现了第三步,超越目前最强的超级计算机。这当然也只是针对一个特定的问题的。这个问题也很偏门,是检验一个随机量子线路的输出分布是不是符合预期。简而言之,就是检验一个量子随机数发生器是不是真随机。
一个机智的问题是:如果传统计算机无法重复它的计算,那怎么知道它算的对不对呢?
回答是:先对比较小的量子线路,用量子计算机和传统计算机对照,确认它们的答案一致。然后逐渐增大体系。到某个程度,传统计算机就算不动了,但由于前面的一致,我们相信这时量子计算机的答案仍然是正确的。
了解这些背景之后,你就可以明白这条新闻报道的那些参数了:这台量子计算机用到53个量子比特,花了200秒对一个量子线路路取样一百万次,而现有的超级计算机完成同样的任务需要一万年。
再次提醒大家,这个成果现在的状态是“疑似”。实际上,这篇论文是被谷歌的合作方NASA泄露出来的,谷歌并不想现在就报道,于是撤稿了。想搞大新闻的是NASA,而不是谷歌。如果论文最终通过评审发出来,那么这当然是一座了不起的里程碑。
一直有人从各种角度论证,实用的量子计算机不可能出现。这次的成果虽然还不实用,但显然前进了一大步。至于你是否把它称为量子霸权?那只是个名称问题。下一步的努力方向,就是对某些有实用价值的问题,造出远超传统计算机的量子计算机。
你可能想问:中国在量子计算领域做得怎么样?
回答是:整体上我们是后来者,投入也远低于欧美。在这个前提下,中国正在迅速进步。例如谷歌和NASA的这篇论文就引用了科大的三篇论文,其中一篇是科大和阿里巴巴合作的。实现量子比特的物理体系有多种选择,中国在光学方面一直是世界领先,在超导也就是谷歌这次用的方面紧随其后。
你希望中国的量子计算更快进步吗?请赶快充钱!
最后,许多人一提到量子计算机,就说“它能破解所有密码”。这种观点怎么样呢?
答案非常微妙。
首先,根本不需要量子计算机,只用传统计算机就有可能破解所有基于数学的密码!因为不定哪天,就会有人发明高效的传统算法。
其次,上面说的是潜力,而就现状而言,量子计算机能破解的只是RSA等一部分密码,不是所有密码。
最后,有一类密码是任何计算机都不能破解的,就是量子密码(quantum cryptography),也称为量子保密通信或者量子密钥分发(quantumkey distribution)。因为量子密码保密的基础是量子力学的物理规律,而不是某个数学问题。基于数学的密码才会被计算机破解,基于物理的量子密码是不会被计算机破解的!
总而言之,如果说量子计算机是最强的矛,那么量子密码就是最强的盾。以子之矛攻子之盾,谁胜?回答是:盾胜!
量子密码现在哪个国家最先进呢?回答是中国,我前面提到的潘建伟等人就做出了决定性的贡献。现在,你明白这方面工作的价值了吧?