来源
2004-7-9 21:29:00

量子计算机

量子计算机的概念源于对可逆计算机的研究,其目的是为了解决计算机中的能耗问题。

  20世纪60年代至70年代,人们发现能耗会导致计算机中的芯片发热,极大地影响了芯片的集成度,从而限制了计算机的运行速度。研究发现,能耗来源于计算过程中的不可逆操作。那么,是否计算过程必须要用不可逆操作才能完成呢?问题的答案是:所有经典计算机都可以找到一种对应的可逆计算机,而且不影响运算能力。既然计算机中的每一步操作都可以改造为可逆操作,那么在量子力学中,它就可以用一个幺正变换来表示。早期量子计算机,实际上是用量子力学语言描述的经典计算机,并没有用到量子力学的本质特性,如量子态的叠加性和相干性。在经典计算机中,基本信息单位为比特,运算对象是各种比特序列。与此类似,在量子计算机中,基本信息单位是量子比特,运算对象是量子比特序列。所不同的是,量子比特序列不但可以处于各种正交态的叠加态上,而且还可以处于纠缠态上。这些特殊的量子态,不仅提供了量子并行计算的可能,而且还将带来许多奇妙的性质。与经典计算机不同,量子计算机可以做任意的幺正变换,在得到输出态后,进行测量得出计算结果。因此,量子计算对经典计算作了极大的扩充,在数学形式上,经典计算可看作是一类特殊的量子计算。量子计算机对每一个叠加分量进行变换,所有这些变换同时完成,并按一定的概率幅叠加起来,给出结果,这种计算称作量子并行计算。除了进行并行计算外,量子计算机的另一重要用途是模拟量子系统,这项工作是经典计算机无法胜任的。

  迄今为止,世界上还没有真正意义上的量子计算机。但是,世界各地的许多实验室正在以巨大的热情追寻着这个梦想。如何实现量子计算,方案并不少,问题是在实验上实现对微观量子态的操纵确实太困难了。目前已经提出的方案主要利用了原子和光腔相互作用、冷阱束缚离子、电子或核自旋共振、量子点操纵、超导量子干涉等。研究量子计算机的目的不是要用它来取代现有的计算机。量子计算机使计算的概念焕然一新,这是量子计算机与其他计算机如光计算机和生物计算机等的不同之处。量子计算机的作用远不止是解决一些经典计算机无法解决的问题。

1.1 什么是量子计算机?

  我们目前所使用的计算机,代表了近年来技术进步的顶点,而这个技术进步萌芽于Charles Babbage(1791-1871)的早期思想,并且以德国工程师Konrad Zuse于1941年创造出第一台计算机为开端。  
   但是令人惊奇的是,现在放在我们面前的高速现代化的计算机和它庞大的重达30吨的祖先并没有什么本质的区别,而那台庞大的机器是由18000个真空管和500米的电线构成的!尽管计算机已经变的更加小巧而且一般来说在执行任务时已经快的多,但是计算机的任务却并没有改变:把二进制位(0和1)的编码处理并解释为计算结果。每个位都是一个基本的信息单元,传统上在数字计算机中用0和1代表。每个位的物理实现是通过一个肉眼可见的物理系统完成的,例如硬盘的磁化或电容器中的电荷。例如,包含n个字符并储存在计算机硬盘上的文件是通过一串共8n个0和1描述实现的。在这里存在着传统计算机和量子计算机之间的一个关键的区别。传统计算机遵循着众所周知的经典物理规律,而量子计算机则是遵循着独一无二的量子动力学规律(特别是量子干涉)来实现一种信息处理的新模式。

  在量子计算机中,基本信息单元(叫做一个量子位或者qubit,也叫做昆比特)不同于传统计算机,并不是二进制位而是按照性质四个一组组成的单元。qubit具有这种性质的直接原因是因为它遵循了量子动力学的规律,而量子动力学从本质上说完全不同于传统物理学。qubit不仅能在相应于传统计算机位的逻辑状态0和1稳定存在,而且也能在相应于这些传统位的混合或重叠状态存在。换句话说,qubit能作为单个的0或1存在,也可以同时既作为0也作为1,而且用数字系数代表了每种状态的可能性。这种现象看起来和人的直觉不符,因为在人类的日常生活中发生的现象遵循的是传统物理规律,而不是量子力学的规律,量子规律只统治原子级的世界。下面的图a可以帮助我们更好的理解这个不寻常的概念。

  从某光源发射的光子沿某条路径射向一个一面涂有银的镜子。该镜子使光束分离,其中的一半垂直射向接收器A,另一半则射向接收器B。但是,一个光子作为光的最小单位并不能被分离,所以光子被接收器A或B检测到的机率相等。如果凭直觉我们可能认为光子离开镜子的方向是随机的,或者沿垂直方向,或者沿平行方向。但是,量子动力学告诉我们,光子实际上是沿平行和垂直两个方向同时传播的。

  在一个类似图a的试验中,光子被射向半面镀银的镜子,通过接收器显示出的信号(如果一个接收器有信号,那么其它就没有信号)证实了光子是不可分的。根据这个现象,人们可能认为光子的传播路径或者是垂直,或者是平行,并且随机的在两种路径之中选择一个。但是,量子动力学认为光子的传播实际上是同时沿两个方向进行的,而不是像试验a中所示选择其中一种。这种现象,被叫做单粒子干涉,对这种现象在如图b所示的试验中有更好的阐述。

  在这个试验中,光子首先撞击一个半面镀银的镜子,然后是一个全镀银的镜子,在最终到达接收器之前是另一个半面镀银的镜子,而且是半面镀银的镜子引起了光子沿一条或另一条路径传播的可能性。一旦光子在第一次光柱分离之后沿两种路径之中的任何一条撞击镜子,那么这种现象就和图a中类似,所以人们就会推测光子将等机率的到达接收器A或B。但是,试验b结果显示这种现象实际上使得接收器A的接收率是100%,而接收器B则接收率为0%!那么这是怎么回事呢?

  图b描述的这个有趣的试验证明了单粒子干涉现象。在这种情况下,试验显示出光子总是到达接收器A,而永远不会到达接收器B!如果一个单光子沿垂直方向传播并撞击镜子,通过和图a中的试验相类比,光子被接收器A和B接受的机率应该是相等的。对沿平行方向传播的光子来说也是同样的。但是,试验的结果却有如此巨大的反差。唯一可以得到的结论就是光子在沿两条路径同时传播,并在两条路径的交叉点产生干涉,因此破坏了光子到达接收器B的可能性。这就是已知的量子干涉,干涉的原因是可能的光子态或路径的重叠。所以,尽管只发射了一个光子,但是好像有另一个和它相同的光子存在,并且这个光子沿一条不存在的路径传播,只有当这个光子和原光子路径相交因此发生干涉时才能够被发现。例如,如果两条路径中的一条被一个吸收屏阻挡,那么接收器B才开始像在试验a中一样显示出信号。量子的这个独特的性质使得当前在量子计算机中的研究不仅是今日计算机思想的延续,而且也是这个思想的一个全新分支。是量子计算机利用这些特殊的性质赋予了计算设备潜在的难以置信的威力。

  但是,令人惊奇的是,量子计算机的外观并不同于我们现在所使用的计算机,它看起来可能更象放在计算机旁边的咖啡杯。

1.2 量子计算机中的基本概念

  比特和昆比特
  传统计算机的电路是建立在一个用固体设备代表二进制数字位(bit,比特)0或者1的基础上的。在大部分的计算机中,晶体管关闭(输出电压为0V)代表了二进制数0,而晶体管打开(输出电压为5V)代表了二进制数1。

  而量子计算机则操纵着量子位或者说昆比特。一个昆比特说明一个单粒子能存在于0或1的状态,或者同时存在于0和1的状态,这说明昆比特比比特可以表示的状态多。而且量子重叠态允许同时进行许多运算,这就是已知的量子平行,可以大大减少计算时间。

  可能昆比特最简单的一个例子就是光子可沿两条路径传播。一条路径可以代表0,另一条路径可以代表1。当光束射向分光机时光子能存在于两条路径的重叠态。分光机很像一面普通的镜子,但是,反射层被做的很薄,并不是所有的光都被反射,一些光也可以通过它传播。当单光子遇到分光机时,光子出现于反射路径和向前传播路径的重叠态。光子在两条路径的重叠态时即可同时代表0和1。

  许多量子系统能用做昆比特位使用。

  量子平行
  一个一位(就是同时只能存储一位数字)的存储器能储存数字0和1。同样的,一个两位(就是同时只能存储两位位数字)的存储器可以存储二进制数00,01,10和11(把这些二进制数字翻译成十进制就是0,1,2和3)。但是,这些存储器的共同特点和局限就是,在一个特定的时刻只能储存一个数字(如二进制数10)。

  相对而言,一个量子重叠态运行一个昆比特位同时储存0和1。两个昆比特位能同时储存所有的4个二进制数。三个昆比特位能储存8个二进制数000,001,010,011,100,101,110和111。下表表明300个昆比特位能同时储存多于1090个数字。这甚至多于我们这个可见宇宙中的原子数。

  这表明了量子计算机的威力:只用300个光子(或者300个离子等等)就能储存比这个宇宙中的原子数还多的数字,而且对这些数字的计算可以同时进行。

量子纠结
  这是量子计算中使用的另一个量子物理学特征。当两个或多个粒子互相影响时,不可能独立描述任何一个量子的状态。即使当它们随后即被分开很远的距离,它们的行为表现的好像它们仍然是一个整体。因此我们称这些粒子是纠结的。量子纠结这个性质允许了用于实现量子运算法则的量子数的大量减少。总之,这是人类制造使用量子计算机中的一个大难题。

1.3 量子计算机

一、量子计算机的概念及发展背景

  1996年,美国《科学》周刊科技新闻中报道,量子计算机引起了计算机理论领域的革命。同年,量子计算机的先驱之一,Bennett在英国《自然》杂志新闻与评论栏声称,量子计算机将进入工程时代。目前,有关量子计算机的理论和实验正迅猛发展,那么,什么是量子计算机呢?

  量子计算机,顾名思义,就是实现量子计算的机器。要说清楚量子计算,首先看经典计算。经典计算机从物理上可以被描述为对输入信号序列按一定算法进行变换的机器,其算法由计算机的内部逻辑电路来实现。经典计算机具有如下特点:

  (1)其输入态和输出态都是经典信号,用量子力学的语言来描述,也即是:其输入态和输出态都是某一力学量的本征态。如输入二进制序列0110110,用量子记号,即|0110110>。所有的输入态均相互正交。对经典计算机不可能输入如下叠加态:
C1|0110110 >+ C2|1001001>。

  (2)经典计算机内部的每一步变换都将正交态演化为正交态,而一般的量子变换没有这个性质,因此,经典计算机中的变换(或计算)只对应一类特殊集。

  相应于经典计算机的以上两个限制,量子计算机分别作了推广。量子计算机的输入用一个具有有限能级的量子系统来描述,如二能级系统(称为量子比特),量子计算机的变换(即量子计算)包括所有可能的么正变换。因此量子计算机的特点为[1]:

  [1]量子计算机的输入态和输出态为一般的叠加态,其相互之间通常不正交;
  [2]量子计算机中的变换为所有可能的么正变换。得出输出态之后,量子计算机对输出态进行一定的测量,给出计算结果。

  由此可见,量子计算对经典计算作了极大的扩充,经典计算是一类特殊的量子计算。量子计算最本质的特征为量子叠加性和相干性。量子计算机对每一个叠加分量实现的变换相当于一种经典计算,所有这些经典计算同时完成,并按一定的概率振幅叠加起来,给出量子计算机的输出结果。这种计算称为量子并行计算。量子并行处理大大提高了量子计算机的效率,使得其可以完成经典计算机无法完成的工作,如一个很大的自然数的因子分解(后面将叙及)。量子相干性在所有的量子超快速算法中得到了本质性的利用[2]。

  量子计算机的概念源于对可逆计算机的研究,而研究可逆计算机是为了克服计算机中的能耗问题。早在六七十年代,人们就发现,能耗会导致计算机芯片的发热,影响芯片的集成度,从而限制了计算机的运行速度。Landauer[3]最早考虑了这个问题,他考察了能耗的来源,指出:能耗产生于计算过程中的不可逆操作。例如,对两比待的异或操作,因为只有一比特的输出,这一过程损失了一个自由度,因此是不可逆的,按照热力学,必然会产生一定的热量。但这种不可逆性是不是不可避免的呢?事实上,只要对异或门的操作如图1所示的简单改进,即保留一个无用的比特,该操作就变为可逆的。因此物理原理并没有限制能耗的下限,消除能耗的关键是将不可逆操作改造为可逆操作(见图1)。

图1 不可逆异或门改进为可逆异或门

  Bennett[4]后来更严格地考虑了此问题,并证明了,所有经典不可逆的计算机都可以改造为可逆计算机,而不影响其计算能力。

  经典计算机实际上就是一个通用图灵机。通用图灵机是计算机的抽象数学模型,它由两部分构成:

  [1]具有无限多个存储单元的记录带,每个存储单元内容的变化是有限的,通常用二进制的“O”和“1”来表示;

  [2]一个具有有限内态的读写头,每步操作中读写头可以在记录带上左移或右移一格或不动。图灵机在操作中,读写头根据其内态和当前存储单元的内容,按既定的规则,改变其内态和存储单元的内容。并决定下一步读写头的移动方向。
上述图灵机的模型是不可逆的,例如,对如下图灵机操作“写存储单元--> 左移一格”,其逆就变成了“左移一格-->写存储单元”,该逆操作不再是一个有效的图灵机操作。但Bennett证明了一个基本结果:对所有不可逆的通用图灵机,都可以找到一个对应的可逆图灵机,使得两者具有完全相同的计算能力和计算效率。

  因为计算机中的每步操作都可以改造为可逆操作,在量子力学中,它就可以用一个么正变换来代表。Benioff[5]最早用量子力学来描述可逆计算机。在量子可逆计算机中,比特的载体成为二能级的量子体系,体系处于|0>和|1>上,但不处于它们的叠加态。量子可逆计算机的研究,其核心任务为,对应于具体的计算,寻找合适的哈密顿量来描述。

  早期的量子可逆计算机,实际上是用量子力学语言表述出来的经典计算机,它没有利用量子力学的本质特性,如量子叠加性和相干性。 Feymann首先指出[6],这些量子特性可能在未来的量子计算机中起本质作用,如用来模拟量子系统。Deutsch[7]找到一类问题,对该类问题,量子计算机存在多项式算法(多项式算法指运算完成的时间与输入二进制数据的长度,即比特的位数存在多项式关系),而经典计算机则需要指数算法。但最具轰动性的结果却是Shor给出的关于大数因子分解的量子多项式算法[8](见第三节),因为此问题在经典公钥体系中有重要应用。Shor的发现掀起了研究量子计算机的热潮,从此后,量子计算机的发展日新月异。

  二、量子计算机的构造及实验方案


  正如经典计算机建立在通用图灵机基础之上,量子计算机亦可建立在量子图灵机基础上。量子图灵机可类比于经典计算机的概率运算。前一节提到的通用图灵机的操作是完全确定性的,用q代表当前读写头的状态,s代表当前存储单元内容,d取值为L,R,N,分别代表读写头左移、右移或不动,则在确定性算法中,当q,s给定时,下一步的状态q',s'及读写头的运动d完全确定。我们也可以考虑概率算法,即当q,s给定时,图灵机以一定的概率 (q,s,q,s”,d)变换到状态q',s'及实行运动d。概率函数 (q,s,q',s',d)为取值[0,1]的实数,它完全决定了概率图灵机的性质。经典计算机理论证明,对解决某些问题,慨率算法比确定性算法更为有效。

  量子图灵机非常类似于上面描述的经典概率图灵机,现在q,s,q',s'相应地变成了量子态,而慨率函数 (q,s,q',s',d)则变成了取值为复数的概率振幅函数x(q,s,q',s',d),量子图灵机的性质由概率振幅函数确定。正因为现在的运算结果不再按概率叠加,而是按概率振幅叠加,所以量子相干性在量子图灵机中起本质性的作用,这是实现量子并行计算的关键。

  量子计算机可以等效为一个量子图灵机。但量子图灵机是一个抽象的数学模型,如何在物理上构造出量子计算机呢?理论上已证明[9],量子图灵机可以等价为一个量子逻辑电路,因此可以通过一些量子逻辑门的组合来构成量子计算机。量子逻辑门按其输入比特的个数可分为单比特、二比特、及三比特逻辑门等。
因为量子逻辑门是可逆的,所以其输入和输出比特数相等。量子逻辑门对输入比特进行一个确定的幺正变换,得到输出比特。Deutsch[10]最早考虑了用量子逻辑门来为造计算机的问题,他发现,几乎所有的三比特量子逻辑门都是通用逻辑门。通用逻辑门的含义是指,通过该逻辑门的级联,可以以任意精度逼近任何一个么正操作。后来不少人发展了Deutsch的结果,最后Deutsch和Lloyd各自独立地证明[11],几乎所有的二比特量子逻辑门都是通用的,这里“几乎”是指,二比特通用量子逻辑门的集合是所有二比特逻辑门的集合的一个稠密子集。

  实验上通常用一些具体的量子逻辑门来构造计算机。Barenco等人[12]证明,一个二比特的异或门和对一比特进行任意操作的门可构成一个通用量子门集。相对来说,单比特逻辑门在实验上比较容易实现,现在的不少实验方案都集中干制造量子异或门。量子异或门和经典异或门非常类似,它有2个输入比待:控制比特和受控比特。当控制比特处于|1>态,即在上能级时,受控比特态发生反转。用记号C12代表量子异或操作,其中1,2分别代表控制和受控比特,则有

  其中n1,n2取值 0或 1, 表示模2加。已有的用来实现量子异或门的方案包括:利用原子和光腔的相互作用[13];利用冷阱束缚离子[14];或利用电子或核自旋共振[15]。在已实现的方案中,以冷阱束缚离子方案最为成功[16],我们稍详细地介绍这一方案。

  在冷阱束缚离子计算机中,N个离子经激光冷却后,束缚到一个线性势阱或环形势阱中,每个离子的两个内态作为量子比特的载体。离子受到势阱束缚势和相互间库仑排斥势的作用,在平衡位置附近作微小振动,可用简正模描述,量子化后即用声子描述。其中频率最低的模称为质心模。每个离子可以用不同的激光束来控制,在激光束的作用下,离子内态和离子集体振动的元激发——声子发生相互耦合。通过声子传递相互作用,可实现任意两个比特之间的异或操作。类似的想法还可以用来实现多比特的量子逻辑门,但目前只有二比特的量子逻辑门得到了具体的实验证实。

  原子光腔方案也有实验报道。原子和光腔的相互作用是量子光学中比较成熟的实验,但此方案的弱点是不易级联,难以形成复杂的逻辑网络。Gershenfeld等最近指出[15],利用宏观样品的自旋共振,经适当操作,也可以用来实现量子逻辑门,这种方案稳定性好,在理论上被认为很有前途。实验上,今年初美国的MIT和Los Alamos小组已实现了包含 3个量子比特的自旋系统,并成功地执行了1十l=2的运算。

  三、量子计算机的优越性及其应用

  与经典计算机相比,量子计算机最重要的优越性体现在量子并行计算上。因为量子并行处理,一些利用经典计算机只存在指数算法的问题,利用量子计算机却存在量子多项式算法,这方面最著名的一个例子当推Shor在1994年给出的关于大数因子分解的量子多项式算法。
大数的因子分解是数学中的一个传统难题,现在人们普遍相信,大数的因子分解不存在经典的多项式算法,这一结果在密码学中有重要应用。密码学的一个新的方向是实现公钥体制。公钥体制中,加密密钥公开,可以像电话号码一样通知对方,而脱密密钥是保密的,这样仍然可以实现保密通信。公银体制的核心在于,从加密密钥不能导致脱密密钥,即它们之间不存在有效的算法。最著名的一个公钥系统由Rivet,Shamir和 Adleman提出,它的安全性就基于大数因子分解,因为对于经典计算机,后者不存在有效的多项式算法。但Shor却证明,利用量子计算机,可以在多项式时间内将大数分解,这一结果向RSA公钥系统的安全性提出严重挑战。

  Shor的算法的主要思想为,首先利用数论中的一些定理,将大数的因子分解转化为求一个函数的周期问题,而后者可以用量子快速傅里叶变换(FFT)在多项式步骤内完成。

  除了进行一些超快速计算外,量子计算机另一方面的重要用途是用来模拟量子系统。早在1982年,Feymann就猜测,量子计算机可以用来模拟一切局域量子系统,这一猜想,在1996年由 Lloyd证明为正确的[17]。首先得指出,模拟量子系统是经典计算机无法胜任的工作。作为一个简单的例子,考虑由40个自旋为1/2的粒子构成的一个量子系统,利用经典计算机来模拟,至少需要内存为240=106M,而计算其时间演化,就需要求一个 240 X 24O维矩阵的指数,这一般来讲,是无法完成的。而利用量子计算机,上述问题就变得轻而易举,只需要40个量子比特,就足以用来模拟。Lloyd进一步指出,大约需要几百至几千个量子比特,即可精确地模拟一些具有连续变量的量子系统,例如格点规范理论和一些量子引力模拟。这些结果表明,模拟量子系统的演化,很可能成为量子计算机的一个主要用途。

  四、量子计算的困难及其克服途径

  量子计算的优越性主要体现在量子并行处理上,无论是量子并行计算还是量子模拟,都本质性地利用了量子相干性。失去了量子相干性,量子计算的优越性就消失殆尽。但不幸的是,在实际系统中,量子相干性却很难保持。消相干(即量子相干性的衰减)主要源于系统和外界环境的耦合。因为在量子计算机中,执行运算的量子比特不是一个孤立系统,它会与外部环境发生相互作用,其作用结果即导致消相干。Uruh定量分析了消相干效应,结果表明,量子相干性的指数衰减不可避免。Unruh的分析揭示了消相干的严重性,这一结果无疑是对量子计算机的信奉者的当头一棒。

  因为量子计算机本质性地利用了量子相干性,相干性的丢失就会导致运算结果出错,这就是量子错误。除了消相干会不可避免地导致量子错误外,其他一些技术原因,例如量子门操作中的误差等,也会导致量子错误。因此,现在的关键问题就变成,在门操作和量子存储都有可能出错的前提下,如何进行可靠的量子运算?

  Shor在此方向取得一个本质性的进展,这就是量子纠错的思想[19]。量子纠错是经典纠错码的量子类比。在三四十年代,经典计算机刚提出时,也曾遇到类似的法难。当时就有人指出,计算机中,如果任一步门操作或存储发生错误,就会导致最后的运算结果面目全非,而在实际中,随机的出错总是不可避免的。经典计算机解决此问题,采取的是冗余编码方案。我们以最简单的重复码来说明其编码思想。如果输入1比特信号0,现在可通过引入冗余度将其编码为3比特信号000,如果在存储中,3比特中任一比特发生错误,如变成001,则可以通过比较这3比特信号,按照少数服从多数的原则,找到出错的比特,并将其纠正到正确信号000。这样虽然在操作中有一定的错误率。计算机仍然能进行可靠运算。Shor的编码就是这种思想的量子类比,但在量子情况下,问题变得复杂得多。量子运算不再限制于态 |0>和|1>,而是二维态空间中的所有态,因此量子错误的自由度也就大得多。另一个更本质的原因为,量子力学中有个著名的量子态不可克隆定理[20](我们将另撰文介绍),它指出,对一个任意的量子态进行复制是不可能的。因此对1个单比特输入态| >,无法将其编码为3比特输入态| >| >| >。这些困难表明,任何经典码的简单类比,在量子力学中是行不通的。但Shor却给出了一个完全新颖的编码,他利用9个量子比特来编码1比特信息,通过此编码,可纠正9个比特中任一比特所有可能的量子错误。(关于量子纠错更进一步的介绍,可参看后续文章(《量子编码》)。 Shor的结果极其振奋人心,在此基础上,各种量子纠错码接二连三地被提出。最新的结果(尚未出版)表明,在量子计算机中,只要门操作和线路传输中的错误率低于一定的阈值,就可以进行任意精度的量子计算。这些结果显示出,在通往量子计算的征途上,已经不存在任何原则性的障碍。

  五、展望

  量子计算机的发展方兴未艾。纵观其发展过程,量子计算机研究中最突出的特点是物理学的原理和计算机科学的交融和相互促进。计算机不再是一个抽象的数学模型,物理原理对计算机计算能力和效率的限制愈来愈引起人们的重视。自从Shor提出大数的因子分解的量子算法后,基于量子并行处理的一些超快速算法接连地被发现,现在已形成一门新的研究领域:量子复杂性理论。另一方面,量子计算机中消相干的克服,在理论上和实验上都是人们最关注的问题,量予纠错方案被寄予高度厚望,在1996年,量子纠错理论成为研究中最热门的课题。

  与量子计算理论上的突飞猛进相比,量子计算机的实验方案还很初步。现在的实验只制备出单个的量子逻辑门,远未达到实现计算所需要的逻辑门网络。实验物理学家正在寻找更有效的制备途径,以克服消相干并实现逻辑门的级联。理论上虽然已提出各种量子纠错码,但在实验上如何利用量子编码来有效地克服消相干,这还是一个富于挑战性的问题。我们对此已进行了一系列研究(尚未出版),其目的是,根据量子计算机的具体物理模型,来寻找相应的最有效的消相干克服方案。总体来讲,实现量子计算,已经不存在原则性的困难。按照现在的发展速度,可以比较肯定地预计,在不远的将来,量子计算机一定会成为现实,虽然这中间还会有一段艰难而曲折的道路。

1.4 量子计算的简短历史

  基于量子动力学的计算设备的设想首先在19世纪70年代和19世纪80年代,由物理学家和计算机科学家,例如IBM Thomas J Watson研究中心的Charles H. Bennett,伊利诺伊州Argonne国家实验室的Paul A. Benioff,牛津大学的David Deutsch和加利福尼亚理工学院(Caltech)的Richard P. Feynman提出。

  当科学家们意识到传统计算机的局限性时,这个想法就开始出现。他们认识到如果在技术上仍然遵循摩尔定律,那么硅片上的集成电路最终将会缩小到一点,也就是说那些独立的元件不会比几个原子更大。这就导致了一个问题的出现,因为在原子级别支配着电路的行为和性质的物理规律是量子动力学,而不是经典物理定律。这就引起了这个问题,即是否能设计一台新的建立在量子物理规律基础上的计算机。

  Feynman就是试图解决这个问题的一位科学家,他在1982年制造了一个抽象的模型,该模型示范了如何利用量子系统做运算。他也解释了这样一个机器如何用作量子物理学的模拟器进行运算。换句话说,一个物理学家将能够在一个量子计算机内完成对量子物理学实验的模拟。

  以后,在1985年,Deutsch意识到Feynman的主张最终能导致用于一般目的的量子计算机的诞生,他发表了一篇具有决定作用的论文声明任何物理过程,在一般原则下,都能被量子计算机模拟。因而,量子计算机必然超过那些传统意义上的计算机。在Deutsch发表他的论文后,研究表明有一些这种机器的有趣应用出现了。

  不幸的是,直到Shor在1994年传播他的一篇预印刷的论文为止,在该论文中他陈述了一个使用量子计算机解决一个重要的数字理论问题的方法,该方法命名为因数分解,所有已发现的量子计算机的应用只是用于一些人为的数学问题。他表明一个特别为量子计算机设计的整体数学运算可以使得这个这个机器以极快的速度把巨大的数字分解因式,这个速度比传统计算机的速度快得多。随着这个突破,对量子计算机的兴趣不再只局限于学术界,而是引起了全世界各领域人士的广泛关注。

1.1 量子计算机的威力和巨大潜力

  在传统计算机中,信息是用一系列的二进制位来编码的,通过操纵这些二进制位穿过连续排列的布尔逻辑门(这个名次听起来很神秘,其实它的目的不过是实现加、减、乘、除这几种基本运算而已)产生结果。相似的,量子计算机操纵着qubit(昆比特)穿过一系列的量子门,每个门的转化对一个或两个qubit起作用。在连续应用这些门的时候,量子计算机能对一系列在初始状态的qubit应用一个复杂的一元转化(相当于做了很多的数学运算)。

  然后,qubit就能被检测,而检测结果就作为最终的计算结果。在传统计算机和量子计算机之间的这种计算上的相似性已经形成了这样的理论,传统计算机是可以模拟量子计算机的。换句话说,量子计算机能做到的,传统计算机也可以做到。既然如此,我们还研究量子计算机干什么呢?尽管从理论上说传统计算机能模拟量子计算机,但是,传统计算机的效率却低的令人难以置信,所以传统计算机不可能有效的履行量子计算机可以履行的任务。正如John Bell所解释的那样,因为量子位之间的相互关系和传统位之间的相互关系具有本质的区别,所以传统计算机对量子计算机的模拟是一个艰深的计算问题。例如,一个只有几百个qubit位的量子计算机系统,它存在于一个1090维的希尔波特空间中,要模拟这个量子计算机将要求一个传统计算机利用指数次方的巨大矩阵工作(每个独立状态都运行计算,每个状态都用一个矩阵表示),这意味着即使模拟一个原始的量子计算机也需要花掉指数次方长的时间。

  Richard Feynman是那些首先认识到利用量子重叠解决问题要快的多的人之一。例如,一个500qubit的系统,这是传统计算机无法模拟的,这个系统代表了2500个量子重叠态。每一个状态都可以等同于传统计算机中的500个0和500个1。该系统的任何量子操纵——一个特殊的无线电脉冲,这种操做可以在第100和101个qubit位执行一个可控的"非"操作,同时也控制了所有的2500个状态。因此一个信号,一次计算机时钟的滴答的时间之内,一个量子操做不仅能在一个机器状态进行计算,而是象很多计算机进行一样,在2500个机器状态进行计算。但是,如量子动力学中的测量原理所述,最终对这个系统的观测则导致相应于一个响应只产生一个量子态,即只相当于500个0和1。这个有趣的结果是由于通过重叠产生的大量量子平行产生的响应,而这相当于利用具有10150个独立处理器的传统超级计算机所进行的运算结果(而这是根本不可能实现的)。

  早期这个领域的研究者被这样巨大的计算潜力所鼓舞,并且在意识到它的潜力之后,研究就集中于找到一些有趣的东西让量子计算机去做。Peter Shor,一位研究者,同时也是新泽西AT&T贝尔实验室的一位计算机科学家,通过设计第一个量子计算机运算法则提供了这样一种应用。Shor的运算法则利用了量子重叠在几秒钟内快速分解非常大的数(~10200的数字和更大的数字)。运用该运算法则的量子计算机的首要应用在于加密领域,目前一般认为最好的加密算法是RSA,而这种方法强烈依赖于分解大的合数为小素数的难度。能做这个计算的计算机自然使大量使用RSA(以前被认为是无法破解的)的政府机关和电子和金融领域的一些人感兴趣。

  关于量子计算机的巨大威力,我们可以举一个例子来说明。比如,分解一个有400个数字的合数是解码史上的一项壮举,即使用现存最快的超级计算机计算也需要几百万年的时间。但是用量子计算机完成这项任务可能只需要一年左右,因此使用量子计算机可以破解现在使用的最复杂的加密算法。但是现在说来那些使用了目前加密算法的数据还是安全的,因为目前还没有人有建立量子计算机的能力。

  但是,破解加密术只是量子计算机的应用的一个方面。另外,Shor也把只能运行在量子计算机上的数学运算工具包放在一起,其中的许多运算是用于因数分解运算的。此外,Feynman宣称量子计算机能作为一种量子物理学的模拟器使用,这潜在的打开了在该领域许多发现的大门。虽然目前量子计算机的威力主要还是理论上的思索,但是第一台具有全功能的量子计算机无疑将带来许多新的令人激动的应用。

1.2 量子计算机的研究现状

  目前的计算机是通过控制位、二进制数字来实现的,也就是说,每一位代表了0或1。从数字和字母到我们所用的鼠标或调制解调器的状态等等和计算机有关的所有东西都可以用一系列0和1的组合来代表。这些位和经典物理学表示世界的方法对应的很好,在现实世界中,如电子开关的开和关,某物在某地或者不在某地等等,这样的两种状态可以分别用计算机中的0和1来表征。但是,量子计算机并没有被经典物理世界所限制,量子计算机依赖于对量子位或者说昆比特(qubit)的观察,量子位可能代表了一个0或者一个1,也可能代表了二者的结合或者可能代表了在0和1之间的一种状态。


  IBM的研究者已经通过使用核磁共振(NMR)技术测量和控制单原子自旋建立了量子计算机。通过改变原子能级使该原子在可控制的方式下和其它原子互相影响,然后无线电波的脉冲可以使计算机开始计算处理。

  为什么研究者们如此努力的希望研制出一台实际的量子计算机呢?这里有几个原因。首先,原子改变能量状态极快——比现在最快的计算机处理器(CPU)都要快得多。其次,考虑到问题的类型,每个qubit能代替一个完备的处理器——这意味着1000个钡离子能代替一个有1000个处理器的计算机。现在的关键问题是要找到量子计算机能够解决的合适问题。

  如果试图把量子计算机做成适合日常使用的放在我们桌面上的计算机是不太现实的。因为它们不是很适合做类似文字处理和收发e-mail的工作。另一方面,大规模的加密术是量子计算的很好思路,另外,大规模数据库的建模和检索也是量子计算机能胜任的工作。正是为了这些大规模的应用,科学家们才坚持对量子计算机的研究。

  尽管科学家和工程师已经示范了一些小规模的量子计算机,但是开发者们在建造可行的商用量子计算机方面仍然不得不面对几个尖锐的问题。最紧迫的一个问题是当观察一个单离子的能级和自旋方向时很难使其保持稳定。目前的解决办法是使用激光把离子冷却到接近绝对零度。但是,这样做之前必须先把单原子从原子组中分离出来并把它放到指定地点。到目前为止,这种示范涉及到两个到五个原子。另外这又引起了观察原子将使多种可能的状态变为只有一种确定性的状态这个问题,观察将破坏原子所具有的两种状态并存和介于两种状态之间的这些极有价值的状态。IBM使用的NMR技术是一种不用直接观察离子而观察到离子状态效果的方法,它因此避免了使使多种可能的状态变为只有一种确定性的状态这个问题。

  Los Alamos国家实验室的科学家,IBM,加利福尼亚理工学院和牛津大学的科学家正在共同寻求建造量子计算机的方法。对这些公司和大学来说,一旦成功的克服所有的困难,量子计算机一定会给他们带来巨大的收益。

1.3 量子计算机研究中出现的障碍

  自从量子计算机的概念出现之后,量子信息处理的领域已经取得了很大数量且极有希望的进展,这些进展包括建立了2和3位qubit的量子计算机,能够运行一些简单的算法,也能进行数据存储。但是,一些潜在的巨大障碍仍然阻止我们建立一个能够对抗现代数字计算机的量子计算机。

  在这些困难之中,更正错误、脱散和硬件结构可能是最可怕的。更正错误顾名思义,但是什么错误需要更正呢?因为脱散(或者说量子计算机因为和环境状态的相互影响或纠缠)从给定状态向不连贯状态衰减的倾向所产生的错误需要更正。在环境和qubit之间的交互作用是不可避免的,这种交互作用使得储存在量子计算机中的信息衰减并导致计算错误。在量子计算机能够解决困难的问题之前,研究者们必须设计一种方法使脱散和其它潜在问题源能够得到有效控制。量子错误纠正理论的出现无疑是一道曙光,这个理论首先出现在1995年并且从那时起即开始持续发展,现在已经实现。目前,小规模的量子计算机已经建立,而大型量子计算机也将于不久的将来成为现实。

  可能这个领域最重要的思想即是在相位一致中更正错误的应用,相位一致是一种不用测量系统就能够筛选信息减少错误的方法。1998年,在Raymond Laflamme领导下的Los Alamos国家实验室和麻省理工的研究者们设法使一位量子信息(qubit)穿过液态丙胺酸分子或三氯乙烯分子的三个核子的自旋从而扩展了信息。他们通过核磁共振(NMR)技术完成了这项工作。

  这项实验很有意义,因为被扩展的信息实际上很难被破坏。量子动力学告诉我们直接测量qubit的状态不可避免的要破坏量子存在的那些状态的交叠,迫使量子存在的状态变为0或1。扩展信息这项技术允许研究者们利用纠缠的性质作为一种分析量子信息的间接方法研究状态之间的相互作用,从而避免了直接测量。研究者通过比较自旋试图发现不研究信息自身能否找到在它们之间所产生的新的区别。

  这项技术使他们有能力在一个qubit的相位一致中发现并修复错误,因而保持量子系统的高度一致性。这一转折点对那些怀疑量子计算机的人提出了有力反击,而且给那些支持量子计算机的提供了希望。当前,加利福尼亚理工学院、微软、Los Alamos和其它一些地方的研究者仍在继续量子错误更正的研究。

  在这一点上,只有一些量子计算机的优点是显而易见的,而在量子计算机的更多的可能的优点出现之前,许多理论仍需检验。为了做到这个,必须建造用于量子计算的设备。但是,量子计算的硬件仍在初级发展阶段。作为几个有意义的实验的结果,核磁共振(NMR)已经变成了量子硬件结构中最受欢迎的单元。仅仅在过去的一年中,一组Los Alamos国家实验室和麻省理工的研究者就建立了第一个使用了核磁共振(NMR)技术并用于实验示范的量子计算机。

  当前,这方面的研究尚在起步之中,研究的目的就是试图发现一些对抗脱散效果的方法,使得能够发展一个理想的硬件结构用于设计和建造量子计算机,并能够利用这些设备中的巨大的计算力进一步揭示量子运算法则。自然,研究的进步是和量子错误纠正编码和量子运算法则密切相关的,所以研究者们也同时在这些领域进行研究。现在,研究已经设计到了离子捕获(ion traps)、空穴量子电气力学(QED)和NMR。

  尽管这些设备在这些实验当中已经取得了一定程度的成功,但是每种技术仍然有它自身严重的局限性。离子捕获计算机局限于在陷阱中的模式的震动速度。NMR装置则在系统增长中有一个按指数规律衰减的信号成为qubit的噪声干扰。空穴QED相比前两种虽然好一点,但是它仍然只能用一些qubit示范。Seth Lloyd是麻省目前在量子硬件领域最卓越的研究者。量子计算机硬件结构的未来可能和我们现在所知的结构孑然不同,但是,当前的研究有助于为未来这些装置所可能遇到的困难提供一点认识。

未来展望

1、可期待的未来

  虽然IBM声称他们已经研制出5个qubit位的量子计算机,但是权威科学家认为目前还没有真正意义上的量子计算机问世。现在所出现的那些用于演示用的量子计算机只不过是为了向人们展示量子计算机所具有的某些优异性能,并不能称为量子计算机。

  虽然量子计算机从某种程度上来说只能是我们的设想,但是量子计算机和量子信息技术在科技界的领先地位却是不可动摇的。在这个非常的时刻,科学家们正在逐渐克服障碍从而把量子计算机推进到一个合适的地位,使得量子计算机能够成为现存最快的计算机器。错误更正是一项令人欣慰的成就,它的出现使我们能够利用现有工具建立一台足够强大的量子计算机来抵挡脱散的影响。另一方面,量子硬件虽已形成领域,但是已完成的工作却暗示着在我们能够拥有一些足够大的设备来检验Shor和其它的量子运算法则之前还有一段路要走。然而,量子计算机将会尽快作为超级计算设备出现,可能未来的某天,你会发现现代的数字计算机已经因为过时而被丢进了历史的垃圾堆。量子计算虽然起源于理论物理这个高度特殊的领域,但是它的未来无疑有着深远的意义,它必将对全人类的生活产生深刻的影响。