量子计算机极简科普

量子计算机极简科普

最近一年,我们的手机上被量子计算机的消息各种刷屏。先是去年11月,IBM宣布20量子比特的计算机研制成功,并正在内部测试50量子比特的量子计算机。 接着是INTEL 在2018年初的CES上宣布正在建造49量子位的超导量子芯片。 再加上Google,微软,中国的阿里巴巴,科技巨头纷纷重金投入建造量子计算机的竞赛之中。

spectrum.ieee.org/image

过去的40年,计算机领域的巨大进步给人类社会带来深刻而全面的影响。而这一切背后的引擎是是由科学家和工程师协力打造的摩尔定律,每隔18个月,计算机的性能提高一倍。而如今经过40多年的指数式发展,推动和维持摩尔定律已经越来越困难。人类必须寻找新的抓手来维持信息革命的进一步向前,而量子计算机就是其中最具潜力的一个方向。

量子计算机虽然十分有前途,但是媒体上面的好的科普确实不多,媒体宣传往往以讹传讹,夸大其词。本着简单但不失精准的原则,本文的目的就是去拨开纷繁的迷雾,带您了解最核心的的真实。


经典比特与量子比特

要说清楚量子计算机的原理,必须要搞清楚量子计算机的基本元素量子比特。而量子比特并非从天而降的概念,它是人们熟悉已久的经典比特的扩展。现如今的经典计算机已经十分复杂,但是一个经典计算机的原子计算过程,可以看成是计算单元从输入寄存器读取数据,进行一系列计算之后存储在输出寄出器。 而复杂的计算就是基于对于大量极其简单运算的组合利用。

经典计算机和量子计算机的对应关系

一个经典BIT可以是0或者1,假设输入寄存器有3位,则可以表示2^2 = 4种状态。 4个经典二进制比特的所有状态:00, 01, 10, 11

经典计算机操作是以逻辑门位基本单元,基本的逻辑门包括与门(And gate), 或门(OR gate), 非门(NOT GATE) 等等可以作用在1个或者2个经典比特之上。

而量子比特则是基于量子力学的态叠加原理对经典比特的一种扩展。 量子力学是上个世纪发展起来的描述微观世界的一门学问。量子力学有很多违反直观的原理,可以负责任地说比相对论更加“离经叛道”。 其中态叠加原理就是其中一个极其深刻的原理,根据态叠加原理,一个量子不仅可以处于 0 或者 1 状态,也可以处于 a |态0> + b|态1>的状态。 这种叠加态是不同于 0 或者1的一个新的状态。为了表示量子状态,我使用了一个半边括号的符号 |>,这个叫做狄拉克记号,用来表示量子力学种的状态,这里只用把它们看做一种记号即可。

\phi = c_0* |0\rangle + c_1 * |1\rangle \quad |c_0|^2 +|c_1|^2=1\\

Bloch 球,一个单个量子比特复系数线性空间的一种常用几何表现形式。

上图的Bloch球常常被用来表示单个量子比特的状态。这是一个复系数线性空间的一个很好地例子。两个复数本来有4个自由度,应该是4维度的球面啊?但是由于全局的相因子并没有物理含义,所有可以选取相位让第一个系数等于一个实数。

同样用前面2位的例子,2个量子比特可以表达的状态就多了。 2个量子比特的一般状态是:

\phi = c_0* |00\rangle + c_1 * |01\rangle+ c_2 * |10 \rangle+ c_3* |11\rangle, \sum_{i=0}^{3}{|c_i|^{2}}=1\\

c0到c3是复数系数。 这个状态还有一个更容易的理解方式,抛却物理的含义,这个其实就是一个线性代数里面向量空间的单位向量,而|00>, |01>, |10>, |11> 就是这个向量空间的基矢。

这个量子比特可以表达的状态当然比经典状态要丰富的多。从表达的角度来说,我们只用2个01组成的数字串就可以表示,但是对于一般的量子态我们需要4个复系数才能表示。这个差距会随着位数的增加而扩大, 对于N位的情形,经典比特需要N个01串,而量子态需要 2^N 个复系数。

量子门-量子比特的操作

有了量子比特,下面一步就是要将经典比特上面的操作扩展到量子态上面。这一点在量子力学也已经早有研究,量子门操作可以用幺正矩阵(unitary matrix)表示。同经典的逻辑门有一个隐含的不同在于,所以的量子态操作都是可逆操作。可逆的含义在于操作前后,信息都是完备的,从操作后的状态可以唯一推算出操作前的状态。而经典的逻辑门,比方说与门,或门,是不可能从结果推算出来输入的。

从几何直观的角度看,幺正矩阵代表了向量空间的一个旋转操作。这操作不改变向量的长度,所以球面上的向量还是变换到球面上。

量子计算机的威力在于,如果我们制备一个N个量子位的叠加态,让它处于在2^N状态的叠加状态。然后我们可以通过量子门操作这个叠加态。得到的结果会是2^N状态操作的一个叠加。这个过程会有巨大的并行度,而且是由物理学基本原理所提供的。到目前为止,一切都很美好

量子比特的测量

很多媒体到这来就会趁机鼓吹量子计算机是经典计算机能力的无限倍,但是我们需要谨慎的是,这种丰富的状态只是表明了一种潜力。就好比有人送给你一片热带雨林,里面有丰富的物种资源,但是这个离你将作出重大的植物学动物学发现又有一段距离,并不能划等号。

但是这个看似无比强大的叠加态有一个十分致命的问题,就是我们没有办法直接知道叠加态中各项的系数。而要从叠加态中提取信息,就必须对最后的量子态进行测量。

对于量子态的测量又会引入另外一个神秘的量子力学的原理,叫做测量原理。这个原理说的是, 一旦对处于叠加态的量子态进行测量,比方说a|0> + b|1>, 则量子态就会突然处于|0> 或者 |1>上面,这是一概率的过程,物理学里面叫做塌缩。塌缩到|0>态的概率是a^2, 而处于|1>的概率是 b^2(或1-a^2)。 所以一旦测量,原来的量子叠加态就会塌缩,这个过程是不可逆的。也就是说一个叠加态就只能被测量一次。所以为了知道结果,我们不得不多次重复计算,重复测量,这个过程在很大程度上抵消了量子计算机丰富状态的优势。

量子算法

但是天无绝人之路,物理学家和量子计算机专家们还是通过艰苦的探索,还是找到了一些扬长避短,充分发挥量子计算机优势的方法。从上个世纪80年代初,费曼等人提出量子计算机设想以来,陆陆续续就有一些人为设计的算法面世。这些算法一般都是独具匠心设计出来的,可以让量子计算机比经典计算机跑得快。

直到1994,数学家Peter Shor设计出来基于量子计算机质因数分解算法,这是第一个具有实用价值量子算法。而大数的质因数分解困难是广泛使用的RSA算法的基础。如果可以很轻松的分解一个大数,RSA密码将会很容易被破解。所以SHOR算法也终于让世人看到了量子计算机至少在理论上具有在某些方面超越经典计算机的能力。这也可给了我们更多遐想的空间,是不是还有更多更加奇妙的量子算法等待发现了,在摩尔定律日渐式微的今天,这至少是一线曙光。

量子霸权(quantum supremacy)

量子计算机的实现是十分困难的。承载量子比特都是十分微小的单元,量子纠缠态也极容易受到环境的影响,所有的计算操作都必须在量子纠缠态退化之前完成。直到去年之前,实验上可以操作的量子比特都是十分稀少的。比方说实验上做出了21 = 7 X 3的分解。

而如今可以操作的量子位已经到达50位,似乎已经可以做一些更复杂的算法。现在量子计算机的研究人员又提出了量子霸权的口号和目标。就是要在量子计算机上实现一个可以超越地球上最强经典计算机。就好比一个大赛的黑马,总是需要一个一鸣惊人的场合,淘汰卫冕冠军或者是当今世界第一毫无疑问是个最好的例子。

当然这是不是真正的霸权,也是见仁见智。只是在一个方面超越,特别是如果这个方面并不很重要,是难以服众。要实现真正的霸权,需要证明的更是在很多重要的计算领域,量子计算是不可逾越的。

未来5-10年,很可能是一个非常重要的节点。如果显示一例量子霸权,给世界以更大的希望,则后续的资金和资源还会继续投入,如果还是十年劳而无功,渐渐这个领域就会冷下来。

让我们四目以待。

编辑于 2018-03-09