2016年,OpenAI的机械手能玩魔方了。这事当年挺轰动的,一个五指机械手,完全靠强化学习,从零开始摸索怎么转魔方。但很少有人问过一个问题:这套系统训练的时候,到底用了多少数据?
答案是相当于一台顶配电脑连续跑上百年的模拟经验。
对,你没看错。一个玩具级别的任务,背后是几乎不可能在真实世界复现的数据量。这就是机器人学习领域一直以来的死结:机器人这东西,你没法像训练ChatGPT那样,从互联网上扒几十亿条数据。每一次真实世界的实验,都得有真机器人、真场地、真的碰撞风险,成本高到离谱。
那怎么办?
慕尼黑工业大学、达姆施塔特工业大学、特伦托大学等机构的十几位研究者联合写了一篇47页的综述论文,系统梳理了机器人学界这些年摸索出的一条解法:既然数据不够,那就把物理定律"塞"进AI模型里,让模型不用靠海量数据也能懂得基本的物理常识。
这篇文章我们就来聊聊,机器人学界是怎么给AI装上"物理直觉"的,以及这背后藏着哪些有意思的设计智慧。
为什么机器人不能只靠数据堆出来
先说清楚问题出在哪。
深度学习*:一类通过多层神经网络从大量数据中自动学习特征和规律的机器学习方法,是当前人工智能技术的核心支柱。
深度学习在图像识别、语言处理这些领域已经证明了一件事:只要数据够多、算力够猛,模型的表现就能不断往上涨。这套逻辑放在ChatGPT、AlphaGo身上都成立,因为文本和棋局这些东西,要么互联网上现成的,要么可以在计算机里无限次模拟对局,几乎零成本。
但机器人不一样。一个有20多个自由度的灵巧手,运动学和动力学极其复杂,充满了非线性效应、欠驱动、还有各种接触碰撞的混合模式。你想收集这类系统的真实运行数据,得靠真实的硬件实验、专业设备、人工监督,还得考虑安全性。这就是为什么机器人领域始终没能复现"大力出奇迹"的路径。
这就好比你想教一个孩子骑自行车。如果按照纯数据驱动的思路,你得让他摔上几万次才能总结出平衡的规律,而且每次摔倒都有磕伤的风险,家长肯定受不了。但如果你先告诉他"身体往哪边倒,车把就往哪边打"这个基本的物理道理,他可能摔几次就学会了。这个先验知识,不是让他不用练习了,而是让每一次练习都更有效率,同时避免一些低级的、危险的错误。
物理先验*(physics priors):指关于物理系统运行规律的已知知识,例如牛顿定律、能量守恒等,可以被显式编码进机器学习模型中,作为一种"先天知识"来补充数据的不足。
研究者们把这种"给AI装物理常识"的做法统称为物理嵌入学习(physics-embedded learning)。这篇综述的核心贡献,就是把这个领域里五花八门的做法整理成了一套统一的分类体系。
三条路:物理知识可以嵌在哪里
物理先验不是一整块铁板,可以嵌入到机器学习流程的不同环节。论文提出了三个层次,这也是整篇综述的骨架。
第一条路叫物理引导(physics-guided),意思是用物理知识去改造模型的输入数据,或者对数据做预处理、后处理。举个例子,如果你知道机器人手臂的某个物理模型能大致算出运动轨迹,那就可以先用这个物理模型算一遍,把结果当作特征喂给神经网络,而不是让网络从原始传感器数据里凭空猜。
第二条路叫物理编码(physics-encoded),这是把物理知识直接刻进模型的架构里,比如设计专门的网络层、连接方式,强制模型的输出满足某些物理约束。这是本文覆盖最多的一类方法,占了71%的篇幅,因为这是目前最主流的技术路线。
第三条路叫物理知情(physics-informed),做法是在训练模型时,往损失函数里加一项惩罚,如果模型的预测违反了物理定律,就扣分。这种方式不改变模型架构,只是在训练过程里加了一道"物理体检"。
这三条路的关键区别在于生效的时机不一样。物理引导发生在数据准备阶段,之后可能一直作为预处理模块存在;物理编码是直接焊在模型结构里的,训练和推理时都在起作用;物理知情只在训练时发挥作用,一旦模型训练完,这个约束就"退场"了,模型的推理阶段完全不受它直接影响,只是间接体现在学到的参数里。
这就好比装修房子的三种方式。物理引导相当于你先把建材按照标准尺寸裁好再运进屋(数据预处理);物理编码相当于承重墙本身就按照抗震规范来浇筑,这堵墙从盖好那天起就一直在起作用;物理知情相当于施工队在盖房子的过程中,工头拿着规范手册不断检查,"这里不符合抗震要求,返工",但房子盖完之后,工头就走了,规范手册也不会再影响这栋楼的实际使用——它的影响已经沉淀进了墙体的结构里。如果不做工头检查这一步,房子可能盖得更快,但抗震性能没保障。
物理编码:把牛顿定律焊进神经网络
物理编码这条路是重头戏,因为它涉及的物理原理最丰富,做法也最讲究。
拉格朗日力学*:经典力学的一种表述方式,用系统的动能和势能之差(拉格朗日量)来描述运动规律,通过欧拉-拉格朗日方程推导出系统的运动方程。
这类方法里最经典的一个叫深度拉格朗日网络(Deep Lagrangian Networks,简称DeLaN),是2019年由Lutter等人提出的。它的思路是这样的:机械系统的运动可以用拉格朗日力学描述,核心是两个量,动能和势能。DeLaN不直接学习机器人的加速度,而是用神经网络分别学动能对应的惯性矩阵和势能,然后通过物理公式反推出加速度。
这里有个关键设计:惯性矩阵必须是正定的(数学上表示这个矩阵描述的是一个"合理"的物理系统,不会出现负质量这种荒谬结果)。DeLaN通过Cholesky分解*(一种矩阵分解方法,能保证分解后重新相乘得到的矩阵天然满足正定性)强制满足这个约束,而不是让网络自己去"碰运气"学出一个正定矩阵。
这就好比你在设计一个体重秤。你当然可以直接训练一个神经网络,输入各种传感器信号,输出体重数字,但这样训练出来的秤,理论上有可能显示负数体重,这在物理上是荒谬的。而如果你换一种设计,让秤内部的计算过程天然保证输出是平方项(比如输出是某个中间量的平方),那不管训练数据多古怪,秤显示的读数永远不可能是负的。DeLaN对付惯性矩阵用的就是这个思路,不是靠训练去"教"网络别输出负数,而是从架构上直接让负数这个选项根本不存在。
这么做的好处是明显的。论文提到,DeLaN在训练数据有限的情况下,比起纯黑箱的神经网络,能更好地泛化到没见过的速度和加速度区间,还能保证系统的能量守恒特性。这对机器人控制来说很重要,因为一个不遵守能量守恒的动力学模型,长期预测很容易发散、崩掉。
在DeLaN基础上,研究者们做了大量扩展。比如2025年提出的FeLaN(Floating-Base Deep Lagrangian Network),把这套框架扩展到了带浮动基座的机器人系统(比如四足或人形机器人,它们的"根节点"不是固定在地面上的),还利用机器人分支运动链的结构特性,引入了稀疏性约束,减少了需要学习的参数。也有人把摩擦力模型(比如粘性摩擦、库伦摩擦)结合进DeLaN,让模型更贴近真实机器人的运动特性。
哈密顿力学*:另一种经典力学表述方式,用系统的总能量(哈密顿量,是广义坐标和广义动量的函数)来描述运动规律。
和拉格朗日方法平行发展的还有哈密顿神经网络(Hamiltonian Neural Networks,HNN),思路类似但基于哈密顿力学。这类方法的一个变种叫端口哈密顿(port-Hamiltonian),特别擅长处理有能量耗散、能量交换的系统,比如带摩擦、带外部输入的机器人。
拉格朗日和哈密顿这两大类方法本质上都在做同一件事:不让神经网络随意学习动力学,而是强迫它按照物理学几百年积累下来的框架去学。这就像教一个新手厨师做菜,你不是让他随便试错,而是先教他"火候、调味、刀工"这些底层原理框架,再让他在框架内自由发挥。
模型结构化神经网络:给不同物理效应分配专门的"车间"
除了拉格朗日和哈密顿这两套经典力学框架,还有一大类方法叫模型结构化神经网络(Model-Structured Neural Networks,简称MSNN)。
模型结构化神经网络*:一种网络架构设计思路,通过专门设计的层或内部连接来反映特定的物理原理(比如力的叠加、空气阻力和速度的平方关系),而不是套用通用的多层感知机结构。
这类方法的做法更"接地气",不追求严格的力学理论框架,而是针对具体的物理现象,专门设计对应的网络层。举个车辆动力学的例子,论文提到有研究者设计了专门的层来分别建模空气阻力、牵引力、刹车力,因为这些物理量之间是叠加关系,而且空气阻力和车速的平方成正比,这是牛顿力学里的基本规律。把这个规律直接刻进网络结构里,比让网络自己从数据里"猜"出平方关系要靠谱得多,尤其是在训练数据不够多的情况下。
这就好比一个工厂的生产线设计。如果你造一台通用机器,让它同时处理所有工序,它可能什么都会一点,但效率低、容易出错。但如果你把生产线拆成专门的车间,冲压车间只管冲压、喷漆车间只管喷漆,每个车间按照对应工艺的规律来设计设备参数,整条生产线的效率和稳定性都会提升。模型结构化神经网络干的就是这个事:给空气阻力分配一个"车间",给牵引力分配一个"车间",每个车间内部的计算逻辑都是照着对应的物理规律定制的。
论文里提到不少实际案例。有研究者用这类方法学习车辆的纵向动力学(也就是加速和刹车),把牛顿运动定律、空气阻力的平方关系、还有历史控制输入对当前加速度的影响都编进了网络架构,用在了自动驾驶的刹车控制上。也有人把这套思路用在转向控制上,甚至扩展到了在极限工况下驾驶(比如赛车漂移)的场景。
一个值得注意的现象是,这类方法在多篇论文中都被证明,相比通用的多层感知机或者循环神经网络,在数据有限的情况下有更好的样本效率和泛化能力,而且训练出来的参数往往具有可解释性,你可以看懂网络里某个子模块到底在学什么物理效应。但代价也很明显:设计这样的架构需要大量的工程经验和领域知识,而且往往是针对某一类机器人量身定制的,换个机器人平台可能就得推倒重来。
混合物理学习:分工合作而不是全靠猜
再讲一类思路,叫混合物理学习架构(hybrid physics-learning architectures)。
这类方法和前面提到的模型结构化神经网络不一样,它不是把物理知识"焊死"在网络架构里,而是让物理模型和神经网络分工合作,各干各的活,通过模块化的方式互相配合。
最常见的一种做法叫残差学习(residual learning)。思路是这样的:先用一个成熟的物理模型(比如车辆的单轨模型)算一个大致的预测结果,然后用神经网络专门学习这个物理模型算得不准的那部分,也就是残差。论文里提到,有研究者用这个思路修正物理模型对赛车动力学的预测误差,只用了很少的赛道数据就取得了不错的效果。
这个思路挺聪明的。物理模型虽然不完美,但至少提供了一个"八九不离十"的起点,神经网络不需要从零开始学整个系统的行为,只需要专注学"物理模型漏算了什么"。这比让神经网络单独扛下整个任务要轻松得多。
这就好比修理一台老式机械手表。一个从没学过钟表原理的学徒,如果让他直接盯着零件猜怎么修,大概率会一头雾水。但如果有个老师傅先把表拆开,告诉他"这个基本结构就是齿轮传动,理论上应该这样走时",学徒接下来只需要专注找出"哪个齿轮磨损了导致走时不准",而不是从头去发明整套齿轮传动理论。物理模型扮演的就是老师傅的角色,给出一个大方向,神经网络负责纠偏。
另一类做法是学习复杂子系统(learning complex subsystems)。比如车辆的轮胎力学模型,传统上要靠昂贵的实验设备去标定参数,费时费力。有研究者干脆用神经网络直接学习轮胎的受力特性,然后把这个学出来的模块嵌入到完整的物理车辆模型里,用于速度估计、动力学仿真甚至自动漂移控制。
还有一类做法叫学习型传感器预处理(learning-based sensor preprocessing),用神经网络先把原始传感器信号处理成更干净、更有意义的中间量,再喂给物理模型或者卡尔曼滤波器去做最终的状态估计。比如车辆侧滑角估计,先用卷积神经网络处理原始传感器数据,输出结果再交给卡尔曼滤波器结合车辆物理模型做最终修正。
物理知情损失函数:训练时的物理体检
前面讲的都是把物理知识焊进架构里的做法,现在说说第三条路:物理知识学习,也就是在训练损失函数里加物理约束。
物理信息神经网络*(Physics-Informed Neural Networks,PINN):由Raissi等人在2019年提出的方法,核心思路是让神经网络的输出满足某个微分方程的残差最小化,从而在训练过程中把物理定律作为软约束嵌入损失函数。
这类方法的关键特点是,它不改变神经网络本身的结构,网络还是常见的多层感知机或者循环神经网络,物理知识完全通过训练时的"惩罚项"来发挥作用。具体做法是,把物理方程写成一个残差形式,如果网络的预测违反了这个方程,残差就不为零,训练过程会试图把这个残差压到最小,同时也在压低和真实数据的偏差。
这就好比一个作文老师批改学生作文。老师不会直接改写学生的写作能力(架构),而是在学生交上来的每一篇作文后面打分,如果逻辑不通顺就扣分,如果论点前后矛盾也扣分。学生通过反复看到扣分,慢慢调整自己的写作习惯,但这个"扣分标准"本身并没有改变学生大脑的思维结构,它只是在训练过程中起作用,一旦学生毕业了(模型训练完成),批改的过程就结束了,只有内化后的写作习惯留了下来。
论文里提到不少应用案例,比如用PINN学习软体机器人的形变。软体机器人涉及连续介质力学的偏微分方程,传统方法需要昂贵的数值求解器,用PINN训练出一个代理模型之后,推理速度能大幅提升,因为不再需要每次都跑复杂的数值求解,直接用训练好的网络做一次前向计算就行。
也有研究者用PINN估计四旋翼无人机的推力和阻力参数,把刚体运动方程写成残差项加入损失函数,在飞行数据有限的情况下,表现优于传统的扩展卡尔曼滤波方法。
不过这类方法也有个绕不开的局限:物理约束只是"软"约束,训练损失降到很低,不代表推理时模型的输出就一定严格满足物理定律。这和物理编码那种"结构上就不可能违反"的硬约束是有本质区别的。论文特别强调了这一点,损失函数里的残差小,只能说明训练数据附近模型表现得比较符合物理规律,但没法保证在训练分布之外的场景下依然守规矩。
物理引导:不改架构不改损失,只改数据
最后说说物理引导这条路,这是三条路里投入研究相对最少的一条,占比只有16%,但增长很快,尤其是在2022年以后。
物理引导的做法五花八门,但核心逻辑是一致的:不动模型架构,不动训练目标,只在数据和特征层面动手脚。
一种常见做法是用物理模型给神经网络提供结构化的输入特征。比如估计车辆侧滑角时,先用一个简单的运动学物理模型算出一个粗略估计,再把这个估计值和其他传感器信息一起喂给循环神经网络,让网络在物理模型的基础上做进一步修正。
另一种做法涉及几何学习(geometric learning),把数据投影到符合物理约束的几何空间里再训练。比如机器人手臂的旋转状态天然属于一种叫SO(3)的旋转群空间,如果直接用欧几里得空间的方式处理这类数据,容易出现不符合旋转规律的错误结果。有研究者把数据投影到这个旋转群对应的切空间上训练,训练完再映射回原本的几何空间,这样学出来的策略在涉及旋转的任务上表现更好。
还有一类做法是频域学习(frequency-domain learning)。这类方法的物理依据是,人类动作的频率成分有明确的生理学上限,一般不会超过10赫兹。基于这个事实,研究者把人体动作数据转换到频域后截断高频部分,这样得到的特征既压缩了数据量,又天然对动作持续时间不敏感,不管一个动作做得快还是慢,频域描述子的大小是固定的。
这类物理引导方法的最大优点是侵入性最小,几乎能兼容任何现有的机器学习算法。但代价是,这种引导对最终学出来的模型本身没有约束力,一旦进入推理阶段,物理先验的作用就消失了,模型完全靠自己已经学到的东西行事,没有实时的物理"兜底"。
从视频生成模型看物理常识的缺口
这篇综述还专门提到了一类挺有意思的应用,就是视频世界模型(Video World Models,VWM)里的物理一致性问题。
视频世界模型*:一类能根据当前观测和动作预测未来场景(通常以视频形式)的生成模型,常用于机器人的规划和决策支持。
这块内容很值得说说,因为它揭示了一个反直觉的事实:视觉上看起来很逼真的生成视频,不代表物理上是对的。论文提到,有研究团队专门设计了带物理一致性检验的视频生成模型,比如在自动驾驶场景里,让模型生成的视频严格遵循4D占据网格(一种同时表示空间位置和时间演化的物理状态表示),确保车辆运动符合动力学约束;也有团队在机械臂操作场景里,让视频生成模型同时学习质量、摩擦系数这些物理参数,通过可微分渲染技术从画面里反推出物理属性。
这说明了一个道理:单纯让AI在大量视频数据上做训练,并不能保证它自动理解物理规律。综述里引用了一项研究,发现视觉语言模型即使见过海量视频,依然缺乏对基础物理交互的直觉理解。这也侧面证明了这篇综述的核心论点,物理先验不是可有可无的装饰,而是数据驱动方法本身填补不了的缺口。
软件生态:拼图式的工具箱
这篇综述还专门用了一节篇幅梳理了支持这些方法的开源软件生态,这部分内容对想动手实践的研究者很有参考价值。
论文列出了将近20个开源框架,分成几大类:支持模型结构化和混合物理架构的工具(比如NeuroMANCER、nnodely),支持神经常微分方程的工具(比如torchdiffeq、torchdyn),支持方程发现和系统辨识的工具(比如PySINDy),支持物理信息机器学习的工具(比如DeepXDE、NeuralPDE.jl),以及可微分仿真引擎(比如Brax、Warp)。
一个挺有意思的观察是,目前没有任何一个软件框架能同时支持物理引导、物理编码、物理知情这三条路线的完整工作流。研究者往往得根据具体需求,东拼西凑好几个工具才能搭出一条完整的实验流水线。论文明确把这个列为未来值得开发的方向,一个能把这三条路统一起来的软件生态,从模型定义、训练、评估到部署,一气呵成。
这就好比你要装修一套房子,市面上有专门卖水电材料的店,有专门卖瓷砖的店,有专门卖门窗的店,但没有一家店能给你提供"整体装修一站式服务"。你得自己一样样去配、去对接,费时费力还容易出岔子。机器人学界现在的软件工具就处在这个阶段。
高维系统是块难啃的骨头
论文里有个数据挺扎眼的:在被综述的所有论文里,机械臂和车辆加起来占了62%,而且大多数机械臂只有不到10个自由度的建模;相比之下,自由度动辄超过20的腿足机器人(四足、人形),只出现在16篇论文里。
这说明目前的物理嵌入方法主要还在低维系统上验证,真正复杂的高自由度系统,比如人形机器人全身运动,大部分还没得到充分探索。原因也不难理解:自由度越高,系统状态空间越大,物理模型的复杂度呈指数级增长,架构设计和计算成本都会随之飙升。
论文也提到了一些初步的探索方向,比如可扩展的DeLaN变种、模块化架构、李群变分积分网络,还有能处理数百个相互作用刚体的等变模型。但整体来看,这块还是一片有待深耕的领域。
接触和碰撞:物理嵌入学习的老大难
综述里反复强调了一个问题:现有的大多数方法擅长处理光滑的刚体动力学,但对于涉及摩擦、接触、碰撞、变形的场景,处理起来依然吃力。
这不难理解。摩擦、接触这类现象在数学上往往是不连续的,一个物体是否接触到另一个物体,接触力的大小和方向,这些量的变化往往是突变式的,很难用光滑的微分方程去描述。而拉格朗日、哈密顿这些经典力学框架,本质上假设系统是光滑连续的。
论文里提到有一些初步尝试,比如设计凸损失函数来强制物理一致性,接触力只在真正接触时才激活,不允许物体互相穿透。但这类方法目前还比较局限,真正能大规模处理接触丰富任务(比如抓取、操作、腿足运动中的地面接触)的通用框架还没有出现。
这就像盖房子时,浇筑一面平整的墙相对容易,但要精确设计一个能承受地震摇晃、材料裂缝、结构碰撞的复杂节点,难度完全不是一个量级。物理嵌入学习目前对"平整墙面"(光滑动力学)已经有了相当成熟的工具,但对"抗震节点"(接触碰撞)还处在摸索阶段。
Q&A
Q1:物理嵌入学习和普通深度学习有什么区别?
A:普通深度学习完全靠数据训练模型,不管数据里蕴含多少规律,模型都得自己去摸索。物理嵌入学习会把已知的物理定律(比如能量守恒、牛顿力学)以不同方式塞进模型里,让模型不用完全依赖海量数据也能遵守基本的物理常识,从而在数据有限的机器人领域提升样本效率和泛化能力。
Q2:DeLaN是什么,它解决了什么问题?
A:DeLaN是深度拉格朗日网络的简称,由Lutter等人在2019年提出。它用神经网络分别学习机器人的惯性矩阵和势能,再通过经典力学公式推出运动方程,而不是直接让网络学习加速度。这样设计能保证学出来的模型天然满足能量守恒等物理特性,在训练数据有限时也能更好地泛化。
Q3:物理引导、物理编码、物理知情这三种方法哪个最常用?
A:根据综述统计,物理编码类方法占比最高,达到71%,因为它直接把物理规律焊进模型架构,效果和可解释性都比较有保证。物理引导占16%,物理知情占13%,这两类方法近几年增长较快,但整体研究量还不如物理编码成熟。







