恒美微站
首页
关于我们
建站服务
主题模板
案例展示
资讯中心
联系我们
AI“解决”Navier-Stokes方程?数学证明标准面临重构
首页
资讯中心
/
AI“解决”Navier-Stokes方程?数学证明标准面临重构
AI“解决”Navier-Stokes方程?数学证明标准面临重构
发布时间:2026/9/16 2:06:58
最近 OpenAI 放出一个消息说自己一帮人把 Navier-Stokes 方程搞出了点名堂还没等数学圈消化完就有位哲学家专门撰文分析这件事之后整个数学研究会往哪儿走。一个搞哲学的来谈数学和AI这组合放在以前挺少见但这次确实戳中了要害AI如果真的能“解决”百年未解的偏微分方程难题那数学这门学科赖以生存的证明标准、可验证性、甚至审美习惯全都得重新掂量。这事闹得热但大多数讨论都停在“AI好厉害”或者“不可能”两个极端。作为这些年一直关注AI和科学计算交叉方向的人我想从几个角度把这件事拆开聊聊OpenAI到底做了什么、数学界为什么反应这么大、哲学家担的是什么心以及如果你自己也想上手跑一跑这类实验该怎么开始。1. 一次声明两个世界的碰撞1.1 OpenAI做了什么以及它没做什么先得把事实捋清楚。Navier-Stokes方程是描述流体运动的核心方程从水流、气流到血液流动几乎所有宏观流体现象都能归到它底下。这方程长这样ρ(∂u/∂t u·∇u) -∇p ν∇²u f其中u是速度场p是压强ν是运动粘性系数f是外力。加上不可压缩流体的连续性方程∇·u 0就是一个完整的主控方程组。这方程难在哪难在有没有“整体光滑解”这个问题已经困扰了数学家一百多年。所谓整体光滑解就是给定任意合理的初始条件是否永远存在一个不产生奇点、速度不变成无穷大的解。2000年Clay数学研究所把它列为千禧年七大难题之一悬赏一百万美元。搞流体力学的工程师们其实不太在乎这个因为不管数学上有没有严格证明飞机照样设计、管道照样铺设数值模拟早就变成工业界日常操作。但纯数学家盯着这个问题的本质不撒手因为它背后牵扯到偏微分方程理论里最基础的存在性、唯一性、正则性问题。OpenAI这次的做法据公开资料看不是说“我证明了解整体存在且光滑”而是用类似深度学习的方法在特定条件下找到了构造解的新路径或者说给出了一种在数值意义下极其可靠的逼近方案。声明本身并没有宣称拿下一百万美元这点必须先讲清楚。但耐人寻味的是他们用了“solution”这个词在英文语境里既可以指“解”也可以指“解决方案”。数学界看到标题吓了一跳点进去发现是机器学习做的逼近情绪就从震惊变成了质疑。哲学家阿兰·哈维克在那篇文章里倒是看得挺开不管OpenAI声称的是哪种意义上的“解决”这件事已经打开了潘多拉盒子。因为以前数学界默认“用计算机解方程”是“数值试验”是工程的事不是数学本身的事。但这次一家做AI的公司跳出来直接站在偏微分方程这个纯数学的核心议题旁边往里面扔了一个深度学习方案。这个动作本身就已经改变了数学研究的生态位。1.2 Navier-Stokes方程凭什么让人头疼很多人不理解一个方程而已为什么一百多年都没搞定。我试着用大白话解释一下。Navier-Stokes方程描述的流体运动既有非常“乖”的层流状态也有极其“叛逆”的湍流状态。湍流的特点就是多尺度大涡套小涡小涡套更小的涡能量一层一层往小尺度传递直到粘性把它们耗散成热量。如果某一天粘性不够、尺度坍缩到底理论上就可能出现速度梯度变成无穷大的奇点。奇点意味着什么意味着流体的运动在某个瞬间某个点失去数学描述能力物理上也可能出现无法预测的“断崖式”变化。数学家们想证明的无非两件事第一不管初始条件怎么给解不会在有限时间内爆掉第二即便存在某种奇点它也不能造成能量或者涡量无界增长。这俩命题听着简单但涉及到的数学工具极其深需要调和分析、微局部分析、重整化群等等一大堆高射炮打蚊子的技术。一百多年来法国学派、苏联学派、现代偏微分方程专家们一批一批地投入最接近的结论也只是在某些特定条件或者低维情形下证明了部分结果三维情形下的完整证明至今遥遥无期。工程上的数值模拟倒是一直在进步但数值解不是严格证明。你做网格剖分把空间时间离散化然后算出近似结果哪怕误差控制到小数点后十位依然只是证据而不是证明。哲学家担心的正是这一点如果人们开始接受“用深度学习跑出来的极其精确的数字结果”作为某种意义上的数学答案那么未来数学的“证明”二字含义会不会悄悄改变。2. 哲学家视角什么才算“解决”2.1 机器学习给出的结果算证明吗这大概是整场讨论的核心。数学证明有一个基本要求任何一步推理都必须能被人类理解、检验、重放。你可以用计算器算999999×999999但你不能说“因为计算器告诉我结果所以它正确”。你得能给出手算规则、解释进位原理或者至少说明这个计算器验证的算法是对的。数学证明的可验证性是这门学科的立身之本。但机器学习给出的结果完全不一样。训练一个神经网络需要大量数据、随机初始化、随机梯度下降、各种超参数……最后得到一个黑箱函数。这个函数拟合了方程的解然后你说“我找到了Navier-Stokes方程的一个高精度近似解”。数学家会怎么反应第一反应肯定是你怎么验证靠另一套数值网格交叉验证那就是循环论证因为你依然没有绕开“数值计算不等于证明”的质疑。哲学家会追问一个更根基的问题知识到底是不是一定要人脑可以理解如果是那AI给的结果顶多算“数据”不是“知识”。如果不是数学就变成了一个“黑盒学科”数学家的工作退化为设计网络结构、跑训练、检查输出剩下的事情全权委托给优化算法。这听上去有点惊悚但按目前AI发展的势头确实无法回避。四色定理当年被计算机辅助证明的时候数学界就吵过一轮。但四色定理的证明本质上还是人可以逐步检查的图论问题枚举成几千种情形每种情形用确定性的算法检查。Leaning Tower of Hanoi那种离散问题还好办Navier-Stokes这类的连续偏微分方程完全不是一回事无限维空间、可能存在的奇异集、各种复杂的先验估计……这里面的矛盾在于机器学习恰恰是一个从有限数据学习无限维映射的概率性工具。用概率性工具去逼近一个确定性命题然后把它叫做“解决”哲学上很难让人安心。2.2 数学界真正怕的不是错是无从下手我看了不少数学家的反应发现他们真正的焦虑不只是“AI的答案对不对”而是“AI的答案不可审查”。如果DeepMind那套AlphaFold在蛋白质结构预测上的成功还算“经验科学”的领地那么数学这个学科不一样数学不靠实验靠推理。你可以说AlphaFold给出一个结构然后生物学家去实验室验证但你不能说神经网络给Navier-Stokes方程一个解然后数学家想办法验证——因为验证这个解本身可能比找解更难。哲学家在这块塞了一针见血的概念数学中的“透纳测试”。你从一张粗糙的初始条件出发让AI不断给出后续演化它看起来是对的能量守恒也满足边界条件也不错但这些“看起来”连在一起不等于从逻辑上推导出一条纯粹的链。数学家怕的就是这个没有链只有一堆相互印证的经验证据。更微妙的是审美层面的问题。好的数学证明不仅仅是一个结论正确还应该提供一个洞见为什么这个结论是对的结构上藏着什么证明过程往往会让背后的理论框架变得清晰比如调和分析里的振荡积分技巧、椭圆方程里的正则性理论。一个黑箱网络训练出来的“解”没有给出任何结构性的启示。即使结果是对的数学家也学不到东西。这就好比有人告诉你“宇宙外面还有一个平行宇宙”你问他怎么知道的他说“我训练了一个大模型它告诉我而且你要检查它怎么知道的你得再训练一个更大的模型”。数学这门学科如果走到这一步确实挺荒诞的。3. 数学走向工具变了标准也会跟着变3.1 从“证明定理”到“发现规律”抛开纯哲学争论现实中AI已经在帮数学家发现新规律了。比如图论和组合学领域深度学习和搜索算法联手帮研究者找到了一些人类从未观察到的模式。再比如代数几何里用AI做奇点分类或者构造反例的事也已经有了先例。未来的数学研究很可能变成两条腿走路一条腿是人脑直觉驱动的猜想和证明另一条腿是AI在高维空间里探索结构、生成候选定理。Navier-Stokes事件最微妙的地方在于它把这个趋势从“AI发现新知识”推向了“AI生成可被验证的构造”。OpenAI那帮人大概率不是想去抢千禧年大奖他们真正想做的是展示一个范式在偏微分方程的求解上深度学习方法可以做到传统数值方法做不到的精度和泛化能力。如果这种范式被数学界接受那么接下来所有人都会开始往同一个方向卷用神经网络去构造以前够不着的解哪怕暂时拿不出严格证明。我个人的判断是这条路短期内不会替代传统偏微分方程理论但一定会催生一门“计算发现的数学”或者叫“算法偏微分方程理论”的分支。这个分支里机器生成的结果经过形式化验证之后会被赋予类似“已证定理”的地位。这条路走通的话数学的产出效率会有质的飞跃但代价是数学家得接受“我的研究对象里面有一环是机器推理的结果我没法人肉验证”这个事实。3.2 形式化验证会变成硬门槛如果AI生成的结果想被数学界纳入知识体系光靠训练日志和数值误差肯定不行必须得有一层“翻译器”把AI的输出变成逻辑上可以机械检查的证明。这就是形式化验证formal verification和证明助手proof assistant的作用。Lean、Coq、Isabelle这些工具本质上都是把数学证明变成一种高级类型语言的程序然后由机器逐步检查每一步类型推导是否正确。这里面有个关键点证明助手不是靠“统计拟合”来判断对错而是靠确定性的规则一步接一步从公理推出目标。换句话说这种验证方式在哲学上仍然是“可重放”的只不过重放的主体是机器。数学界对这种方式接受度远高于机器学习黑箱因为四色定理的计算机辅助验证本质上就接近这种模式。所以未来很可能会出现一个标准工作流先用神经网络或者强化学习生成一个候选解或者候选证明再把候选结果翻译成Lean的定理然后用证明助手去机械验证。验证通过之后即使没有人完整“看懂”每一个步骤数学界也可以把这个结果当作一个可靠结论编入数据库。这听起来很美但有一个巨大的现实问题把神经网络的结果翻译成形式化语言难度不亚于让一个会说但不会写的文盲完成一篇学术论文。神经网络内部的结构是连续数值权重的组合和离散的逻辑推理之间隔着一条巨大的鸿沟。OpenAI如果真的在偏微分方程上做了实质工作那接下来他们会面对一个修罗场必须提供形式化证据否则数学家不会买单。历史上有人做深度学习“证明”了某条定理最终被形式化验证卡住了只能无限期挂着预印本。这应该是所有想用AI攻数学的人必须提前攒的经验。3.3 数值实验与理论证明的边界重构退一步看用数值实验辅助数学Public研究并不是新鲜事。现代数学里面很多猜想的产生都源于大规模数值计算比如统计力学里的重整化群猜想比如某些数论函数分布的猜想。数值证据一直被视为“试探性支持”不是终点。但如果数值证据由AI给出、且精度远超普通数值方法它带来的说服力就会上升一个数量级。于是边界开始模糊到底什么叫“足够多的证据”在Navier-Stokes这个具体例子里如果AI能极其精确地逼近某类临界情况下的解并且在大量随机初始条件下都不出现爆点那任何人都很难忽视这个证据。问题是这距离“解整体存在”的普遍性命题还很远。你可以证明一万个具体情形但无法证明第一万零一个。除非你能用形式化验证把“神经网络给出的解是整体光滑的”这个命题变成可机械检查的结论——这也就回到了上一节的逻辑。所以从实际研究方向看未来偏微分方程领域里“理论派”和“计算派”的分工不会消失但“计算派”的队伍会庞大很多。很多人会专门研究一种新工具把网络架构、损失函数、训练算法都当成某种“假设”然后用严格的先验估计去证明这种假设确实能逼近真解。这个方向已经有人在做了比如关于深度网络逼近连续函数的泛函分析结果、关于物理信息神经网络收敛性的论文这两年越来越多。4. 如果你想亲自上手最小可复现的PINN示例说了这么多形而上的东西该落地了。如果你对“用AI解偏微分方程”这件事感兴趣最值得尝试的就是物理信息神经网络Physics-Informed Neural Networks简称PINN。它就是让神经网络去拟合PDE的解同时把PDE的残差作为损失函数的一部分。OpenAI那类工作虽然复杂得多但核心思路和PINN一脉相承。我自己跑过几个类似实验踩了不少坑下面把最小可复现的流程写出来你照着敲一遍就能看到效果。4.1 从一个比Navier-Stokes简单但思路一致的方程开始直接跑Navier-Stokes对于新手来说太重了推荐从一维Burgers方程开始。它长这样u_t u * u_x ν * u_xx其中u u(x, t)ν是扩散系数。这个方程既有非线性对流项又有扩散项很多跟湍流相关的数学结构它都有理解起来又不至于掉进复杂的矢量分析里。我这里的示例用的是PyTorch环境要求无非是numpy、torch、matplotlib。网络结构不需要多花哨一个四五层的全连接网络激活函数用tanh输入是(x, t)二维坐标输出是u的预测值。import torch import torch.nn as nn import numpy as np import matplotlib.pyplot as plt # 定义网络 class PINN(nn.Module): def __init__(self): super().__init__() self.net nn.Sequential( nn.Linear(2, 64), nn.Tanh(), nn.Linear(64, 64), nn.Tanh(), nn.Linear(64, 64), nn.Tanh(), nn.Linear(64, 1) ) def forward(self, x, t): return self.net(torch.cat([x, t], dim1))训练的核心是把三个损失加在一起初始条件损失、边界条件损失、PDE残差损失。PDE残差用自动微分算这是整个方法最关键的地方。def pde_residual(model, x, t, nu0.01): x x.clone().requires_grad_(True) t t.clone().requires_grad_(True) u model(x, t) u_t torch.autograd.grad(u, t, grad_outputstorch.ones_like(u), create_graphTrue)[0] u_x torch.autograd.grad(u, x, grad_outputstorch.ones_like(u), create_graphTrue)[0] u_xx torch.autograd.grad(u_x, x, grad_outputstorch.ones_like(u_x), create_graphTrue)[0] residual u_t u * u_x - nu * u_xx return residual训练的时候在区域[-1, 1] × [0, 1]里面随机撒一些点初始条件用 -sin(pi * x)边界条件让位置在两端时 u 等于0。这样就是一个标准的PINN训练闭环。4.2 关键参数与调优经验很多人跑PINN出来的loss死活不降一个很重要的原因是损失权重没配平。PDE残差的数值量级通常很大初始条件和边界条件也各不相同叠在一起如果不加权梯度方向就会被量级大的loss带跑偏。我自己常用的方法是在训练初期给残差损失乘一个0.01或者0.1的系数等边界和初始条件拟合得差不多了再慢慢把权重修正过来。如果你用的框架是DeepXDE它自带很多权重策略但自己手撸网络的话一定要记得处理这一步。另一个影响非常大的点是激活函数的选择。ReLU这类线性分段激活函数在求解PDE时特别容易出问题因为二阶导基本是0直接让残差计算垮掉。我的实测经验是tanh最稳偶尔用sin也能跑出不错的结果。原因也好理解PDE求解需要足够光滑的逼近空间tanh无穷次可微ReLU连二阶导数都指望不上天然不适合这个场景。训练步数至少五千步起步一万步左右会比较靠谱。别指望几十步就能看到漂亮的波包PINN收敛速度跟普通图像分类任务完全不在一个量级。这里有个实操小技巧把训练过程中的loss曲线画出来如果前期初始条件loss降得很快、但PDE残差loss一直平着不动大概率是权重失衡或者网络容量不够。加层也好调权重也好总得动一头。4.3 复现时的常见问题和排查问题一loss出现NaN。这事我在GPU环境里踩过好多次。图像分类里梯度爆炸可以用gradient clipping解决PINN里也适用但更重要的是把学习率调低默认的1e-3对PINN来说经常偏高 降到1e-4或者5e-4会稳很多。问题二解在边界处震荡。这个问题通常出现在x接近两端的时候网络输出的u值边缘处拟合不准确边界条件没法精确满足。解决办法是把边界点做稠密采样或者直接修改网络输出结构比如加一个保边界的映射层让输出在边界上自动为0。问题三训练时间太长。PINN最大的痛点之一就是每个训练轮次都要做高阶自动微分计算图又深又重。我试过一个有点效果的做法先在粗网格上用少量点训练一个粗略解再用这个解的权重初始化细网格上的网络这样收敛确实能快不少。这种方法本质上是课程学习curriculum learning的思路在PINN实践中很实用。我在实操中还有一个体会就是要多做“残差可视化”。训练完别只盯着loss曲线直接画解的云图看看预测出的u和真解到底差多少。很多网络训练时loss看似在降但速度场在局部区域已经出现明显假形变就是一个盆地一个坑那种。你一旦眼能识别出这种pattern对调试是真的有帮助。5. 工具的成熟度接下来该学什么如果你觉得手撸网络太费劲可以了解一下DeepXDE这个库。它把PINN的采样、损失加权、边界条件封装得比较完善底层同时支持TensorFlow和PyTorch。想做更接近工业级的偏微分方程求解实验Neural Operator的路线也很值得关注FNO傅里叶神经算子和DeepONet是这两年最火的两个方向它们不再是单点求解而是学习一个从初始条件到解的映射测试时遇到新的初始条件也能不用重训直接出结果。OpenAI那类工作里面有一些思路跟neural operator是共通的都是用数据驱动的方式简化传统数值计算。如果你既想搞数学又想搞AI那除了这些工具之外最好还耐着性子补一补偏微分方程的基础理论。我的感觉是很多人被工程上“反正能跑出漂亮的图”迷惑实际上对守恒律、弱解、正则性这些概念一脸懵这导致他们在写论文或者做分析的时候总是差点意思。现在这个领域不缺会调参的人缺的是既能翻译偏微分方程理论、又能把网络架构落到实处的人。6. 最后说几句实在话哲学家撰文这件事本质上是在替数学共同体踩一脚刹车大家别急着欢呼AI解决了几百年难题先想清楚什么算解决、什么算证明、什么算知识。数学家们对AI的态度这两年明显在升温但不可能一步从“数值结果”跨到“定理”中间必须架一座形式化或者可机械检查的桥。我个人的看法是OpenAI声称解决Navier-Stokes的细节最终也许经不起严格的数学推敲但这不重要。重要的是它把AI和纯数学之间的距离又压缩了一层。你可以不把它的输出当作证明但你不能否认那个文档的出现让一大群做了多年偏微分方程的人开始认真学习神经网络是怎么训练的了。学术范式的转移往往就是这个样子不是靠某一个石破天惊的绝对突破而是靠一次又一次的边界碰撞让“不可能”悄悄让位给“值得再想想”。如果你想参与进来别急着冲进最硬的题目。先跑通一个PINN感受一下自动微分在PDE求解里有多强、也感受一下它有多不靠谱再去看OpenAI的声明、哲学家的文章你的理解会完全不同。技术的东西经常几年就翻篇但桌面底下那股“数学何为”的追问永远值得琢磨。