量子计算与量子信息
大学前沿课程。从量子力学基础到量子算法、量子纠错、量子机器学习,以及量子计算产业的最新进展。
第一章 量子计算基础
1.1 为什么需要量子计算
经典计算机的极限:
- 摩尔定律放缓:晶体管尺寸接近物理极限
- 特定问题指数级困难:大数分解、量子系统模拟、组合优化
- 量子优势:某些问题上量子计算机比经典计算机快指数倍
经典 bit vs 量子 qubit:
| 特性 | 经典 bit | 量子 qubit | ||
| 状态 | 0 或 1 | α | 0⟩ + β | 1⟩(叠加态) |
| 测量 | 确定值 | 概率性坍缩 | ||
| 并行性 | 顺序计算 | 量子并行 | ||
| 关联 | 独立 | 量子纠缠 |
1.2 量子力学核心概念
叠加(Superposition):
| - 一个 qubit 可以同时处于 | 0⟩ 和 | 1⟩ 的叠加态 |
- n 个 qubit 可以同时表示 2ⁿ 个状态
- 300 个完美 qubit 能表示的状态数 > 宇宙中的原子数
纠缠(Entanglement):
- 两个 qubit 可以形成纠缠态,测量一个立即影响另一个
- 爱因斯坦称之为"鬼魅般的超距作用"
- 是量子通信和量子计算的核心资源
干涉(Interference):
- 量子算法通过干涉放大正确答案的概率、抑制错误答案
- 类似水波的相长/相消干涉
1.3 量子门与量子电路
基本量子门:
| 门 | 作用 | 经典类比 |
| H(Hadamard) | 创建叠加态 | — |
| X(Pauli-X) | 比特翻转 | NOT 门 |
| CNOT | 条件翻转 | 受控操作 |
| T | π/8 相位门 | — |
| SWAP | 交换两个 qubit | — |
量子电路示例(Bell 态制备):
|0⟩ ──[H]──[CNOT]── 测量 → 00 或 11(各50%)
|0⟩ ─────────[CNOT]── 测量
第二章 量子算法
2.1 Shor 算法(大数分解)
意义: 能在多项式时间内分解大整数,威胁 RSA 加密。
经典方法: 普通数域筛法,复杂度 O(exp(n^(1/3)))
Shor 算法: 复杂度 O(n³),指数级加速
步骤:
- 将因数分解转化为求阶问题
- 用量子傅里叶变换(QFT)求阶
- 经典后处理得到因数
2.2 Grover 算法(无序搜索)
问题: 在 N 个未排序的項目中找到目标
经典: O(N) 次查询
Grover: O(√N) 次查询,二次加速
应用:
- 数据库搜索加速
- 密码学攻击(将密钥搜索时间减半)
- 优化问题
2.3 量子近似优化算法(QAOA)
用于解决组合优化问题(如旅行商问题、图着色):
# 用 Qiskit 实现 QAOA
from qiskit.algorithms import QAOA
from qiskit_optimization import QuadraticProgram
from qiskit.primitives import Sampler
# 定义优化问题
qp = QuadraticProgram()
qp.binary_var('x')
qp.binary_var('y')
qp.minimize(linear={'x': 1, 'y': -1}, quadratic={('x','y'): 2})
# 求解
qaoa = QAOA(sampler=Sampler(), reps=2)
result = qaoa.solve(qp)
print(result)
2.4 变分量子本征求解器(VQE)
用于量子化学模拟——计算分子的基态能量:
应用:
- 药物分子设计
- 催化剂材料发现
- 电池材料优化
第三章 量子硬件
3.1 主流技术路线
| 技术路线 | 代表公司 | Qubit 数 | 优势 | 挑战 |
| 超导 | IBM, Google | 100-1000+ | 速度快、可扩展 | 需极低温 |
| 离子阱 | IonQ, Quantinuum | 10-30 | 高保真度、全连接 | 速度慢 |
| 光量子 | Xanadu, PsiQuantum | 可变 | 室温运行 | 规模化难 |
| 中性原子 | QuEra, Pasqal | 100-1000 | 可编程阵列 | 控制复杂 |
| 硅自旋 | Intel | 少量 | 与半导体兼容 | 技术早期 |
3.2 量子体积与算法 Qubit
量子体积(Quantum Volume): 综合衡量量子计算机能力的指标
- 考虑 qubit 数、连通性、门保真度、串扰等
- IBM 最新系统量子体积 > 1024
算法 Qubit(Algorithmic Qubit):
- 考虑纠错后的有效 qubit 数
- 当前最先进的系统约有 10-50 个算法 qubit
3.3 量子纠错
量子比特非常脆弱,需要纠错:
表面码(Surface Code):
- 最主流的量子纠错方案
- 约需 1000 个物理 qubit 编码 1 个逻辑 qubit
- 容错阈值约 1% 错误率
前沿进展:
- Google 2023 年展示量子纠错突破:更多 qubit = 更低错误率
- Quantinuum 2024 年展示高保真度逻辑 qubit 操作
第四章 量子软件生态
4.1 主要开发框架
| 框架 | 语言 | 特点 |
| Qiskit | Python | IBM 出品,最流行 |
| Cirq | Python | Google 出品 |
| PennyLane | Python | 量子机器学习 |
| Q# | Q# | Microsoft 出品 |
| Braket | Python | AWS 量子云服务 |
4.2 实践:Qiskit 入门
from qiskit import QuantumCircuit, transpile
from qiskit_aer import AerSimulator
# 创建 Bell 态电路
qc = QuantumCircuit(2, 2)
qc.h(0) # Hadamard 门
qc.cx(0, 1) # CNOT 门
qc.measure([0,1], [0,1])
# 模拟运行
simulator = AerSimulator()
compiled = transpile(qc, simulator)
result = simulator.run(compiled, shots=1000).result()
counts = result.get_counts()
print(counts) # {'00': ~500, '11': ~500}
4.3 量子云计算
| 平台 | 提供商 | 可用硬件 |
| IBM Quantum | IBM | 超导,免费访问 |
| AWS Braket | Amazon | 多技术路线 |
| Azure Quantum | Microsoft | 多技术路线 |
| 本源量子云 | 本源量子 | 超导,国内 |
| 百度量子云 | 百度 | 超导 |
第五章 量子机器学习
5.1 量子神经网络(QNN)
将经典神经网络的概念扩展到量子领域:
- 参数化量子电路:类似神经网络的"层"
- 量子特征映射:将数据编码到量子态
- 变分方法:经典优化器 + 量子电路
5.2 量子优势场景
量子计算可能率先在以下领域展现优势:
- 量子化学:分子模拟、药物设计
- 材料科学:超导体、电池材料
- 金融:投资组合优化、风险分析
- 物流:路径优化、供应链
- 密码学:后量子密码迁移
5.3 后量子密码学
Shor 算法威胁现有公钥密码体系(RSA、ECC)。NIST 已标准化后量子密码算法:
| 算法 | 类型 | 标准化状态 |
| CRYSTALS-Kyber | 密钥封装 | 已标准化(ML-KEM) |
| CRYSTALS-Dilithium | 数字签名 | 已标准化(ML-DSA) |
| SPHINCS+ | 数字签名 | 已标准化(SLH-DSA) |
| FALCON | 数字签名 | 已标准化 |
学习路径
数学基础:线性代数、复分析、概率论
↓
量子力学基础:Dirac 符号、量子态、测量
↓
量子计算入门:Qiskit 教程、量子门与电路
↓
量子算法:Shor、Grover、VQE、QAOA
↓
量子机器学习:PennyLane、QNN
↓
前沿研究:量子纠错、容错计算
推荐资源
- 书籍:《Quantum Computation and Quantum Information》(Nielsen & Chuang)
- 课程:Qiskit Global Summer School(每年免费)
- 平台:IBM Quantum Lab(免费在线量子计算机)
- 竞赛:QHack、IBM Quantum Open Science Prize