量子计算机|到底什么是量子计算

作者:李颖1 孙昌璞1 , 2
(1 中国工程物理研究院研究生院)
(2 北京计算科学研究中心)
摘要 
量子计算技术近年来快速发展并受到广泛关注 。 文章将介绍一些量子计算的基本概念、现状以及远期和近期的主要挑战 , 使读者可以更准确地理解一些新近的进展 , 避免误解 。
通用量子计算机的主要应用之一是破解RSA密码 。 没有量子纠错 , 我们很难实现密码破解规模的量子计算 。 因此 , 量子计算技术的一大挑战是如何实现有量子纠错保护的量子计算 , 也就是容错量子计算 。 通过介绍现有的实验技术 , 将发现目前已经可以在实验中实现错误率低于容错阈值的量子门 , 但容错量子计算离实际应用还有距离 。 主要的困难在于 , 量子容错需要数量巨大的低错误率的量子比特 , 超出了现有技术能达到的水平 , 需要进一步的发展 。
有噪声中等规模量子计算有可能在近期内成为现实 , 目前仍有一些理论和技术方面的瓶颈问题需要深入研究 。 在看到量子计算技术巨大潜在价值和长足进步的同时 , 有必要了解有哪些亟需解决的问题 , 直面关键、攻坚克难 。
关键词 通用量子计算机 , 容错量子计算 , 有噪声中等规模量子计算
01
引言
计算机技术已经引起了经济和社会的巨大改变 , 其发展得益于传统量子物理的研究 。 晶体管是计算机的主要元件 , 有了量子力学理论我们才能够理解这种半导体器件的基本原理 。 在过去的四五十年当中 , 集成电路中的晶体管数量大概每一年半增长一倍 , 被称为摩尔(Moore)定律 。 然而 , 目前这个趋势正在放缓 。 在这个时候 , 量子物理研究有可能再一次从根本上突破瓶颈并促进计算机技术的大规模发展 。
与今天广为使用的计算机(我们称之为经典计算机)相比 , 量子计算机通过一种完全不同的方式进行计算 , 因此给计算技术带来了全新的可能性 。 量子力学理论创立于20 世纪初 , 经由大量的物理实验验证 , 业已成为半导体和现代化学的理论基础 。 在量子力学中 , 物理系统的状态需要用波函数来描述 , 存在不是非黑即白的状态 , 被称为量子叠加态 。 同时 , 量子力学预言了波函数的相干、纠缠等经典物理理论中没有的现象 。 虽然我们很难在日常生活中直接看到这些现象 , 但它们都能在实验室中被观测到 。 量子计算机的“量子”指的就是在计算中利用量子相干、纠缠等效应 , 进而能够用比经典计算机更短的时间完成某些特殊计算 。 这正是我们研发量子计算机的最主要原因 。 除此以外 , 量子计算技术还促进了基础研究和其他量子技术 , 例如量子通讯和量子传感等 。
虽然经历了近年来的快速发展 , 与成熟的经典计算机技术相比 , 量子计算机技术仍处于初级阶段 。 量子计算机的概念在20 世纪80 年代被提出[1 , 2] , 此后在很长的时期内属于基础研究的范畴 。 目前 , 量子计算刚刚由基础研究转向工程实现和应用研究 。 我们还没有发现任何基本问题可能导致最终无法实现有应用价值的量子计算机;与此同时 , 也很难预测这一转变的最终完成需要多长时间[3] 。
下面 , 我们将具体介绍量子计算机的概念、优势以及实现方法 。 除此以外 , 还会介绍一些典型的量子计算物理系统 , 以及探讨在近期内实现量子计算技术实际应用的可能性 。 希望通过这些介绍 , 使专家和领域外的人士对量子计算的概念和发展态势有一个科学的理解 。
02
通用量子计算机
从算法的角度来说 , 量子计算机具有比经典计算机更强大的计算能力 。 这个想法最初是由费曼(R. Feynman)和马宁(Y. Manin)在20 世纪80 年代初提出[1 ,2] 。 自20 世纪40 年代美国核武器研究起 , 数值计算被广泛应用于物理学以及其他学科的研究中 。 其中重要的一项应用是对物理系统的数值模拟 。 自然界的物理系统均为量子系统 。 然而 , 由于记录和处理量子态需要很大的信息存储空间 , 利用经典计算机对量子多体系统进行模拟是非常困难的 。 但是 , 量子计算机没有这个问题 。 如果经典计算机无法精确模拟量子多体系统而量子计算机可以 , 那么不言而喻 , 量子计算机优于经典计算机 。
1985 年 , 多伊奇(D. Deutsch)提出了量子计算机的模型——通用量子计算机(或量子图灵机)[4] 。 任意一种量子算法均可以利用通用量子计算机实现 。 量子计算机是由许多量子比特(二态量子系统)组成的物理系统 。
对每个量子比特 ,|0 和|1是两个完全可区分的量子态 , 它们分别对应二进制数中的0 和1 。 量子比特和经典比特的差别在于 , 量子比特可以处于0 和1 的量子叠加态 , 用a|0 +b |1 表示 , 这里系数a 和b 刻画了量子比特的具体状态 。 量子计算有很多方式 , 其中广泛使用的模型是量子线路 , 也就是通过在量子比特上执行一系列的逻辑操作来实现量子计算 , 如图1所示 。 这些逻辑操作包括:量子比特的初始化、量子态的幺正变换以及对量子比特信息的读取 。
量子计算机|到底什么是量子计算