量子计算机究竟是什么

回形针PaperClip2021-01-07
「九章」量子计算原型机在上个月面世,今天我们用硬币,向你解释量子计算机的基本原理。

编者按:本文来自微信公众号“回形针PaperClip”(ID:papercliptv),作者:夕法,36氪经授权发布。

北京时间 12 月 4 日,「九章」横空出世。

这是由中科大潘建伟团队与中科院上海微系统与信息技术研究所、国家并行计算机工程技术研究中心合作,构建出的 76 个光子的量子计算原型机。

今天,我们将用几枚硬币,向你解释量子计算机的基本原理。

我们现在使用的计算机软件,背后是一行行代码,它们最终转化成各种逻辑门,控制底层的一个个二进制数—— 0 和 1。

这个基本单位叫做比特,在经典计算机里,每个比特要么是 0,要么是 1。而量子计算机不同,每一个量子比特既可以是 0 是 1,也可以变成 0 和 1 的叠加态。

什么是叠加态?让我们掏出一枚硬币,看看它表面是什么图案。

抛一万次,五千次看到花,五千次看到字。所以,硬币表面的图案既有花又有字?未必,如果硬币的表面是既有花又有字,为什么一枚硬币的花和字,从未同时出现我们眼前,而是变幻莫测,随机出现?

学者们挠挠头,最终严谨作答:硬币的图案既是花又是字,花态和字态共同存在于硬币中。但不是一般的同时存在,而是由 50% 的花态和 50% 的字态叠加起来的。图案的状态,是花态和字态的叠加态。

是不是觉得很离谱?

事实上,叠加态正是这样一种无奈的描述。当研究者用同样的实验方法,打出来的电子有时在这儿有时在那儿,光子有时走这条缝有时走那条缝,最终只能挠挠头无奈地说,它们的运动方式和最终位置都是由不同的态概率叠加起来的。

看似不能相容的状态,却共生一体,我们描述它为:叠加态——不同态概率叠加的状态。没有人知道为什么会这样。

将上 帝的硬币在指尖翻来覆去,在这样的三维空间中,花和字一体两面,同时存在于硬币表面。但单用肉眼去看,或者拍一张二维的硬币照片,我们只能看到硬币的某一个面。

Coin Toss, Harold E. Edgerton, 1965. MIT Museum

因此学者猜测,也许是因为我们的世界恰恰是更高维世界的投影,所以每次观察和测量到的位置、速度,都只是随机地看到它不同的投影。

不过放心,这种现象只有在微观世界里能够比较明显地观测到。像一元硬币这么大的物体,只要角度和力度不变,抛出的花色都是一样的。

好,让我们继续。再掏出三枚硬币,制作一台计算机。

用三枚硬币的两面分别表示 0 和 1,那么总共有 8 种二进制组合,分别代表 0~7。能力有限,就只做个简单的测试吧,找出其中的偶数。

用人脑简单分析:三位数的二进制转化成十进制,很快发现,只要第三位数是 0,这个数就是偶数,是 1 则为奇数。

如果把这个问题交给经典计算机,它会这么做:

先把硬币按 000 放好,判断第三枚硬币。是 0,就让第四枚硬币显示 1,表示这个数是偶数;反之则让第四枚硬币显示 0,表示奇数。

按 001 放好,判断。

……

按 111 放好,判断。

直到 8 个数都过了一遍,判断结束,得到以下结果:

是不是有点笨?而量子计算机是这么做的:

同样先把硬币按 000 放好,使用一种基本逻辑门操作——阿达马门(Hadamard Gate),让每个硬币变成 50% 的 0 和 50% 的 1 的叠加态。

简简单单的 000,此时就变成了一个长长的叠加态:

这样,仅用三枚硬币,就能同时携带 0~7 这 8 个数字的信息。

第四枚硬币登场,先按 1 朝上放好。

接下来做些事情,让第四枚硬币听第三枚硬币的话。只要第三枚硬币是 1,第四枚硬币就会翻个身,显示 0;反之保持 1 不变。

这里使用了另一种逻辑门操作——受控非门(CNOT Gate),让第三枚硬币的状态影响第四枚硬币,它们就像一正一反缠在一起,形成纠缠态。

到这里,硬币们已经同时携带了完整的 8 个数字以及各自的判断结果:

经典计算机需要运行八遍,而量子计算机只要一遍。这就是量子计算机高速的原因:同时对所有概率进行运算,这是真正的,并行运算。

经过以上操作,量子计算机的四枚硬币得到了一个叠加态:12.5% 的(000 1+001 0+010 1+011 0+100 1+101 0+110 1+111 0)。

设计算法,让第四位为 0 的态消失,得到 25% 的(000 1+010 1+100 1+110 1),此时的叠加态都是我们要找的偶数了。

到此为止,心满意足。正准备输出结果时,问题来了。

四个态,也就是这四个偶数,输出一次只能得到随机的一个偶数。就像抛硬币,拍定后只能随机看到一种花色。

一测量,叠加态就会被破坏,要进行第二次输出只能从头再来。如果运气不好,第二次结果和上次一样就白算了,得运行第三次……不知猴年马月,才能集齐所有解。

回到现实,这就是量子算法面临的问题之一。即便优化算法,让它每次输出不一样的结果,也至少需要四次才能得到完整的答案。比起经典计算机的八次,似乎没有简便多少。

毕竟,量子计算机并非神器,它的算力只在部分问题上一骑绝尘。

在海量的数据里找一两个满足条件的解,比如大数分解质因数(银行密码破解)、数据搜索这样的问题就非常适合使用量子计算机。

反之,仅让它们怼着一个数算加法,量子计算机并不能展现出太大优势。

此外,硬件也是关键。

量子计算机需要找一个量子效应明显的微观物理体系,实现计算机的基本功能。就像用电子的高低能级来表示 0 和 1,实现上面提到的基本逻辑门。

但要找到这样一个能被精准控制的物理体系并不简单。

第一,叠加态并不稳定。外界电场磁场的微小干扰或自身的活泼好动,都会让叠加态从 50% 的 1 + 50% 的 0,变成 40% 的 0 + 60% 的 1。从做好这个态到变质的时长,叫做相干时间。

相干时间不够长,可能连一次运算都做不完。

第二,计算结果可能不精准。尽管设计精妙,但由于运算过程中的环境干扰和操作失误,最终只有 80% 的成功率能算出正确结果。这个 80% 叫做保真度。

保真度不够高,算出的答案也不可信。

如今,正在探索和开发的物理体系有离子阱、超导、半导体等,「九章」使用的是光学体系。不过,「九章」目前只在高斯玻色取样问题上解得飞快,并不属于一般意义上可编码的量子计算机。

「九章」量子计算原型机光量子干涉实物图

(来源:中国科学技术大学;摄影:马潇汉/梁竞/邓宇皓)

每一个物理体系表示 0 和 1、实现逻辑门的方式天差地别,它们在相干时间、保真度、可扩展性这些重要指标上也各有优劣。

因此,与其说研发量子计算机,不如说是学者们百花齐放,在各自的物理体系上开发功能,谁也不知道哪个体系能真正发展出成熟的可商用量子计算机。

参考资料:

[1] Nielsen, M. A. & Chuang, I. L. (2004). Quantum Computation and Quantum Information.

Cambridge University Press.

[2] Zhong, H. S., et al. (2000). Quantum computational advantage using photons.

Science, 370(6523): 1460-1463.

+1
5

好文章,需要你的鼓励

参与评论
登录后才能参与讨论哦...
后参与讨论
提交评论0/1000

请回复有价值的信息,无意义的评论将很快被删除,账号将被禁止发言。

文章提及的项目

36氪APP让一部分人先看到未来
36氪
鲸准
氪空间

推送和解读前沿、有料的科技创投资讯

一级市场金融信息和系统服务提供商

聚焦全球优秀创业者,项目融资率接近97%,领跑行业