量子计算有多么难?
扫描二维码
随时随地手机看文章
通常一种基础科学问世之后,过几十年的光景就有可能有机会进入商业应用阶段,那么为什么量子信息科技在如此之久以后才在最近浮上台面、成为议题?
其实量子力学的应用早已深入科技、生活,不仅在对于自然事物的了解上,譬如固态物质中晶格周期性重复排列的行径、铁磁现象—铁磁性质是纯粹的量子现象,没有古典的类比—等,也实实在在的进入产业。光电产业中的雷射、LED、量子点等,全部是对于量子离散能阶理解的运用。在半导体元件物理中,譬如电子透过 Nordheim-Fowler tunneling 机制穿过氧化物绝缘体到达彼岸就是纯粹的量子穿隧现象,也没有古典比拟。
但是量子态还有另外两个重要性质:叠加(superposition)与纠缠(entanglement)。这在以前鲜少进入产业应用,主要因为这两种性质的应用需要对微观世界的精准控制,但是奈米科技比较成熟不过就这一、二十年的事,这却是量子计算所需使用的核心量子特性。
量子叠加在科普界久负盛名。在古典物理中,一个系统只能处于一种物理状态,就好比传统的存储器位元只能处于 0 或 1 状态,但是不能兼得。在量子的世界中,一个系统可以有部分机率为一种状态,另外部分机率在另外的状态,这样的性质就是量子叠加。
在实际测量量子状态之前,我们无从得知系统是处于那种状态;而量子状态在测量之后,就会崩溃(collapse)成单一的古典状态。在上述 0 与 1 的例子,如果把 1 当成是“生”、0 当成是“死”,而这如果是一只猫的生命状态,这就是名闻遐迩的“薛丁格的猫”。要注意的是可以叠加的不只是两种量子态;如果系统容许 n 种量子态,就可以形成 n 个量子态的叠加,这是量子计算最常用的运算之一。
纠缠是数个量子态之间的奇妙连结,爱因斯坦以“spooky(幽灵般的)”名之。举个例子,如果一对光子在总角动量为 0 的状况下产生而背对背的以光速离去,其中一个光子的角动量(就是自旋)如果为 1,则另一个光子的角动量因为总角动量守恒必为 -1。在我们还未量测光子的角动量之前,我们对它的角动量状态是完全无知的。但是当我们测量其中一个光子的角动量,另外一个光子的角动量(它即使远在天边),总是会恰如其份的瞬间显示已被测到角动量的负值,仿佛两个光子能超越光速、秘密沟通。爱因斯坦在 1935 年对这纠缠现象提出质疑,叫 EPR 悖论。这问题花了 80 年的时间才在前几年被实验严格的证实:纠缠的确是量子现象自然的一环,没有背后隐藏的黑魔术。
可以纠缠在一起的量子态(或者是量子位元)数目自然不止一个,使量子位元彼此可以纠缠目前是量子计算机硬件技术最大的挑战。像在可扩充性(scalability)此一性质最被看好的量子点(quantum dot)量子位元技术,因为它用的是半导体制造技术,而半导体擅于微缩、整合,因此生产巨量的量子位元似乎不是问题。但是目前的技术只能让两个量子点彼此纠缠,与用超导体技术作的量子位元可以彼此纠缠的量子位元数相差甚远,因此便成为目前此量子点技术应用亟需克服的最大挑战。
量子计算便是以纠缠和叠加来计算开始的始初态,之后便以量子闸(quantum gate)来执行量子算法所需的运作。量子算法可以快速进行的原因是因为纠缠与叠加量子位元后所造成的量子状态运作时是平行运算,这是量子霸权的技术与科学基础。
平行运算的概念传统计算机也有,4 核、8 核的 CPU 乃至于几千个图形处理器同时运行是现在计算机的基本运算模式。但是这相对于量子计算不只是小巫见大巫,而是许多个数量级的差距。以 IBM 与 Google 最近发表的 53 量子位元的量子计算机为例,它们的计算一开始准备的初始状态理论上可以是 2 的 53 次方(大约是 10 的 16 次方)的纠缠、叠加状态,而这么庞大数量的讯息自始便以平行计算,来执行算法。以后每增加一个量子位元,潜在的平行计算位元便倍增,这是以指数成长的平行运算机器!
量子计算还有一个潜在的优点较少人提及。传统计算机由于遵循冯诺曼架构,资料在存储器与处理器之间的搬动造成运算速度与功耗的问题。所以现在高效能计算无不戮力以赴的至少形成近存储器运算(near memory compuTIng),譬如以异构整合将处理器与存储器置于一封装内,缩短数据搬动距离。量子位元由于无法被复制,从设计的第一天开始,量子计算就直接在量子位元上运算。