量子常微分方程(ODE)求解是量子科学计算的核心方向之一。从线性 ODE 的哈密顿量模拟,到非线性 ODE 的 Carleman 线性化和 Schrödingerization,近年来取得了一系列理论突破。本文系统介绍量子 ODE 求解的各方法及其复杂度演进。
问题定义
一般 ODE
$$\frac{d\mathbf{u}}{dt} = f(\mathbf{u}, t), \quad \mathbf{u}(0) = \mathbf{u}_0 \in \mathbb{R}^d$$
分类:
- 线性 ODE:$\dot{\mathbf{u}} = A(t)\mathbf{u} + \mathbf{b}(t)$
- 非线性 ODE:$\dot{\mathbf{u}} = f(\mathbf{u})$($f$ 含 $\mathbf{u}$ 的非线性项)
经典方法
- 显式/隐式 Euler:$O(N/\varepsilon)$ 步($N$ 为空间维度,$\varepsilon$ 为目标精度)
- Runge-Kutta(RK4):$O(N/\varepsilon^{1/4})$ 步
- 多步法(Adams-Bashforth):$O(N/\varepsilon^{1/p})$ 步
经典下界:对 $d$ 维 ODE,达到精度 $\varepsilon$ 至少需要 $\Omega(\log(1/\varepsilon))$ 次函数评估(信息论下界)。
线性 ODE 的量子求解
情况一:常系数线性 ODE
$\dot{\mathbf{u}} = A\mathbf{u} + \mathbf{b}$,$A$ 为常数矩阵。
解:$\mathbf{u}(t) = e^{At}\mathbf{u}_0 + \int_0^t e^{A(t-s)}\mathbf{b}\,ds$
量子算法:对 $e^{At}$ 施加哈密顿量模拟(Trotter、LCHS、QSVT 等),见哈密顿量模拟相关教程。
复杂度(QSVT):
$$O\left((\|A\|t + \log(1/\varepsilon)) \cdot C_U\right)$$
其中 $C_U$ 为 $A$ 的块编码代价。
情况二:时变线性 ODE
$\dot{\mathbf{u}} = A(t)\mathbf{u} + \mathbf{b}(t)$。
困难:$A(t)$ 随时间变化,$e^{A(t)}$ 不再简单地可分解。
方法一:Magnus 展开
$$\mathbf{u}(t) = \exp\left(\Omega(t)\right) \mathbf{u}_0$$
其中 $\Omega(t) = \int_0^t A(s)ds + \frac{1}{2}\int_0^t\int_0^s [A(s), A(\tau)]d\tau ds + \cdots$
截断 Magnus 展开到 $p$ 阶,每项可由 Trotter 分解实现。
方法二:Schrödingerization
将 $\dot{\mathbf{u}} = A(t)\mathbf{u}$ 直接转化为薛定谔方程(见 Schrödingerization 教程)。对 $A(t)$ 非 Hermitian 的情况,通过辅助维度实现 Hermitian 化。
复杂度:
$$O\left(\|A\|_{\max} t \cdot \log(1/\varepsilon) \cdot C_U\right)$$
情况三:非齐次线性 ODE
$\dot{\mathbf{u}} = A\mathbf{u} + \mathbf{b}(t)$,$\mathbf{b}(t) \neq 0$。
Duhamel 公式:
$$\mathbf{u}(t) = e^{At}\mathbf{u}_0 + \int_0^t e^{A(t-s)}\mathbf{b}(s)ds$$
量子实现:用量子积分(quantum quadrature)实现卷积积分。将积分转化为受控旋转,用 QPE 提取相位。
非线性 ODE 的量子求解
非线性 ODE 的量子求解是量子科学计算的核心挑战。量子力学是线性的,不能直接模拟非线性动力学。目前有三大类方法。
方法一:Carleman 线性化
核心思想(Liu, Kolda, Sun, 2021; Quantum 7, 2023):
将非线性 ODE $\dot{u} = f(u)$ 通过引入新变量 $v_k = u^k$($k = 1, 2, \ldots, K$)线性化为无限维线性 ODE,然后截断到有限维。
对二次非线性 ODE:$\dot{u} = au + bu^2 + c$
引入 $v_1 = u$,$v_2 = u^2$,$v_3 = u^3$,…,则:
$$\dot{v}_1 = av_1 + bv_2 + c$$ $$\dot{v}_2 = 2v_1(av_1 + bv_2 + c) = 2av_2 + 2bv_3 + 2cv_1$$ $$\dot{v}_k = k v_{k-1}(av_1 + bv_2 + c) = kav_k + kbv_{k+1} + kcv_{k-1}$$
这是一个有限带宽的无限维线性 ODE($v_k$ 只耦合到 $v_{k-1}, v_k, v_{k+1}$)。
截断到 $K$ 阶:忽略 $v_{K+1}$ 以上的项,得到 $K$ 维线性 ODE:
$$\dot{\mathbf{V}} = M_K \mathbf{V} + \mathbf{c}$$
其中 $M_K$ 是 $K \times K$ 三对角矩阵。
复杂度分析(Costa, Jordan, Ostrander, Quantum 2023):
$$O\left(\text{poly}(\kappa, \log(1/\varepsilon)) \cdot T^{1+o(1)}\right)$$
其中 $T$ 为模拟时间,$\kappa$ 为 Carleman 矩阵的条件数。
局限性:
- Carleman 截断阶数 $K$ 随模拟时间和非线性强度增长,可能指数爆炸
- 条件数 $\kappa$ 可能指数增长
- 仅适用于多项式非线性($f(u) = \sum_k a_k u^k$)
2023 年改进(Costa, Jordan, Ostrander, Quantum 7, 913, 2023):
- 高阶 Carleman 截断:将 $K$ 从指数级改进为多项式级
- 重缩放技术(rescaling):控制条件数增长
- 扩展到非多项式非线性(通过多项式逼近)
方法二:线性化 + 黑盒 ODE 求解
核心思想(An, Liu, Lin, PRL 2023):
将非线性 ODE 问题编码为参数化线性 ODE,用量子算法求解参数化线性族。
方法:$\dot{\mathbf{u}} = f(\mathbf{u})$ 改写为 $\dot{\mathbf{u}} = A(\mathbf{u})\mathbf{u}$,其中 $A(\mathbf{u}) = \int_0^1 \nabla f(s\mathbf{u}) ds$(路径积分线性化)。
在每个时间步,用量子线性求解器(QSVT)求解局部线性化系统,用经典方法更新参数。
复杂度:
$$O\left(\text{poly}(n) \cdot T / \varepsilon^{1/p}\right)$$
对 $p$ 阶积分方案。
方法三:Schrödingerization + 线性化
核心思想(Jin, Liu, Yu, 2022-2024):
- 将非线性 ODE 线性化(Carleman 或 Taylor 线性化)
- 对线性化后的系统施加 Schrödingerization
- 用量子电路实现 Hermitian 化后的薛定谔方程
完整流程(以 $\dot{u} = -u + u^2$ 为例):
- Carleman 化:引入 $v_k = u^k$,得到 $\dot{\mathbf{V}} = M_K \mathbf{V}$
- Schrödingerization:$\mathcal{H} = (M_K + M_K^\dagger)/2 \otimes I + (M_K - M_K^\dagger)/(2i) \otimes P$
- 量子模拟:Trotter/QSVT 实现 $e^{-i\mathcal{H}t}$
- 后选择 + 测量
方法四:量子 Fourier ODE 求解器
arXiv:2504.10218(2025):
利用量子傅里叶变换,将 ODE 的解在频率空间中求解:
- 对 ODE 做傅里叶变换
- 在频率空间中,ODE 变为代数方程
- 用量子电路求解代数方程
- 逆傅里叶变换得到时域解
优势:对周期解特别高效。
各方法复杂度对比
| 方法 | ODE 类型 | 量子比特 | 门数 | 后选择 | 精度 |
|---|---|---|---|---|---|
| 哈密顿量模拟 | 线性(Hermitian) | $n$ | $O(\|A\|t \cdot n)$ | 无 | $\varepsilon$ |
| Schrödingerization | 线性(任意) | $n + n_p$ | $O(\|A\|t \cdot (n + n_p))$ | 有 | $\varepsilon$ |
| Carleman | 多项式非线性 | $nK$ | $O(\text{poly}(nK))$ | 有 | $\varepsilon$ |
| 黑盒 ODE | 一般非线性 | $n$ | $O(\text{poly}(n) \cdot T/\varepsilon)$ | 无 | $\varepsilon$ |
| Fourier ODE | 周期 ODE | $n$ | $O(n \log n)$ | 无 | $\varepsilon$ |
具体例子
例子一:Lotka-Volterra 方程(捕食者-被捕食者)
$$\dot{x} = \alpha x - \beta xy, \quad \dot{y} = \delta xy - \gamma y$$
二次非线性。Carleman 化到 $K$ 阶,得到 $K$ 维线性系统。
对 $\alpha = 1, \beta = 0.1, \delta = 0.075, \gamma = 1.5$,截断 $K = 10$ 已足够精确(对 $T = 10$)。
例子二:Van der Pol 振子
$$\dot{x} = y, \quad \dot{y} = \mu(1 - x^2)y - x$$
三次非线性($x^2 y$ 项)。Carleman 化需要更高阶截断。
例子三:Lorenz 系统(混沌)
$$\dot{x} = \sigma(y - x), \quad \dot{y} = x(\rho - z) - y, \quad \dot{z} = xy - \beta z$$
二次非线性,但对初值极度敏感(混沌)。量子算法只能在有限时间内有效预测,长期行为因蝴蝶效应不可计算。
局限性与开放问题
1. Carleman 爆炸
对强非线性(大系数或高次非线性),Carleman 截断阶数 $K$ 可能需要指数大才能保持精度。
2. 混沌系统
对混沌 ODE(如 Lorenz),量子算法不能超越经典算法的长期预测能力——蝴蝶效应是信息论的,而非计算复杂度的。
3. 守恒量
量子模拟天然保持范数(幺正演化),但 ODE 的解不一定守恒范数。需要后选择或归一化处理。
4. 边界条件
ODE 的边界条件在量子编码中可能难以实现(特别是边值问题,而非初值问题)。
总结
量子 ODE 求解已从线性 ODE 的标准哈密顿量模拟,发展到非线性 ODE 的 Carleman 线性化和 Schrödingerization 等多种方法。2023 年的改进(重缩放、高阶 Carleman)将复杂度从指数级改进为多项式级。然而,非线性 ODE 的量子求解仍是开放问题,Carleman 爆炸和混沌系统的不可预测性是主要障碍。
参考文献:
- Liu, J., Kolda, T. G., & Sun, R. (2021). Quantum-inspired classical algorithm for nonlinear differential equations. arXiv:2105.02124.
- Costa, P. C. S., Jordan, S. P., & Ostrander, A. (2023). Improved quantum algorithms for linear and nonlinear differential equations. Quantum, 7, 913.
- Jin, S., Liu, N., & Yu, Y. (2022). Quantum simulation of partial differential equations via Schrödingerization. arXiv:2212.13969.
- An, D., Liu, J., & Lin, L. (2023). Linear combination of Hamiltonian simulation for nonunitary dynamics with optimal state preparation cost. Physical Review Letters, 131, 150601.


Comments | NOTHING
该文章已经关闭评论