你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

什么是量子计算?

量子计算有望解决我们星球上一些最大的挑战——在环境、农业、健康、能源、气候、材料科学等领域。 对于其中某些问题,随着系统规模的增长,经典计算受到越来越多的挑战。 设计为缩放时,量子系统可能具有超过当今最强大的超级计算机的功能。

本文介绍量子计算的原则、与经典计算的比较方式,以及它如何使用量子力学原理。

量子计算的历史

量子系统(如原子和分子)在经典计算机上可能很难或不可能模拟。 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. 可靠:它可以准确测量量子位。

这五个条件通常被称为量子计算的 Di Vincenzo 条件

构建满足这五个条件的设备是人类面临的最苛刻的工程挑战之一。 Azure Quantum 提供各种量子计算解决方案,具有不同的量子比特技术。 有关详细信息,请参阅 Azure Quantum 提供程序的完整列表。


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

可缩放:它可以具有许多量子比特。 可初始化:它始终可以将量子比特设置为特定的初始状态(通常为 0 状态)。 可复原:它可以长时间保持量子位处于叠加状态。 通用:它可以执行一 组通用量子运算,这样可以将任何其他运算分解成一系列通用运算。 可靠:它可以准确且一致地测量量子比特。 这五个条件通常被称为量子计算的 DiVincenzo 条件 条件。

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

了解量子现象

量子现象是将量子计算与经典计算区分开来的基本原则。 了解这些现象对于掌握量子计算机的运作方式以及为什么它们拥有这种潜力至关重要。 最重要的两个量子现象是叠加和纠缠。

叠加

假设你在客厅锻炼身体。 你一直向左转,然后一直向右转。 现在,同时向左转和向右转。 你无法做到这一点(至少要将自己一分为二)。 显然,你无法同时处于这两种状态,即无法同时向左和向右。

但如果你是量子粒子,由于一种称为叠加(也称为相干性)的现象,你可能具有一定的向左的概率和一定的向右的概率

只有离子、电子或超导电路等量子系统才能存在于支持量子计算能力的叠加状态中。 例如,电子是具有其自身“向左或向右”属性的量子粒子,这种属性称为自旋。 这两种自旋状态称为自旋向上和自旋向下,电子的量子状态是自旋向上和自旋向下状态的叠加。

若要了解有关叠加的详细信息和练习,请参阅 培训模块:使用 Q#.

纠缠

纠缠 是两个或多个量子系统之间的量子相关性。 当两个量子比特纠缠时,它们相互关联并共享其状态的信息,以便无法单独描述单个量子比特的量子状态。 使用量子纠缠,你只能知道全局系统的量子状态,而不能知道各个状态。

纠缠的量子系统即使在大距离之间分离时也保持这种相关性。 这意味着,对一个子系统应用的任何操作或过程也会与其他子系统关联。 因此,测量一个量子比特的状态提供有关另一量子比特状态的信息 - 此特定属性在量子计算中非常有用。

若要了解详细信息,请参阅教程:探索量子纠缠,Q#有关实际实现,请查看训练模块:使用纠缠传送量子比特。