量子计算机不会取代经典计算机,也从来没打算这么做。本文直接对比量子比特与经典比特的本质区别、为什么"叠加态意味着并行处理"是一个容易误导人的说法,以及哪些问题应该交给哪种机器处理,帮助你在写第一段电路代码之前先弄清楚该抱有怎样的预期。
基本单元:比特 vs 量子比特
一个经典比特在任意时刻只能处于两种状态之一:0 或 1。而一个量子比特在被测量之前,处于两者的叠加态之中,用两个复数(振幅)而不是单一数值来描述。测量一个量子比特会使这个叠加态坍缩为确定的 0 或 1,坍缩到哪个值的概率由这些振幅决定。
一个很有诱惑力但容易误导人的说法,是把处于叠加态的 n 个量子比特说成"同时处理 2ⁿ 个值"。从机制上说,底层的量子态确实同时编码了 2ⁿ 个振幅。真正困难的地方在于把这些信息提取出来:一次测量只能得到一个确定的 n 比特字符串,按振幅决定的概率随机给出,其余的信息则随着坍缩一起消失。一个真正有用的量子算法必须经过精心设计,让干涉在测量发生之前抵消掉错误答案、强化正确答案,而不是简单地把量子比特扔进叠加态就直接读出结果。
确定性 vs 概率性
用同样的输入两次运行同一个经典程序,一台正常工作的计算机两次都会给出完全相同的结果。而两次运行同一个量子电路,两次运行会从一个概率分布中采样,只有一定的概率会得到相同的答案,即使在正常工作的硬件上,这个概率往往也远低于 100%。这正是量子程序要以"shot"(采样次数)为单位运行的原因:同一个电路会被执行成百上千次,最终答案来自这些结果构成的分布,而不是单次执行的结果。关于这背后的统计原理,可以参考我们关于 shot noise 的术语表条目。
各自擅长什么
在如今计算机被使用的几乎所有场景中,经典计算机依然明显更胜一筹:网页服务器、数据库、电子游戏、电子表格、大语言模型训练、图形渲染,以及绝大多数科学计算任务。这并不是一个会随着量子硬件进步而缩小、最终被填平的临时差距。其中许多任务根本没有任何量子算法能提供优势,因为其底层数学结构中不存在可利用的量子结构。
在一小部分问题上,量子计算机展现出真实且经过数学证明的加速:大整数分解(Shor 算法)、非结构化搜索(Grover 算法),以及对其他量子系统的模拟——而这恰恰正是经典计算机力不从心的物理与化学计算,因为大自然本身就是按照量子力学规则运行的。优化和机器学习是活跃的研究领域,已经提出了不少量子算法(QAOA、VQE、振幅估计),但截至 2026 年,这些算法在实际问题规模上都还没有被证明具有确定优势。我们的量子机器学习现实检验一文针对一个具体案例,更详细地讨论了这一差距。
并排对比
| 经典 | 量子 | |
|---|---|---|
| 基本单元 | 比特(0 或 1) | 量子比特(0 和 1 的叠加态) |
| 执行方式 | 确定性 | 概率性,需要大量 shot |
| 当前错误率 | 几乎为零(内置的经典纠错技术已经成熟) | 在当前硬件上每个门约 0.1%-1% |
| 物理运行条件 | 室温 | 接近绝对零度(超导)或激光控制的真空环境(离子阱) |
| 已证明的加速 | 不适用,作为基准线 | 分解、非结构化搜索、量子模拟 |
| 今天在哪里体验 | 任意设备 | 免费模拟器或免费云端 QPU 访问 |
"加速器"这个类比
一个经得起推敲的类比是:QPU 相当于一种针对特定问题类别的专用加速器,就像 GPU 加速矩阵乘法运算,却并不会取代运行程序其余部分的 CPU 一样。像 VQE 和 QAOA 这样的混合算法把这一点表现得很明确:经典优化器负责执行外层循环,只有在需要处理量子硬件擅长的那部分具体子计算时,才会调用 QPU。没有人打算用量子硬件去处理数据库查询、网页服务器,或者支撑这一切运行的操作系统。