PINN 讲义第 2 章:微分方程、边界条件与数值近似
本文属于“PINN 入门讲义”系列:第 2 章。如果你是第一次阅读,建议先从 总目录 开始。
阅读说明
这份讲义面向希望系统理解 Physics-Informed Neural Networks 的读者,尽量从微分方程、数值近似和神经网络函数表示的基本语言讲起,再逐步进入 PINN 的残差构造与训练过程。
上一章讨论了函数、导数和偏导数。本章要把这些语言组织成真正的科学计算问题。微分方程不是孤立的公式,它通常和初值条件、边界条件、区域以及物理参数一起出现。只有这些信息共同给定时,“求解一个方程”才成为一个明确的问题。
这一章还要完成从微分方程到 PINN 的第二个关键过渡:为什么需要近似解,以及如何判断一个候选函数是否近似满足方程。传统数值方法通过网格和差分把连续问题转化为有限维代数问题;PINN 则用神经网络表示候选函数,并通过残差衡量它对方程的违反程度。两者实现方式不同,但都离不开同一个基本思想:真实解难以直接得到时,我们构造一个近似对象,并检查它满足原问题的程度。
2.1 微分方程给出的是变化规律
一个普通代数方程通常要求解一个数。例如 的未知量是 ,解是 。微分方程则不同,它的未知量通常是函数,并且方程中出现这个函数的导数。导数描述变化率,所以微分方程描述的是函数必须满足的变化规律。
最简单的例子是指数衰减方程:
这里 是未知函数, 表示时间, 是给定常数。方程的含义是:某一时刻的变化率 与当前量 成正比,并且方向相反。若 表示某种物质的剩余量,这个方程表达的是“剩得越多,衰减得越快;但总是在减少”。
只看这个方程,还不能唯一确定一个具体函数。函数
对任意常数 都满足方程。不同的 对应不同的初始量。若进一步给出
就能确定 ,从而得到
这说明微分方程本身给出变化规律,初值条件则告诉我们系统从哪里开始。二者合在一起,才形成一个初值问题。OpenStax 的微分方程教材也采用这种表述:微分方程配合一个或多个初始值,构成 initial-value problem。对初学者来说,重要的不是记住英文术语,而是理解“方程 + 初始状态”共同决定演化过程。
并不是所有问题都以初始时刻为核心。有些问题关心的是空间区间或区域内部的函数,并在边界上给定条件。考虑区间 上的方程
如果再给出
这就是一个边值问题。方程规定区间内部的变化关系,边界条件规定函数在区间两端的取值。Britannica 对 boundary value problem 的解释也强调:除了满足微分方程,解还必须满足给定边界值。对 PINN 而言,这一点非常重要,因为边界条件将来会变成损失函数中的边界误差项。
2.2 从常微分方程到偏微分方程
若未知函数只依赖一个自变量,方程中只出现普通导数,称为常微分方程。指数衰减方程就是典型例子。若未知函数依赖多个自变量,并且方程中出现偏导数,就得到偏微分方程。科学计算中大量重要模型都属于偏微分方程。
以一维热方程为例:
这里 表示位置 、时间 处的温度, 表示温度随时间的变化率, 表示温度沿空间方向的二阶变化, 是热扩散系数。这个方程说的是:温度随时间如何变化,由它在空间上的弯曲程度决定。若空间温度分布很平缓, 较小,温度随时间变化也较弱;若某处温度分布弯曲明显,扩散效应会更强。
热方程通常还需要初值条件和边界条件。若空间区间为 ,可以给出初值条件
表示初始时刻整根杆上的温度分布。若两端温度固定为零,则边界条件为
于是完整问题由方程、空间区间、时间范围、初始温度和边界温度共同组成。少了其中任何一部分,问题都可能不完整。
再看两个常见 PDE。波动方程
用于描述弦振动、声波等传播现象。它把时间二阶变化与空间二阶变化联系起来,通常需要给出初始位移、初始速度和边界条件。泊松方程
常用于稳态扩散、静电势和压力泊松问题。这里 是拉普拉斯算子,在二维中可写为
泊松方程不描述时间演化,而是描述空间区域内的平衡关系,因此通常作为边值问题出现。
这些例子共同说明,微分方程不是孤立的求导练习。它们把函数、区域、导数、物理参数和条件组织成一个整体。PINN 后续要做的事情,就是用神经网络函数 去同时满足这些组成部分。
2.3 解析解、数值解与近似思想
有些微分方程可以写出解析解,例如指数衰减方程的解是 。但在更多实际问题中,解析解很难得到,甚至根本无法用初等函数表达。复杂几何区域、非线性项、变系数、多维耦合以及复杂边界条件,都会使解析求解变得困难。
这时就需要数值解。数值解不是把函数写成一个漂亮公式,而是在有限的信息中构造一个近似对象。传统数值方法通常先把连续区域离散化。例如,在区间 上取网格点
其中 是网格步长。未知函数 不再被整体处理,而是在这些网格点上用数值 表示。连续问题由此变成有限个未知数的问题。
有限差分方法是最容易理解的离散化方法之一。它用相邻点的函数值近似导数。例如,一阶导数可以用前向差分近似:
如果要近似二阶导数,常用中心差分:
这个公式来自 Taylor 展开,也可以直观理解为用相邻三个点的函数值衡量 在 附近的弯曲程度。MIT 的数值 PDE 课程把有限差分作为理解 PDE 数值方法的基本入口,原因也正在这里:它直接展示了如何把导数换成网格点上的代数表达式。
例 2.1
考虑边值问题
并给定
取均匀网格 ,在内部点 上用中心差分近似二阶导数,可得
这里 近似 。对所有内部网格点写出这样的方程,再加上边界条件 、,就得到一个有限维线性方程组。求解这个线性方程组,便得到原边值问题在网格上的近似解。
这个例子揭示了传统数值方法的一般思路:把连续函数替换为有限个数,把导数替换为差分,把微分方程替换为代数方程组。这样做会引入近似误差,但也使问题变得可以计算。
2.4 残差:候选解对方程的违反程度
无论采用传统数值方法还是 PINN,我们都需要判断一个候选函数是否满足方程。残差就是为此引入的概念。
先从简单 ODE 看起。设方程为
如果候选函数是 ,把它代入方程左端,得到
若 对所有 都成立,则 精确满足方程。若 不为零,则它衡量了 对方程的违反程度。残差越小,说明候选函数越接近满足方程。
例如,令
由于 ,所以
这个候选函数精确满足方程。若改取
则
残差不再为零,说明这个函数虽然可能在某些点上接近真实解,但并不严格满足方程。
对于 PDE,残差的思想完全类似。若方程写成抽象形式
其中 是包含导数的微分算子,那么候选函数 的残差为
热方程的残差就是
如果这个残差在区域内部处处为零,说明候选函数满足热方程。实际计算中我们通常无法检查所有连续点,只能在有限个点上检查残差,或者用某种积分意义衡量整体残差。这一点已经非常接近 PINN:PINN 也是在采样点上计算神经网络函数的 PDE 残差,并把残差平方加入损失函数。
2.5 从数值残差到 PINN 残差
传统有限差分方法和 PINN 的外观不同,但都围绕“构造近似解并检查方程满足程度”展开。有限差分方法先选定网格,再把导数替换为差分表达式,最终求解代数方程组。PINN 则先选定神经网络 ,再用自动微分计算它的导数,并在采样点上计算 PDE 残差。
设热方程为
在有限差分方法中,我们可能在网格点上用时间差分和空间差分近似 与 。在 PINN 中,我们直接把神经网络函数 代入方程,并通过自动微分得到
若选取一组内部采样点 ,PINN 可以定义 PDE 残差损失
这个损失项的含义非常直接:在这些采样点上,网络函数代入方程后越接近零,损失越小。与传统有限差分不同的是,PINN 不必把解只表示为网格点上的数值,而是用一个连续可求导的网络函数表示近似解。与普通神经网络拟合不同的是,PINN 的训练目标不只来自观测数据,还来自微分方程本身。
当然,这并不意味着 PINN 自动优于传统数值方法。有限差分、有限元和有限体积方法有成熟的误差分析、稳定性理论和高效求解器;PINN 的优势更多体现在某些数据稀缺、反问题、复杂约束融合或高维场景中,但它也会遇到优化困难、损失项不平衡和采样不足等问题。因此,本章引入残差不是为了否定传统数值方法,而是为了让读者看到:PINN 中的 PDE 损失其实继承了科学计算中非常基本的思想。
本章小结
微分方程描述的是未知函数必须满足的变化规律。常微分方程处理单变量函数,偏微分方程处理多变量函数;初值条件给出系统的起始状态,边界条件给出区域边界上的约束。一个完整的求解问题通常由方程、区域、初值或边界条件以及物理参数共同构成。
由于实际方程往往无法写出解析解,数值方法通过离散化构造近似解。有限差分方法用相邻网格点上的函数值近似导数,从而把微分方程转化为代数方程组。残差则衡量一个候选函数代入方程后偏离零的程度。PINN 正是把这个残差思想与神经网络函数表示、自动微分和优化训练结合起来:用 表示候选解,用 衡量方程违反程度,并把残差写入损失函数。
习题
- 对方程 ,验证 满足方程。若 ,求 。
- 写出热方程 在区间 上的一个完整初边值问题,包括初值条件和两端边界条件。
- 用中心差分公式近似 ,说明公式中 、、 分别表示什么。
- 对方程 ,计算候选函数 的残差。
- 解释有限差分残差和 PINN 残差的共同点与不同点。
延伸阅读
- OpenStax, Calculus Volume 2, Section 4.1 “Basics of Differential Equations”: OpenStax Calculus Volume 2。
- MIT OpenCourseWare, Differential Equations, lecture notes: 18.03 Differential Equations。
- MIT OpenCourseWare, Advanced Partial Differential Equations with Applications, Lecture 01: 18.306 Advanced PDE。
- MIT OpenCourseWare, Numerical Methods for Partial Differential Equations: 18.336 Numerical Methods for PDE。
- Encyclopaedia Britannica, “Finite difference method”: Finite difference method。
- Encyclopaedia Britannica, “Boundary value”: Boundary value。
文章分享
如果这篇文章对你有帮助,欢迎分享给更多人!