算法、模型、挑战和应用

量子计算的演变与未来展望

自 1980 年量子计算机概念初现,历经数十年,尤其在近十年内,量子计算领域取得了显著进步。众多企业纷纷投入量子计算机的研发。

对于多数人而言,理解量子计算的原理具有一定的挑战性,并且很多资料并未详尽阐述其关键细节。

本文旨在深入浅出地解析量子计算,通过阅读本文,您将全面掌握量子计算的定义、类型、功能、算法、模型、方法、挑战以及应用领域。

什么是量子计算机?

量子计算机以一种与传统计算机截然不同的方式处理问题。为便于区分,本文将传统计算机称为经典计算机。

量子计算机在特定问题上展现出超越经典计算机的优势,这得益于量子计算机能够同时处于多种状态,而经典计算机在同一时刻只能处于一种状态。

图片来源: 国际商业机器公司

要理解量子计算机的工作原理,需要掌握三个核心概念:叠加态、量子纠缠和干涉现象。

经典计算机的基础是比特,而量子计算机的基础是量子比特,简称量子位。它们的操作方式截然不同。

经典比特类似于开关,可以处于 0 或 1 两种状态,即我们所熟知的二进制信息。当我们进行测量时,比特会保持其当前状态不变。然而,量子位的情况则更为复杂。

叠加态

为了便于理解,可以将量子位想象成指向三维空间的箭头。箭头指向上方表示 1 状态,指向下方表示 0 状态,这与经典比特类似。但量子位还可以处于一种称为叠加态的状态,此时箭头可以指向任何其他方向。

这种叠加态是 0 和 1 状态的组合状态。

叠加态

当测量一个量子位时,结果仍然是 0 或 1,但得到的结果取决于箭头方向所确定的概率。

如果箭头指向上方,则更有可能得到 1,而不是 0;如果箭头指向下方,则更有可能得到 0,而不是 1。如果箭头恰好位于赤道上,则得到 0 或 1 的概率均为 50%。

这就是叠加效应的诠释。接下来,我们将讨论量子纠缠。

量子纠缠

在经典计算机中,各个比特之间是相互独立的,一个比特的状态不受其他比特的影响。但在量子计算机中,量子位可以相互纠缠,形成一个统一的量子态。

例如,考虑两个独立的量子位,它们各自处于不同的叠加态,但彼此之间没有纠缠。它们的概率是相互独立的。

但是当这两个量子位纠缠在一起时,我们需要舍弃独立的概率,计算所有可能状态(00、01、10 和 11)的概率分布。

关键在于,纠缠后的量子位不再相互独立。改变其中一个量子位的箭头方向,会影响整个系统的概率分布。它们成为同一个大系统的一部分。

无论有多少量子位,情况都是如此。同时,一个量子位对应两种状态的概率分布。

两个量子位对应四种状态的概率分布。三个量子位对应八种状态的概率分布。每增加一个量子位,状态数量就会翻倍。

一般来说,n 个量子位的量子计算机可以处于 2^n 种状态的组合。这是经典计算机与量子计算机的核心区别。

经典计算机一次只能处于一种状态,而量子计算机可以同时处于所有这些状态的叠加态。

那么,这种叠加态在计算机中有什么用处呢?这就需要引入最后一个组成部分:干涉。

干涉现象

为了解释干涉现象,我们需要回顾量子位的可视化表示,即布洛赫球体。 量子位并非真的像布洛赫球体,它只是可视化量子位状态的一种有效方式。

事实上,量子位的状态由一个更为抽象的概念——量子波函数描述。波函数是量子力学中描述一切事物的基础数学工具。

当多个量子位纠缠在一起时,它们的所有波函数会叠加形成一个整体波函数,描述整个量子计算机的状态。

波函数的叠加就是干涉。就像水波一样,当两个波叠加在一起时,它们会发生相长干涉或相消干涉。相长干涉会形成更大的波,而相消干涉则会相互抵消。

量子计算机的整体波函数决定了不同状态的概率。通过改变量子位的状态,我们可以调整测量量子计算机时出现不同状态的概率。

请记住,即使在测量量子计算机时,它可以同时处于数百万个状态的叠加,但我们只能得到一个状态。

因此,当使用量子计算机解决计算问题时,我们需要利用相长干涉来增加正确答案的概率,并利用相消干涉来降低错误答案的概率,从而确保在测量时获得正确答案。

量子算法

如何做到这一点就属于量子算法的范畴。量子计算的根本动力在于,理论上,量子计算机可以解决很多经典计算机难以解决的问题。

接下来,我们来了解一些量子算法。量子算法种类繁多,本文无法一一介绍,因此我们将重点介绍最著名且具有历史意义的:Shor 算法。

#1. 绍尔算法

如果您将两个大数相乘,会有一个快速且高效的经典算法可以找到结果。但是,如果反过来,知道结果,要求找到相乘得到该结果的原始数字,则难度会大大增加。

这被称为因式分解,这些数字称为因子。之所以很难找到这些因子,是因为可能因子的搜索空间非常巨大,并且没有有效的经典算法可以找到大数的因子。

正因如此,互联网加密技术利用了这种数学特性,用于保护网站、电子邮件和银行账户的安全。 如果知道这些因子,就可以轻松解密信息;但如果不知道,则需要先找到这些因子,这对世界上最强大的计算机而言也是一项棘手的任务。

绍尔算法

因此,在 1994 年,当 Peter Shor 发布了一种可以有效找到大整数因子的快速量子算法时,引起了轰动。

自那时起,许多人开始认真对待量子计算的概念,因为它具有解决现实世界问题的潜力,并对现实世界的安全产生重大影响。

但是,当我谈到“快速”量子算法时,它比经典计算机快多少?要回答这些问题,我们需要了解量子复杂性理论。

量子复杂性理论

量子复杂性理论是计算复杂性理论的一个子领域,它根据算法在计算机上的执行情况对其进行分类。

这种分类基于解决问题的难度如何随着问题规模的增加而变化。在图中,P 框内的任何问题都可以由经典计算机轻松解决,而 P 框以外的任何问题都意味着我们没有有效的经典算法来解决它们,因式分解大数就是其中之一。

但这里有一个循环,BQP,它是量子计算机能够有效解决而经典计算机无法有效解决的问题。这些是量子计算机比经典计算机更擅长解决的问题。

如前所述,复杂性理论关注的是,随着问题规模的扩大,解决问题的难度如何变化。 因此,如果分解一个 8 位数字,然后添加另一位,与分解原始数字相比,分解新数字的难度会增加多少?难度是原来的两倍吗?

难度是否呈指数级增长? 当你添加越来越多的数字时,趋势是什么? 这被称为复杂度或缩放。 对于因式分解来说,它的复杂度是指数级的。

任何指数中带有 N 的问题都属于指数级困难问题。 随着问题规模的增加,这些指数级问题会让人感到困惑。在计算机科学领域,如果您找到更好的算法来解决这些最棘手的问题,您就能赢得尊重和声誉。

其中一个例子是 Shor 算法。它利用量子计算机的独特功能,创建了一种算法,该算法可以比最佳经典算法更好地解决整数因式分解问题。

最佳经典算法是指数算法,而 Shor 算法是多项式算法。这在复杂性理论和计算机科学领域意义重大,因为它将棘手的问题转化为可解决的问题。

也就是说,如果您拥有一台可以正常工作的量子计算机,这将是一项巨大的进步,这也是人们努力的方向。 但是目前无需担心银行账户的安全问题,因为当今的量子计算机还无法处理 Shor 算法中涉及的大量数据。


IBM 量子计算机

他们需要大约相当数量的量子位才能做到这一点。但迄今为止,最先进的通用量子计算机大约有433 个量子位。

此外,人们正在研究所谓的后量子加密方案,该方案不依赖整数分解。量子物理学领域的另一项技术——量子密码学也可以在这里提供帮助。

这只是量子算法的一个例子,但还有许多其他算法,每种算法都有不同程度的加速效果。

#2. 格罗弗算法

另一个值得关注的例子是 Grover 算法。它可以在无结构数据列表中比最佳经典算法更快地进行搜索。

但我们应该谨慎,不要错误地描述经典计算机。经典计算机是非常通用的设备,并且毫无疑问,有人可能会找到一种非常巧妙的经典算法,可以更有效地解决整数分解等棘手的问题。

虽然这种可能性很小,但也不能排除。此外,我们可以证明有些问题是经典计算机无法解决的,即不可计算问题。例如,停机问题,但这些问题在量子计算机上也无法解决。

因此,在计算能力方面,经典计算机和量子计算机是等效的,差异在于它们可以运行的算法。您甚至可以在经典计算机上模拟量子计算机,反之亦然。

然而,随着模拟量子位的数量增加,在经典计算机上模拟量子计算机变得更具挑战性。

这是因为经典计算机很难模拟量子系统。由于量子计算机本身就是量子系统,因此不存在这个问题。这就引出了我最喜欢的量子计算机应用:量子模拟。

#3. 量子模拟

量子模拟是指使用计算机模拟化学反应或电子在不同材料中的行为等。 在这里,量子计算机也比经典计算机具有指数级的加速优势,因为经典计算机很难模拟量子系统。

即使在世界上最强大的超级计算机上,模拟尽可能少粒子的量子系统也很困难。我们还无法在量子计算机上做到这一点,但随着量子计算机的成熟,主要目标是模拟越来越大的量子系统。

应用领域包括奇异材料在低温下的行为,例如了解某些材料超导的原因,或研究重要的化学反应以提高其效率。一个例子是致力于以减少二氧化碳排放的方式生产化肥,因为化肥生产约占全球碳排放量的 2%。

您可以深入了解量子化学模拟。


量子模拟

量子模拟的其他潜在应用包括改进太阳能电池板、改进电池以及开发新药、化学品或航空航天材料。

一般来说,量子模拟意味着我们能够在量子计算机中快速制作多种不同材料的原型并测试其所有物理参数,而无需在实验室中实际制造和测试,后者的过程更加费力且昂贵。

这有可能显著加快流程并节省大量时间和成本。值得重申的是,这些都是量子计算机的潜在应用。因为我们还没有任何量子计算机能够比普通计算机更好地解决现实世界的问题,但这正是量子计算机非常适合解决的问题。

量子计算机的模型

在量子计算机领域,有很多方法可以将不同类型的量子系统转化为量子计算机。这里需要讨论两种细微的差别。

电路模型

在电路模型中,量子位协同工作,通过特定的门电路一次改变几个量子位的状态,而无需检查它们的状态。这些门电路按特定顺序排列,以创建量子算法。最后,测量量子位以获得所需的答案。

图片来源: Qiskit

绝热量子计算

在绝热量子计算中,您利用了物理学中一个基本原理,即物理系统始终趋向于最小能量状态。绝热量子计算的工作原理是构建问题,使量子系统的最低能量状态代表解决方案。

量子退火

量子退火并非通用的量子计算方案,但其工作原理与绝热量子计算类似,系统会找到能量状态的最小值。

拓扑量子计算

在这种方法中,量子位由物理学中称为马约拉纳零模式准粒子的实体构成,这是一种非阿贝尔任意子。由于这些准粒子彼此物理分离,预计它们会更稳定。

图片来源: Civil Daily

建设中的挑战

无论采用哪种方法,都面临一系列相似的障碍,我们需要首先了解这些障碍。

  • 退相干:控制量子系统非常困难,因为只要与外界有任何微小的相互作用,信息就会开始泄漏。这被称为退相干。您的量子位将由物理物质构成,并且您需要附近的物理物质来控制和测量它们。您的量子位是“愚蠢的”,它们会以各种可能的方式纠缠在一起。您需要非常仔细地设计量子位,以防止它们与环境纠缠在一起。
  • 噪声:您需要保护您的量子位免受任何类型的噪声影响,例如宇宙射线、辐射、热能或异常粒子。在任何物理系统中,一定程度的退相干和噪声都是不可避免的,并且不可能完全消除。
  • 可扩展性:对于每个量子位,您需要大量的电线来操纵和测量它。随着量子位数量的增加,必要的基础设施将线性增长,从而带来巨大的工程挑战。任何量子计算机的设计都必须找到一种在扩大规模时有效地纠缠、控制和测量所有量子位的方法。
  • 量子纠错:量子纠错是一种纠错方案。通过使用大量纠缠在一起的量子位来表示一个无噪声的量子位,可以制造容错量子计算机。这需要大量的物理量子位来形成一个容错量子位。

物理实现

量子计算机有多种不同的物理实现,因为有很多不同的量子系统可用于构建量子计算机。以下是一些最广泛使用和成功的方法:

  • 超导量子计算机:超导量子位是目前最流行的方法。这些量子位由超导线制成,超导体中有一个断裂点,称为约瑟夫森结。最流行的超导量子位类型称为 transmon。
  • 量子点量子计算机:量子位由电子或电子群组成,两能级系统被编码为电子的自旋或电荷。这些量子位由硅等半导体制成。
  • 线性光学量子计算:光学量子计算机使用光子作为量子位,并使用镜子、波片和干涉仪等光学元件对这些量子位进行操作。
  • 俘获离子量子计算机:带电原子用作量子位。这些原子被电离,失去电子。编码量子位的两能级状态是原子的特定能级,可以使用微波或激光束进行操纵或测量。
  • 色心或氮空位量子计算机:这些量子位由嵌入金刚石或碳化硅等材料中的氮等原子制成。它们利用嵌入原子的核自旋产生,并与电子纠缠在一起。
  • 光学晶格中的中性原子:这种方法将中性原子捕获到光学晶格中,光学晶格是激光束的纵横交错排列。量子位的两能级系统可以是原子的超精细能级或激发态。

这些是构建量子计算机的一些关键方法。每种方法都有其独特的特性和挑战。量子计算正迅速发展,选择正确的方法对于未来的成功至关重要。

量子计算机的应用

  • 量子模拟:量子计算机具有模拟复杂量子系统的潜力,从而可以研究化学反应、材料中电子的行为以及各种物理参数。这可以应用于改进太阳能电池板、电池、药物开发、航空航天材料等。
  • 量子算法:像 Shor 算法和 Grover 算法这样的算法可以解决被认为对经典计算机而言难以解决的问题。它们在密码学、优化复杂系统、机器学习和人工智能方面都有应用。
  • 网络安全:量子计算机对经典加密系统构成威胁。然而,它们还可以通过开发抗量子加密方案为网络安全做出贡献。量子密码学是一个与量子计算相关的领域,可以增强安全性。
  • 优化问题:量子计算机可以比经典计算机更有效地解决复杂的优化问题。这在从供应链管理到金融建模的各个行业都有应用。
  • 天气预报和气候变化:尽管本文没有详细说明,但量子计算机有可能改进天气预报模型并帮助应对与气候变化相关的挑战。这是未来可能受益于量子计算的领域。
  • 量子密码学:量子密码学利用量子原理实现安全通信,提高数据安全性。这在网络威胁日益严重的时代至关重要。

现在,我们需要对这里潜在的炒作保持谨慎,因为许多关于量子计算机将带来什么好处的说法都来自那些积极筹集资金来建造它们的人。

但我的观点是,从历史上看,当一项新技术出现时,当时的人们并不是最擅长预测它的用途。

例如,发明第一台计算机的人从未梦想过互联网以及互联网上的所有东西。对于量子计算机来说可能也是如此。

最后的想法

量子计算机每天都在变得越来越好。虽然我们还不能在日常生活中使用它们,但它们在未来具有实际应用的潜力。

在本文中,我讨论了量子计算机的各个方面,包括其基本概念,例如叠加态、量子纠缠和干涉现象。

接下来,我们探讨了量子算法,包括 Shor 算法和 Grover 算法。我们还深入研究了量子复杂性理论和量子计算机的不同模型。

随后,我讨论了与量子计算相关的挑战和实际实施问题。最后,我们研究了量子计算机广泛的潜在应用。

接下来,您可以阅读有关量子计算的常见问题解答。