「动态门穿越 + 高速目标跟踪」
目录
01 先看难点:一条 rollout 塞两种动力学,两边都不讨好
02 DiffDreamer 怎么做:双通道同步 rollout
2.1 隐式 + 显式双状态,共享一个动作序列
2.2 奖励拆两条通路,各自优化
2.3 位置:既给模型基RL减负,又给可微RL补盲
03 实验:跟踪更紧、过门更多、还上了真机
3.1 训练收敛与最终性能
3.2 跟踪与过门的定量成绩
3.3 消融:两条通路缺一不可
3.4 真机概念验证
04 总结
动态门穿越、高速目标跟踪这类四旋翼任务,既要在高频下做精确控制,又得预判外部世界怎么动。世界模型RL擅长学外部动态,可微RL擅长算自身物理,但两条路各有硬伤。
上海交大邹丹平团队提出的DiffDreamer,把两者拆开再焊起来:学习的世界模型只负责想象外部动态,可微仿真负责精确传播机器人的物理状态。
在激进跟踪和动态门穿越两个基准上,收敛速度和最终性能全面超过DreamerV3、PPO、BPTT以及Elastic Tracker、MPC等方法,跟踪距离误差降到0.381m(最强基线0.793m),并完成真机概念验证,已被RAL 2026接收。
01 先看难点:一条 rollout 塞两种动力学,两边都不讨好
纯世界模型 RL(DreamerV3):用学到的高频刚体动力学去 roll out,既要捕捉外部演化又要精确算自己的机身运动,模型偏差在高精度控制下尤其致命;而且像"过门成功"这种奖励是离散、不可微的,学起来稀疏。
纯可微 RL(BPTT):直接在可微仿真里反传奖励梯度,梯度干净、样本高效,但假设动力学和奖励都可微且显式——移动目标没给未来轨迹、外部动态部分可观测,这套就不成立。
两条路线各自的短板,正好是对方的强项:世界模型擅长学"看不全的外部动态",可微仿真擅长算"自己怎么飞"。DiffDreamer 的思路就是——不要二选一,让它们各管一摊。
图 | 外部运动预测与内部控制的耦合。左:接住飞来的球,需要既想象球的轨迹、又规划身体运动。右:DiffDreamer 把潜在世界模型特征与显式物理状态结合用于策略优化——用学习的世界模型想象未来外部运动,用可微仿真传播机器人的物理状态
02 DiffDreamer 怎么做:双通道同步 rollout
2.1 隐式 + 显式双状态,共享一个动作序列
策略的输入是"联合状态":隐式潜状态(RSSM 编码的历史依赖外部动态 + 目标/门运动模式)和显式物理状态(位置、速度、姿态、角速度)拼接而成。每一步,同一个策略采样出的动作同时喂给世界模型(更新潜状态)和可微仿真(更新物理状态),两条 rollout 严格同步。这里有个细节:潜状态输入带 stop-gradient(切断反传),不让梯度回流污染潜状态,但显式物理输入保持可微,让运动奖励的梯度能顺着物理 rollout 流回策略。
2.2 奖励拆两条通路,各自优化
不再让一个 critic 去近似整个回报。DiffDreamer 把奖励拆成:
- 可微运动奖励(如"朝门靠近加分、远离扣分、控流控角速度"):直接通过可微仿真反传解析梯度优化,不需要 critic;
- 不可微任务奖励(如"成功过门给大分"):仍由 critic 估值,走标准的价值函数通路。
一句话,连续的运动细节交给物理梯度精修,离散的任务里程碑交给 critic 兜底。
2.3 位置:既给模型基RL减负,又给可微RL补盲
对模型基 RL 而言,把刚体动力学从潜想象里剥出来,大大减轻了世界模型的学习负担;对可微 RL 而言,用学到的潜状态补上物理 rollout,把一阶梯度优化扩展到"部分可观测 + 不可微任务事件"的场景。两条路互相补,这正是它的差异化价值。
03 实验:跟踪更紧、过门更多、还上了真机
3.1 训练收敛与最终性能
图 | 训练奖励曲线。激进跟踪(上)与动态门穿越(下)。
在 VisFly 高保真可微仿真里对比 DreamerV3、PPO、BPTT(过时间的可微反传),DiffDreamer 收敛更快、最终奖励更高,动态门穿越增益更大。
3.2 跟踪与过门的定量成绩
表 | 激进跟踪误差。|e_h|、|e_v| 为目标投影到图像中心的归一化水平、垂直距离(无量纲),|e_d| 为距离误差(米)。数值为随机轨迹与时步上的均值±标准差,越低越好,加粗为最优
跟踪上 DiffDreamer 在三个指标全部最低:距离误差 0.381m,对比 Elastic Tracker 0.793m、BPTT 0.835m、DreamerV3 1.003m。热图显示其目标空间分布更集中,尤其在 XZ 平面,说明对目标突然的垂直机动更稳。
表 | 动态门穿越性能。条目为 512 个仿真步内穿过的门数,均值±标准差;v 为门最大平移速度(m/s)。越高越好,加粗为最优
门穿越按三种门速(1.0/1.5/2.0 m/s)测:DiffDreamer 过门数 16/12/8,MPC 为 12/4/1,速度越快领先越大,鲁棒性突出。DreamerV3 和 BPTT 表现偏弱——前者败在"学到物理转换+稀疏过门奖励"的双重难度,后者缺未来运动预测、门一快就崩。
指标边界说明:跟踪误差是"均值±标准差",且基于运动捕捉给的外部状态反馈;门穿越数是在 512 步内的累计,衡量的是"能过几个门"而非"最优时间"。两者都依赖标定过的可微仿真和外部真值,不能等同于有噪声感知下的开放场景表现。这也解释了为什么论文真机部分只称"概念验证"。
图 | 实验结果。(A) 激进跟踪中目标在 2 秒时域上的预测轨迹,散点为想象的轨迹样本;(B) 目标在四旋翼体坐标系中的空间分布热图,颜色越深密度越高,蓝色射线包络为相机实际 FOV;(C) 动态门穿越中后两个门在 2 秒时域上的预测轨迹;(D) 动态门穿越中平均成功穿过的门数
3.3 消融:两条通路缺一不可
图 | 消融实验。左/中:里程计与表示消融——绝对/相对世界模型的重构误差密度与目标在 XY/XZ 平面的分布(与 Elastic Tracker 对比,蓝色射线为相机 FOV)。右:奖励消融——512 步内穿过的门数 vs 最大门速,用完整奖励、去掉离散过门奖励或可微运动奖励
- 奖励分解:去掉离散过门奖励,过门数从 16/12/8 掉到 2/2/0;去掉可微运动奖励,掉到 7/4/2。两条通路各自都不可省,且价值不同——离散奖励决定"有没有过门",可微奖励决定"飞得精不精准"。
- 里程计相对表示:把目标绝对位置给世界模型重建(去掉里程计)会拉宽重构误差分布、让跟踪分布更散,证明"里程计 + 相对状态"的表示更稳。
3.4 真机概念验证
图 | DiffDreamer 真机实验——激进跟踪与动态门穿越。左:飞行轨迹与连续帧截图,显示紧致的目标跟踪。右:动态门穿越,四旋翼预判移动门的未来位置
在 3.5 寸桨自研四旋翼、机载 Jetson Orin NX + Betaflight 飞控上,策略以超 100Hz 跑在板载,输出集总推力+机体角速度(CTBR)指令。通过系统辨识把物理参数标定进可微仿真来压 sim2real 差距,配合运动捕捉外部状态反馈,完成了两类任务的真机飞行——论文明确只把它定义为概念验证。
04 总结
DiffDreamer 的启发意义在于一个常被忽略的视角:世界模型不一定要什么都学。 在"外部动态看不全、自身动力学又得精算"的任务里,硬让一个模型同时扛两件事只会两头不讨好。
它把动力学按来源拆开——学得到的(外部演化)交给潜想象,算得准的(自身刚体)交给可微物理——再用共享动作序列同步,配上"可微奖励走物理梯度、不可微奖励走 critic"的奖励拆解,一举解决了两条既有路线的核心短板。
当然,对运动捕捉的依赖、板载感知的空白、以及四旋翼单平台的局限,决定了它现阶段更像一个"在受控环境下证明了思路成立"的方案,距离真正可靠的户外敏捷飞行,还有感知与鲁棒性这块硬骨头要啃。
Ref
论文标题:DiffDreamer: Coupling World Models with Differentiable Simulation for Agile Quadrotor Control
论文链接:https://arxiv.org/pdf/2610.31617
论文来源:RAL2026