量子计算机九章:6亿年计算,它只需200秒,为什么那么快?

12月3日,《科学》上发表了一篇关于量子计算机的重磅论文,中国潘建伟、陆朝阳等组成的研究团队和中科院上海微系统所、国家并行计算机工程技术研究中心合作,构建了76个光子的量子计算原型机“九章”,其已经实现了具有实用前景的“高斯玻色取样”任务的快速求解!

其速度比目前的超级计算机计算速度快一百亿倍,比去年谷歌发布的53个超导量子比特计算机“悬铃木”快一百亿倍,中国的量子计算机已经达到了事实上的“量子霸权”!

量子计算机和传统计算机到底有什么差别?

传统的计算机经典架构是冯诺依曼定下的,包括运算器、控制器、存储器和输入输出设备组成,当前约束计算机速度前进的最关当然是运算器和控制器,也就是我们所谓的中央处理器CPU,无论输入的是什么数据,到了中央处理器就只有两个信号,一个低电平,一个高电平,分别代表0和1。

没错,冯诺依曼经典结构的就是用的就是二进制,它是可以用门电路操作的,与或非三个结构就构成了CPU中最基本的单元,每运算一步它就会丢弃掉一个电平信号,当然那就是计算结果中不需要的部分,因此这个逻辑电路运算时会一步步往下走,到最后出现一个结果,此时那个丢弃掉的电平就耗散在CPU内部,这是CPU发热的原因!

所以传统计算机的CPU有两个缺点,第一个是计算是串行的,只能排队,无法同时开始,或者你可以同时设置多路,但原理上还是串行的。第二个就是传统CPU无论怎么设计都逃不过一个命运就是发热,这是被抛弃的那些电平冤魂的呼喊,你不要我,我就死给你看,热死你!

量子计算机的原理是什么?

量子计算机中的0和1用什么来表示呢?比如自旋1/2粒子,选定两个相互正交的本征态,分别以 |0>(采狄拉克标记右括向量表示)和 |1>表示,当对此系统做投影式量子测量时,会得到的结果必为这两个本征态之一,以特定几率比例出现。

两个本征态|0 >和|1 >以及无限多个线性叠加态|Ψ>=α|0 >+β|1>,集合起来就是一个量子比特。

和传统计算机的0和1相比,量子比特的0和1又有什么特点呢?

在传统计算机的一个比特就是一个与非门,不是0就是1,但在量子计算机中一个量子比特除了表示0和1以外,还有“0和1叠加态”,简单的说如果只有2个比特,那么传统计算机的处理方法办法是只能处理00/01/10/11四个二进制数中的一个。

但量子计算机不是这样,它可并行处理全部四个数,得到四倍于传功计算机的计算速度,当然传统计算机也可以用“多核心”方式来达到这个结果,但量子计算机只要多增加一个比特,就能取得2倍于传统计算机的优势,这和增加“处理核心”这种暴力方式成本要更低,速度增加却更快(计算速度指数级增长)。

量子计算机这么NB,为什么还没有普及?

问题的关键终于来了,量子计算机的无比快速计算过程依靠的都是叠加态,到最后得出的结果仍然是叠加态,要知道结果必须进行测量。

比如a|0> + b|1>, 量子态就会突然处于|0> 或者 |1>,这是一个概率过程,量子力学中成为塌缩,一个叠加态只能被测量一次,所以想要知道结果必须进行多次测量,重复计算,浪费了量子计算机的算力!

1994年,数学家Peter Shor设计出了基于量子比特的质因数分解算法,这是第一个可以超越传统计算机的量子算法,基于质因数分解的RSA密码将会非常容易破解,比如用超级计算机来分解一个400位的大数大约需要60万年。但如果你用量子计算机来计算只需要几个小时甚至几十分钟就能完成计算。

Peter Shor的算法是并不是唯一的量子算法,除了秀尔算法外还有Grover/Long算法(数据库搜索)和量子退火算法等。

但必须要面的一个问题依然是量子比特纠错,用量子比特进行计算,是基于概率的,这就存在一个误差,所以这就需要牺牲更多的量子比特来纠错,这就是量子纠错码,比如当年的GOOGLE量子霸权72量子比特量子计算机,其实只是物理层面的72量子比特,它并不能同时进行逻辑运算,整整的逻辑比特得除以8,也就是9个量子比特,每8个一组进行逻辑运算,而且准确度只有80%左右!

72比特量子芯片的结构图,Bristlecone只有72个结

量子计算机的技术实现类型

根据量子比特的特性,一般有量子电路、单向量子计算机以及绝热量子计算等几个类型,而已经在研制中的量子计算机技术类型有量子退火、量子点、超导回路以及囚禁离子与钻石空缺和拓朴量子比特等,这些结构就不一一介绍了,优缺点如下图:

量子计算机的技术实现类型和主要攻关公司

几种量子计算机的类型

中国的“九章”量子计算机和谷歌的Sycamore“悬铃木”有多少差异?

谷歌在“悬铃木”之前推出的是72比特“Bristlecone”(狐尾松)量子芯片,当然上文已经解释过了,8个量子比特一组,真正参加逻辑比特运算的只有9个量子比特,但“悬铃木”不一样,Sycamore总共有142个量子比特,不过有88个量子比特用作耦合器工作,另外有53(有一个是坏的)个量子比特作为逻辑运算!

Sycamore用了88个量子比特仅作为耦合器工作,而另外54个罗吉比特作为运算

很明显这已经超过了实现量子计算优势的50个量子比特要求,在某些计算上它已经能超过传统计算机!不过“悬铃木”采用的是超导体系,它必须全程在-273.12℃(30mK)的超低温环境下运行,并且在计算随机线路采样问题上,存在样本数量的漏洞。

我国的量子计算机“九章”使用的是光量子计算,和超导体系相比,它更容易实现常温操作,它的原理如下:

光量子计算是通过光学逻辑门进行操作,主要通过光学偏振片实现,而超导方案则是通过射频信号来实现,其次,光学量子计算主要以光子的偏振自由度、角动量等作为量子比特的变化量测对象,而超导量子计算基于约瑟夫森结,可以是 flux 或者 charge 作为量子比特。

和原子、离子、超导电路等类型的量子计算机相比,光量子计算方式运算规模巨大,其最大的优势为可在室温下、空气中运行,能克服量子噪声极限,结构亦相对比较简单,但它的缺点是在量子比特增加上要比超导体系的量子计算机更难。

“九章”量子计算原型机光路系统原理图

但“九章”量子计算机已经实现了76比特的量子逻辑运算,它的算力有多强?

在室温条件下运行计算玻色采样问题,“九章”处理5000万个样本只需200秒,超级计算机需要6亿年;处理100亿个样本,“九章”只需10小时,超级计算机需要1200亿年,不过宇宙诞生至今不过约137亿年。

而采用超导体系的谷歌“悬铃木”,上文所说的样本数量漏洞就表露无遗,比如在计算随机线路采样问题时,处理100万个样本“悬铃木”只需200秒,但在处理100亿个样本时,“悬铃木”要花上20天,不如经典计算机更快(只需2天),请注意,本例不是玻色采样。

量子计算机的比特增加N,它的速度会增加2^N,所以速度是指数级增加的,我们也不用高兴太早,在初期量子霸权的争夺中,彼此之间的技术路线和操控的量子比特差异可能会相差不大,但计算速度会非常恐怖,因为这个指数级别增加表现在速度上就太让人惊讶了!

“九章”在实验中拿到了目前最强经典计算机万亿年才能给出的计算结果,这让全世界科学家无比震撼,它改变了当前世界量子计算机的格局!

陆朝阳介绍“九章”最新进展

所以才会有科学家用多宇宙理论来解释量子计算机那么强大的能力,比如一个250量子比特的存储器(由250个原子构成)可能存储的数达2^250,比现有已知宇宙中的全部原子数还要多,是不是很惊讶?(“九章”输出量子态空间规模达到了 10^30(“悬铃木”输出量子态空间规模是 10^16,目前全世界的存储容量是 10^22))

不过现在的量子计算机技术路线仍然是专用计算,比如唯一实现商用的D-Wave量子计算机,也是使用量子退火技术的非通用计算机,业界估计,在2030年前,仍然只能是非通用量子计算机路线。