什么是量子计算?

已完成

量子计算机通过量子物理的特殊规则向传统编程方法引入新概念,以执行计算。

让我们看看量子计算与经典计算有何不同,以及如何构建量子计算机。

量子计算的诞生

量子系统(如原子和分子)在经典计算机上可能很难或不可能模拟。 20 世纪 80 年代,Richard Feynman 和 Yuri Manin 提出,基于量子现象的硬件在模拟量子系统方面可能比传统计算机更有效。

量子系统很难在常规计算机上模拟的原因有多种。 一个主要原因是,在量子层面,物质被描述为同时处于多种配置(称为状态)的组合中。

量子系统呈指数级增长

考虑一个粒子系统,以及这些粒子可以存在的 40 个可能的位置。 系统可能处于 $2^{40}$ 唯一状态中的任何一个,因为每个位置可以具有或没有粒子。 如果这些是经典粒子,则系统始终只处于 $2^{40}$ 状态之一,因此经典计算机只需要 40 位来描述系统的状态。 但是,如果这些是量子粒子,则系统存在于所有 $2^{40}$ 状态的组合中。 经典计算机需要存储 $2^{40}$ 数字来描述量子系统,这需要超过 130 GB 的内存。 但是,量子计算机只需要 40 个量子位来描述此量子系统。

如果我们向系统添加另一个位置,以便电子可以存在于 41 个位置,则系统的唯一配置数翻倍为 $2^{41}$。 在经典计算机上存储该量子状态需要超过 260 GB 的内存。 我们无法永远玩这个增加位置数量的“游戏”。 若要将量子状态存储在传统计算机上,可以快速超过世界上最强大的计算机的内存容量。 当系统达到几百个电子的规模时,所需的存储需求已经超过了宇宙中的粒子数量。 我们的传统计算机无法完全模拟大型系统的量子动力学!

将困难转化为机会

这种指数增长的观察提出了一个强有力的问题:是否可以把这种困难转化为机会? 如果量子系统难以在常规计算机上模拟,那么如果我们构建一台使用量子效应进行基本作的计算机,会发生什么情况? 我们是否可以使用利用完全相同的物理规律的计算机来模拟量子系统? 我们是否可以使用该计算机来调查量子力学之外的其他重要问题? 这些是导致量子信息和量子计算领域出现的问题。

1985 年,David Deutsch 表明,量子计算机可以有效地模拟任何物理系统的行为。 这一发现是量子计算机可用于解决在经典计算机上难以解决的问题的第一个迹象。

1994年,彼得·索发现了一种量子算法,以查找大整数的主要因素。 Shor 算法的运行速度比此分解问题最知名的经典算法快得多。 这种快速算法可能会破坏我们用于保护电子商务中交易的许多现代公钥加密系统,例如 Rivest-Shamir-Adleman(RSA)和椭圆曲线加密。 这一发现引发了人们对量子计算的巨大兴趣,并导致为许多其他问题开发量子算法。

此后,为传统计算机上难以解决的其他问题开发了快速高效的量子计算机算法。 例如,我们现在有量子算法来搜索无序数据库、求解线性公式系统、执行机器学习以及模拟化学、物理和材料科学中的物理系统。

什么是量子比特?

正如位是传统计算中信息的基本对象一样,量子比特(量子位)是量子计算中信息的基本对象。

量子比特在量子计算中起到类似于比特在经典计算中的作用,但量子比特的行为与比特不同。 经典位是二进制位,并且在任何给定时间只能处于两种状态之一(0 或 1)。 但是量子比特可以同时叠加 0 和 1 状态。 事实上,有无限可能的叠加 0 和 1,每个叠加都是有效的量子比特状态。

在量子计算中,信息以状态 0 和 1 的叠加进行编码。 例如,8 个常规位最多可以编码 256 个唯一值,但这些 8 位一次只能表示 256 个值之一。 对于 8 个量子比特,我们可以同时对所有 256 个值进行编码,因为量子比特可以叠加所有 256 个可能的状态。

如何构建量子计算机

量子计算机使用量子系统和量子力学的属性来解决计算问题。 量子计算机中的系统由量子比特、量子比特之间的交互以及量子比特的作组成,用于存储和计算信息。 我们可以使用量子计算机对量子纠缠和量子干扰等效果进行编程,以便比在传统计算机上更快地解决某些问题。

若要构建量子计算机,我们需要考虑如何创建和存储量子比特。 我们还需要考虑如何操控量子比特以及如何测量计算过程的结果。

常用的量子比特技术包括捕获离子量子比特、超导量子比特和拓扑量子比特。 对于量子比特存储的某些方法,容纳量子比特的单元必须保持在接近绝对零的温度,以最大程度地提高其一致性并减少干扰。 其他类型的量子比特装置使用真空室来帮助最大程度地减少振动并使量子比特保持稳定。 信号可以通过各种方法(如微波、激光或电压)发送到量子比特。

量子计算机的五个条件

良好的量子计算机应具有以下五个功能:

  1. 可缩放:它可以具有许多量子位。
  2. 可初始化: 它始终可以将量子比特设置为特定的初始状态(通常为 0 状态)。
  3. 弹性: 它可以长时间保持量子比特处于叠加状态。
  4. 普遍: 它可以执行一组通用量子作,以便任何其他作都可以分解为一系列通用作。
  5. 可靠: 它可以准确且一致地测量量子比特。

这五个条件通常被称为量子计算的 DiVincenzo 条件。

构建满足所有五个条件的设备是我们时代最苛刻的工程挑战之一。 Microsoft与世界各地的一些最先进的量子计算机制造商合作,通过 Azure Quantum 访问最新的量子计算解决方案。