||
谷歌公司最近宣布了“量子霸权”的首次实验验证,是最近最轰动的科学新闻。John Martinis领导的科学团队,利用53个超导量子比特构成了一个量子随机网络,可以在200秒里实现经典计算机1万年才能完成的任务(IBM的工作表明,只需要两三天)。
关于这个工作,我看了一些资料,下面再总结一些重要的数据:
2019年10月23日,研究论文发表于Nature,同期还有一篇新闻评论,量子计算芯片的照片也出现在该期封面上。
研究论文共7页,补充材料67页。这就是一本书了。
量子计算芯片位于稀释致冷机里,温度低于20mK。
这个芯片其实由两个硅片构成:一个上面沉积了铝膜,制成了超导量子比特电路;另一个是控制电路;倒装焊技术用铟把二个电路结合在一起。
这个芯片总共有53个超导量子比特(transmon qubit,设计了54个,$6\times 9$的阵列,但是有一个坏掉了)。共振频率都在5-7GHz。每个量子比特有两种独立的控制方式:用微波来激发它;用磁通来调节其共振频率。
每两个相邻的量子比特之间都有1个耦合器(coupler,一共88个,$11\times 8$的阵列,但是只用了86个,因为有一个量子比特坏掉了,不需要跟它连接了)。可以将相邻两个量子比特的耦合从0调到40MHz。
这些量子比特和耦合器共同构成了一个量子随机网络。每个量子比特和耦合器都可以同时、独立地操作。每6个量子比特共用一条数据总线,这6个比特是一起读了。共有144条微波同轴电缆与外界相连(4侧各有3排12个连接头)。
为了实现完全的控制,使用了277个数模转换器(DAC,14bit at 1GHz)。使用了两级低温放大器来增强信号。使用频分复用技术,可以一次就读出所有量子比特的状态。
因为每个量子比特和耦合器都可以单独操控,所以,就可以独立地调节其工作点,检查其误差率。因为涉及到的器件数目太多了,所以有特制的芯片和算法来自动化地进行测量、校准和优化。
每个量子比特的错误率是0.15%(单独工作的时候)和0.16%(整体运行的时候,即整个电路的其他部分在随机工作);每个耦合器的错误率是0.36%(单独工作)和0.62%(整体运行);为了得到最终结果,量子芯片需要多轮操作(最多达到20轮),在这种情况下,每个耦合器的错误率是0.65%(单独工作)和0.93%(整体运行);读状态这个操作的错误率是3.1%(单独工作)和3.8%(整体运行)。
量子随机网络的工作流程,以53个量子比特、20轮耦合操作为例。
首先,把耦合全部断开,对每个量子比特进行同时、独立的随机操作,利用伪随机数产生器来决定采用三种量子操纵中的哪一种,这就是Single-Qubit操作;接下来,把21个(或者22个)耦合器同时打开,让两个量子比特耦合起来(每个量子比特最多只能与另外一个发生耦合),这就是Two-Qubit操作。这样就是一轮了。
再对每个量子比特进行随机操作,接着打开21个(或者22个)耦合器,但是这次打开的耦合器与上一轮不一样(有一套具体的规则来决定打开那些耦合器)。这就是第二轮了。
如此操作20轮。
最后一次操纵单个量子比特,为读取其状态做准备。
读取量子比特的状态。
总计,1113次单量子比特操作(21轮,每轮53次),430次双量子比特操作(20轮,每轮21或22个),9次读操作(一次可以读6个)。
这样的一套操作下来,需要大约几微秒的样子。得到的结果是一串0、1的数字,一共53位。这就是一次量子模拟了。这样的量子模拟要重复几百万乃至几千万次,然后再和经典计算机得到的结果进行对比。
谷歌说的200秒,指的就是把这样一套操作(53个量子比特,20轮随机操作,1次读取状态)做了3000万次。他们还说,这里面90%的时间是用来传递数据的。
如何对比量子随机网络和经典计算机的结果呢?用交叉熵方法(cross-entropy benchmarking)进行验证。大致是这样的。
有一种模型可以用经典计算机模拟量子随机网络的输出(实际上是两种,但是为了方便起见,就这么说了)。你把运行足够多的次数,就可以得到每种01字符串的出现几率(其实就是出现的频率)。如果你有10个量子比特,那么输出的就是10个或0或1的字符串,比如说1010110001,一共有$2^10=1024$种不同的字符串。对于真正随机的网络,每种字符串出现的几率当然就是1/1024,但是对于量子随机网络来说,就不是这个结果了,而是要以经典计算机模拟得到的几率为准,有的字符串出现的几率大一些,有的小一些。
交叉熵是干什么的呢?简单地说,就是给你你一个数,让你看看量子随机网络得到的结果和经典计算机模拟的结果有多么的符合。它是这样的一个公式
$F_{\mathrm{XEB}}=2^n<P(x_i)>_i - 1$
其中,左边的$F_{\mathrm{XEB}}$就是我们要求的这个数(“交叉熵”),右边的第一项$ 2^n<P(x_i)>_i $是对量子随机网络实验的得到的字符串进行操作,求得实验得到的字符串出现的相对平均几率。对于你得到的每一个字符串$x_i$,去经典模拟结果中查找该字符串出现的几率,然后除以真随机网络的几率$2^{-n}$(这就是第一项里$2^n$的来历。如果你做了一百万次试验,就要对一百万个字符串做这个操作,然后再除以一百万)。最后的结果减去1,就得到了交叉熵。
如果量子随机网络真的像模型描述的那样工作,随机熵$F_{\mathrm{XEB}}$就等于1,而对于一个真正的随机网络,其结果应该是0。
上面这个结论成立的条件是,量子随机网络工作的过程里一点都不出错。如果出错了会怎么样的?研究表明,只要有一个地方出错,量子随机网络的结果就跟真随机网络一模一样了。在几百万次的模拟中,有很多结果跟真随机网络类似,只有少数是量子随机网络的结果,所以,最终得到的随机熵$F_{\mathrm{XEB}}$就介于1和0之间。越靠近0,表示出的错越多。
那么具体如何衡量出了多少错呢?谷歌研究团队的结果表明,很简单,把每个单元都不出错的几率乘起来就可以了。具体示范如下:
53个量子比特,20轮随机操作,1次读取。单比特操作一共1113次,每个操作出错的几率是0.16%,都不出错的几率就是$(1-0.0016)^{1113}=0.168$;双比特操作一共430次,每个操作出错的几率是0.93%,都不出错的几率就是$(1-0.0093)^{430}=0.018$;读操作9次,每个操作出错的几率是3.8%,都不出错的几率就是$(1-0.038)^9=0.705$。总计下来,一个错都不出的几率就是$0.168 \times 0.018 \times0.705 =0.0021$。这就是谷歌团队说的千分之二保真度的来历。
谷歌团队把量子计算芯片得到的结果与经典计算机模拟的结果进行对比,发现系统的保真度就是上面算出来的千分之二。所以他们就得到结论:对于量子随机网络来说,除了单比特操作、双比特操作和读操作带来的错误率以外,不存在其他出现错误的机制了。这是一个非常重要的结论。
“量子霸权”的英文名字是quantum supremacy,其实并没有量子霸权那么虎气,当然也不是“量子优势”那么文雅。谷歌团队的工作只是表明,确实有一个问题,用经典方法不能做(需要的时间和资源太多了),但是用量子计算机可以做。至于这个问题有没有实际意义,并不在考虑之列,因为以前的看法是,即使没有实际意义的问题,也不存在量子计算机能做而经典计算机做不了的情况。提出quantum supremacy这个词的人,就是这个看法,而现在有些批评谷歌工作的人强调说,一定要有意义的问题才行,其实是修改了quantum supremacy定义——至于这个修改有没有道理,就是另一个问题了。
为什么说量子计算机比经典计算机强大呢?对于谷歌解决的这个具体问题来说,经典模拟需要的计算量太大了。就像刚才解释的那样,为了得到交叉熵,你必须知道每个字符串出现的几率,这样就意味着只能采用穷举法。对于53个量子比特来说,可能出现的字符串种类是$2^{53}\approx 10^{16}$。而且这个几率是根据出现的频次推断出来的,这就意味着再做很多次的$10^{16}$模拟。这就是谷歌公司说经典计算机要用一万年才行的原因——当然,IBM公司指出,存在一种更有效率的经典算法,可以在两三天内就得到这个结果。但是,两三天仍然比200秒长得多,而且谷歌公司很快就会推出57比特的量子计算电路,必然会压倒经典计算机了。
谷歌的工作非常了不起,确实验证了量子计算的威力。在我看来,应该是初步实现了费曼在大约40年前的梦想:用人工制造的量子体系来模拟自然界里的量子体系。这其实是个量子模拟计算机,用它可以做很多事情了。非常了不起。根据量子模拟的结果,物理学家还有化学家可以检验他们以前提出的很多理论模型,肯定还可以得到新的启发。采用谷歌团队现在的方案,在可预见的将来,完全可以把量子比特的数目增加到一百个乃至几百个。
同时也要指出,现在这个结果仍然只是一个开始,毕竟这次解决的问题是一个特意构造出来的、没有实际意义的问题。另外,距离数字式的量子计算机还非常遥远,因为为了构建一个可纠错的逻辑量子比特,可能需要几千个谷歌公司现在演示的这种量子比特——这是非常困难的任务。今天看到新闻说,微软公司提出了“拓扑量子”算法,只需要10到100个物理量子比特,就可以构建一个逻辑量子比特,如果是真的,量子计算时代的到来,可能并不会像以前想象的那么遥不可期了。
Archiver|手机版|科学网 ( 京ICP备07017567号-12 )
GMT+8, 2024-11-23 04:42
Powered by ScienceNet.cn
Copyright © 2007- 中国科学报社