E2E-Fly深度解析:端到端四旋翼自主飞行从仿真训练到真机部署的全链路系统
摘要:E2E-Fly(arXiv:2604.12916)是2026年4月由上海交大团队提出的端到端四旋翼自主飞行全链路系统,首次将可微物理仿真、一阶策略优化、域随机化与零样本部署整合为统一平台。相比传统方法,E2E-Fly将策略训练的样本效率提升了1-2个数量级,实现了从仿真训练到真机飞行的零样本迁移。本文从方法论角度系统解析E2E-Fly的技术架构、核心算法设计与工程实现。
一、引言:端到端四旋翼自主飞行面临的核心挑战
四旋翼自主飞行系统的传统开发范式是模块化流水线:
1 | 感知(视觉/IMU)→ 状态估计 → 轨迹规划 → 控制(PID/MPC)→ 执行 |
每个模块由独立团队开发,通过人工定义的接口传递信息。这种架构存在根本性缺陷:
- 信息损失:图像→边界框→轨迹→控制指令,每步都在压缩信息
- 误差传递:感知的微小偏差经过规划和控制放大,最终表现为飞行性能退化
- 接口僵硬:人工定义的中间表示限制了系统性能上限
- 开发成本:模块间调试、调参、适配耗费大量工程时间
端到端学习试图用单一可微模型替代整个流水线,但应用到四旋翼领域面临三大难题:
| 难题 | 具体表现 | 传统解决 |
|---|---|---|
| 🎲 样本效率低 | RL在仿真中需要百万级交互步数 | 无法直接迁移到实机 |
| 🖼️ 视觉渲染慢 | 每帧渲染10-30ms,训练速度极慢 | 用简化渲染,牺牲真实感 |
| 🔧 Sim-to-Real鸿沟 | 仿真物理与真实世界存在偏差 | 域随机化治标不治本 |
| 🔄 部署断裂 | 训练环境和部署环境割裂 | 每次部署重新适配 |
E2E-Fly的定位:不是出一个算法,而是构建一个从训练到部署的全链路工程平台,一次性解决上述所有问题。
二、系统架构全景
E2E-Fly的整体架构可划分为两大阶段和四大核心模块:
1 | ┌───────────────────────────────────────────────────────────────┐ |
2.1 与VisFly-Lab的关系
E2E-Fly基于VisFly-Lab(arXiv:2603.21123)构建,两者是同一个团队的递进工作:
| 维度 | VisFly-Lab | E2E-Fly |
|---|---|---|
| 定位 | 可微仿真框架(引擎层) | 工程系统(应用层) |
| 覆盖 | 悬停/跟踪/降落/竞速 | 前述 + 避障 + 全链路部署 |
| 可微引擎 | ✅ JAX核心 | ✅ 复用+强化 |
| 部署 | ❌ 纯仿真 | ✅ 实飞部署管线 |
| 零样本迁移 | ❌ 未验证 | ✅ 有实飞验证 |
核心关系:VisFly-Lab提供可微仿真引擎,E2E-Fly在其上构建了完整的训练→部署流水线。
三、核心技术一:可微物理引擎
3.1 四旋翼动力学模型
可微物理引擎是E2E-Fly的基石。与传统仿真器(如Gazebo)不同,E2E-Fly的动力学模型是用可微编程框架(JAX)实现的,使得梯度可以穿过物理方程反向传播。
1 | 系统状态: x = [p, q, v, ω] ∈ ℝ³ × S³ × ℝ³ × ℝ³ |
力与力矩计算:
其中:
- : 推力系数(正是你在前进比论文中详细推导的那个量!)
- : 阻力系数(反扭矩)
- : 空气密度
- : 螺旋桨盘面积
- : 电机到质心的力臂
牛顿-欧拉方程(离散形式,前向欧拉):
3.2 可微性的数学本质
传统仿真与可微仿真的核心区别:
1 | # 传统仿真 (numpy) — 只能前向,无法求导 |
可微性的关键:每一步物理计算都用支持自动微分的原语实现。例如 JAX 的 jnp 替代 np,jax.grad() 替代手动求导:
1 | import jax.numpy as jnp |
3.3 面向部署的动力学建模
E2E-Fly的引擎不是学术版的简化模型,而是包含实际工程细节:
| 建模要素 | 作用 | E2E-Fly的处理 |
|---|---|---|
| 执行器延迟 | 电机响应不是瞬时的 | 一阶低通滤波: |
| 电机饱和 | 转速有上下限 | |
| 桨叶气动耦合 | 来流影响推力 | 基于前进比 修正 |
| IMU噪声 | 传感器特性 | 高斯噪声 + 偏置漂移 |
| 电池电压下降 | 升力随电压变化 |
关键洞察:正是因为在仿真中精确建模了这些”不完美”因素,E2E-Fly才能实现零样本迁移——策略在仿真中已经学会了应对真实世界中会遇到的各类非理想条件。
四、核心技术二:一阶策略优化
4.1 从零阶到一阶:范式转变
传统深度强化学习(PPO、SAC等)使用零阶梯度估计:
梯度是通过采样→评估→加权得到的,本质上是随机近似。这导致:
- 高方差(需要大量采样来降低)
- 样本效率低(10⁶-10⁷步才能收敛)
- 无法利用物理模型的结构信息
一阶策略优化(First-Order Policy Optimization)直接利用可微仿真计算精确梯度:
其中 是任务损失函数(如位置跟踪误差),梯度通过链式法则穿过所有时间步。
计算图示意:
1 | θ → a₀ → [可微物理] → x₁ → a₁ → [可微物理] → x₂ → ... → x_T → L |
4.2 训练循环
E2E-Fly的标准训练循环如下:
1 | for epoch in range(num_epochs): |
与传统RL的对比:
| 特性 | 传统RL (PPO/SAC) | 一阶RL (E2E-Fly) |
|---|---|---|
| 梯度类型 | 零阶估计(高方差) | 一阶精确(低方差) |
| 是否需要价值函数 | ✅ Critic网络 | ❌ 不需要 |
| 是否需要经验回放 | ✅ 缓冲池 | ❌ 不需要 |
| 单次交互样本数 | 10⁴-10⁵步 | 10²-10³步 |
| 训练时间(悬停任务) | 数小时 | 数分钟 |
| 策略网络 | 简单MLP即可 | 简单MLP即可 |
4.3 损失函数设计
不同任务的损失函数:
悬停任务:
轨迹跟踪:
避障:
关键设计原则:损失必须平滑可微——离散的”碰撞/未碰撞”二值判断不可微,需要用 soft penalty 替代。
4.4 与VisFly-Lab的对比验证
VisFly-Lab在四个标准任务上对一阶RL与PPO进行了对比:
| 任务 | PPO样本数 | 一阶RL样本数 | 效率提升 |
|---|---|---|---|
| 悬停 | 500K | 5K | 100× |
| 轨迹跟踪 | 800K | 20K | 40× |
| 降落 | 1M | 30K | 33× |
| 竞速 | 2M | 50K | 40× |
结论:一阶RL比PPO样本效率高1-2个数量级,且不需要价值函数网络,训练更稳定。
五、核心技术三:域随机化与传感器建模
5.1 域随机化参数空间
为了实现零样本Sim-to-Real迁移,E2E-Fly在训练过程中随机化以下物理参数:
1 | ┌─────────────────────────────────────────────────────┐ |
5.2 域随机化的效果
域随机化的核心思想是:在仿真中见过足够多的”物理世界变体”,策略在真实世界中就不会对任何特定的物理参数过度依赖。
数学上,域随机化优化的是一个鲁棒策略:
其中 是物理参数, 是参数分布, 是在该物理参数下的任务损失。
实践经验:域随机化范围不是越大越好。范围太小起不到泛化效果,范围太大策略会过于保守(飞得太慢)。E2E-Fly通过实验确定了上述参数范围是最佳平衡点。
5.3 可微渲染(视觉策略)
当策略需要视觉输入(单目/深度相机)时,E2E-Fly支持接入可微渲染管线:
1 | 3D场景模型 → 可微渲染器 → 图像 → CNN特征 → 策略 → 控制指令 |
但这种模式计算开销大,E2E-Fly在标准实验中使用的是状态观测(位置+速度+姿态+角速度),视觉策略作为扩展选项。
六、核心技术四:零样本部署管线
6.1 模型导出流程
1 | 训练完成的策略 (JAX/PyTorch) |
6.2 零样本迁移的关键
E2E-Fly实现零样本迁移的策略不是”让仿真更逼真”,而是让策略在仿真中学会应对不确定性:
1 | 零样本迁移 = 高保真可微物理 + 域随机化 + 执行器建模 + 传感器噪声 |
具体来说:
- 可微物理确保策略学到的动力学与真实一致(基础模型准确)
- 域随机化让策略适应物理参数偏差(鲁棒性)
- 执行器建模(延迟+饱和)让策略学会真实电机的响应特性
- 传感器噪声让策略学会从带噪观测中做决策
关键洞察:E2E-Fly的策略输出的不是”理想电机转速”而是”考虑了执行器延迟的补偿控制指令”——这正是仿真训练的价值所在。
6.3 与传统部署的对比
| 方面 | 传统方法 | E2E-Fly |
|---|---|---|
| 仿真训练时间 | 数小时-数天 | 数分钟 |
| 实飞调试 | 需要数天实飞调参 | 零样本 |
| 迁移周期 | 2-4周 | 同一天 |
| 工程工作量 | 高(模块分别适配) | 低(一键部署) |
| 策略更新 | 每次需要完整的调试周期 | 重新训练→一键部署 |
七、实验结果分析
7.1 仿真实验结果
E2E-Fly在以下任务上进行了评估:
1. 悬停控制
| 指标 | PID (基线) | PPO | E2E-Fly (一阶RL) |
|---|---|---|---|
| 位置RMSE | 0.08m | 0.12m | 0.06m |
| 训练时间 | N/A | 3h | 8min |
| 样本数 | N/A | 500K | 5K |
2. 轨迹跟踪
| 指标 | MPC (基线) | PPO | E2E-Fly (一阶RL) |
|---|---|---|---|
| 跟踪RMSE | 0.15m | 0.22m | 0.11m |
| 训练时间 | N/A | 5h | 15min |
| 样本数 | N/A | 800K | 20K |
3. 避障飞行
| 指标 | 传统规划+控制 | PPO | E2E-Fly (一阶RL) |
|---|---|---|---|
| 成功率 | 85% | 78% | 92% |
| 训练时间 | N/A | 8h | 25min |
| 样本数 | N/A | 2M | 50K |
7.2 零样本迁移验证
E2E-Fly的关键卖点是从仿真训练到真机飞行的零样本迁移。实验结果:
- 仿真中训练的策略(闭环训练 + 域随机化)
- 直接部署到真机(不经过任何实飞微调)
- 结果:首次飞行即稳定,性能与仿真中观测到的相当
与未使用域随机化的对比:
| 条件 | 不域随机化 | 域随机化 |
|---|---|---|
| 仿真性能 | 高 | 中(略降) |
| 首次实飞 | ❌ 坠毁 | ✅ 稳定 |
| 微调后性能 | 需要3-5次迭代 | 无需微调 |
八、技术对比与嫁接路径
8.1 传统模块化 vs E2E-Fly
| 维度 | 传统模块化制导 | E2E-Fly |
|---|---|---|
| 物理引擎 | Python numpy 6DOF | JAX可微6DOF |
| 制导 | PN/EPN(手写解析) | 可学策略(端到端) |
| 训练 | N/A | 一阶RL |
| 迁移 | 无 | 零样本部署管线 |
| 视觉 | 无 | 可微渲染(可选) |
8.2 嫁接路径
1 | 传统6DOF仿真 → 可微化(PyTorch) |
最直接的收益:
- 制导律优化:用一阶RL优化PN的导航比N,替代手写调参
- 时间节省:分钟级训练替代小时级调参
- 鲁棒性提升:域随机化让截击策略适应不同目标速度和机动
九、局限性与未来方向
9.1 当前局限
- 开源状态:E2E-Fly和VisFly-Lab尚未公开代码(arXiv 2026年4月,代码可能在审稿中)
- 视觉部分:可微渲染的性能和真实性仍有待提升
- 场景复杂度:目前验证的场景相对简单(悬停、跟踪、避障),复杂3D环境尚未评估
- 极端条件:高速/大风等极端工况的鲁棒性需进一步验证
9.2 未来方向
- E2E-Fly + GaussFly:结合3DGS场景表示,实现视觉端到端策略的Sim-to-Real
- E2E-Fly + MAVEN:引入元学习,适应截击机抛射后的动力学突变
- E2E-Fly + 可微参数辨识:用可微仿真自动从实飞数据辨识C_T(J)参数
- 编队端到端:拓展到多机协同截击
十、总结
E2E-Fly的核心贡献可以概括为:
| 维度 | 贡献 |
|---|---|
| 方法论 | 首次将可微物理+一阶RL+域随机化整合为四旋翼端到端训练平台 |
| 工程 | 提供从仿真训练到真机部署的完整管线,无需实飞微调 |
| 性能 | 样本效率比传统RL高1-2个数量级,分钟级训练 |
| 普适性 | 支持悬停、跟踪、降落、竞速、避障等多种任务 |
给读者的建议:
- 如果你在做四旋翼仿真,用可微物理替代传统仿真器是最立竿见影的改进
- 如果你在调制导参数,用一阶RL优化替代手动调参可以直接提升性能
- 如果你在做Sim-to-Real,域随机化+执行器建模是实现零样本迁移的核心
参考文献
[1] Sun, F., Li, F., et al. “E2E-Fly: An Integrated Training-to-Deployment System for End-to-End Quadrotor Autonomy.” arXiv:2604.12916, 2026.
[2] Li, F., Sun, F., et al. “VisFly-Lab: Unified Differentiable Framework for First-Order Reinforcement Learning of Quadrotor Control.” arXiv:2603.21123, 2026.
[3] Li, F., et al. “Simple but Stable, Fast and Safe: Achieve End-to-end Control by High-Fidelity Differentiable Simulation.” arXiv:2604.10548, 2026.
[4] Onoda, K., et al. “Does ‘Do Differentiable Simulators Give Better Policy Gradients?’ Give Better Policy Gradients?” arXiv:2604.18161, 2026.
[5] Su, Y., et al. “Vector Field Augmented Differentiable Policy Learning for Vision-Based Drone Racing.” arXiv:2603.08019, 2026.
[6] Zhang, Y., et al. “GaussFly: Contrastive Reinforcement Learning for Visuomotor Policies in 3D Gaussian Fields.” arXiv:2604.05062, 2026.
[7] Zhou, J., et al. “MAVEN: A Meta-Reinforcement Learning Framework for Varying-Dynamics Expertise in Agile Quadrotor Maneuvers.” arXiv:2603.10714, 2026.
[8] Kovalev, V., et al. “Trajectory-based actuator identification via differentiable simulation.” arXiv:2604.10351, 2026.
[9] Wu, T., et al. “Precise Aggressive Aerial Maneuvers with Sensorimotor Policies.” arXiv:2604.05828, 2026.
[10] Zhang, L., et al. “Vision-Based End-to-End Learning for UAV Traversal of Irregular Gaps via Differentiable Simulation.” arXiv:2604.02779, 2026.