基准对比
来源:表 1,第 6 页。按论文顺序列出全部 12 行,柱条从 0 起。
空中视觉语言导航 · arXiv:2610.21450
ARIDGE · XPENG
整块执行 8 步控制,将每个航点的模型推理时间从 195 ms 降至 42 ms,却让策略进入专家示范覆盖不足的决策状态。X-Fly 分三阶段训练:多域行为克隆、在学习者访问锚点上的 Recovery DAgger,以及对整块控制与 STOP 的 Flow-GRPO。
讲解动画 · 57 秒
闭环演示 · test-unseen
以下展示未参与训练的 UE SmallCity 测试集中的 6 条航线。左:专家的第一人称视角。中:X-Fly 自己的视角,叠加了当前 8 步控制块(绿色为已执行,青色为待执行)。右:专家 (GT) 与策略 (PRED) 轨迹的俯视对比。
定性示例:选取实际飞行路径超过 30 m 的成功 episode,由开发过程中的一个 Flow-GRPO checkpoint 渲染,对平滑后的停止概率应用固定阈值,决定何时停止。它们用于展示行为;本页的基准评测结果均来自论文的评测协议(表 1)。
问题 · 整块执行的专家数据覆盖缺口
基于大型视觉语言模型的空中智能体,每次查询都很昂贵。动作块策略每次查询预测多个未来控制,但 DreamFly 等智能体只执行第一个控制就重新查询。整块执行能把推理开销摊到整块控制上:对 X-Fly 而言,每个已执行航点的模型推理时间从 195 ms 降至 42 ms。代价是飞行器要连飞 8 步,新的视觉反馈才能纠正它。
策略下一次被查询的状态,即决策锚点,会偏离专家轨迹。纯专家数据对这些学习者访问到的锚点覆盖很差,体现在两方面:没有任何专家 chunk 从偏离航线的学习者位姿出发、把它带回航线,这是控制缺口;STOP 正样本只来自专家的终点窗口,而不是学习者自己首次进入成功区域的那个锚点,这是终止缺口。两者合起来就是整块执行的专家数据覆盖缺口(§3.1,第 2 页)。
在 test-seen 上,把 BC 从单步执行改为整块执行,SR 从 46.57% 跌到 16.45%,而导航失败几乎不变。到达目标,不等于在目标处停下。
洞察
在学习者自己的决策锚点上,专家数据缺少一个把它带回航线的 chunk,也缺少一个告诉它该停的标签。在学习者真正所在的位置补上这两样,再利用同一任务下的闭环执行结果,学习何时停止。
转述自 §1 与 §3.1,第 1–2 页
方法 · 分阶段训练框架
每个阶段训练的都是同一组模块:查询组、融合层、flow 控制器和 STOP 头,合计约 45M 参数。Qwen3.5-4B VLM 及其视觉塔全程冻结,每个阶段都从上一阶段的策略开始。
在 OpenFly 的 UE、3DGS 与 AirSim 三个域共 849,106 个有效决策窗口上训练 rectified-flow 控制器与 STOP 头,共 10 个 epoch。仅在专家轨迹终点的窗口对 STOP 进行监督。
§3.2,第 3 页 · 式 1 · 表 2,第 10 页
学习者在训练场景中用部署时的整块执行器飞行。它访问的每个锚点都被标上一个平滑 chunk,回到专家的后续路段;第一个进入成功区域的锚点标为 STOP。共三轮,每轮从上一轮热启动,recovery 与 BC 窗口按 1:1 混合。
§3.3,第 3 页 · 式 2
每次更新在 48 个 BigCity 任务上各跑 8 次闭环尝试:6 次自由尝试,2 次 STOP-override 尝试。对自由尝试使用带 KL 正则项的策略梯度更新,同时优化整块控制与 Bernoulli STOP;override 尝试额外提供经结果验证的停止样本对。共 3000 次更新。
§3.4,第 4–5 页 · 附录 A.5,第 11 页
图 3(第 4 页)的交互重绘;点击模块查看说明(§3.2 与附录 A.2)。耗时数据见 §4.1,第 5 页。
阶段 2 · 在学习者访问的锚点上做 Recovery DAgger
标签必须遵循示范的先后顺序。单调路线游标 ct 在每次采集的决策中按实际执行的控制数前进,而不是沿参考路线向前搜索匹配点。它选出专家位姿 p*ct,学习者相对该位姿的偏移 dt 按 smoothstep 衰减:
恢复目标轨迹从学习者当前位姿出发,位置偏移按两端斜率均为零的曲线衰减,并在一个 chunk 结束时接入专家后续路段。偏航角偏移采用同样的衰减方式,并取最短有符号角差。Recovery 目标只在训练时构造,部署时不增加任何计算。
图中灰色的学习者以整块方式飞行,逐渐偏离航线。它访问的每个锚点都有自己的标签:从学习者位置出发,在一个 chunk 之后回到专家航线;第一个进入区域的锚点则标为 STOP。由于游标只会向前,即使航线自身相互靠近,标签也不会吸附到已经飞过的路段。
采集时禁用 STOP,并在第一个进入 20 m 成功区域的锚点处截断,该锚点标为 STOP 并配悬停目标。截断也去掉了到达之后、标签会指向后方的锚点。于是 Recovery 在学习者自己的到达锚点上补充了 STOP 正样本(共 8,404 个),与 BC 使用的专家终点窗口互补。
§3.3,第 3 页 · 式 2 · 附录 A.4,第 11 页
阶段 3 · 对整块控制与 STOP 做 Flow-GRPO
策略梯度更新需要似然,而确定性的 flow ODE 没有似然。训练时 X-Fly 把 6 步 Euler 中的最后 3 步改为随机。噪声放在低频时间基上,采样出的 chunk 依然平滑;一小部分补空间噪声让协方差保持满秩,因此每次转移在整个 8 × 4 chunk 上都有闭式对数密度。部署时仍使用确定性的 6 步求解器。
控制项为尾部随机去噪步 s ∈ {3, 4, 5} 的转移打分;STOP 项是训练温度 1.5 下所采样 STOP 或 CONTINUE 的 Bernoulli 对数概率。两个 KL 项均以 β = 0.01 的权重约束当前策略接近冻结的初始策略。自由尝试往往在相近的决策步停止,因此每组有两次尝试会把前 n ∈ {1, 2, 3} 次采样到的 STOP 改为继续飞。它们的回报参与组内统计,但其决策不接收策略梯度;它们提供经结果验证的 STOP 样本对,用于权重 0.5 的 margin-ranking 与 BCE 损失。STOP 从第二次决策起才合法,STOP 之后的决策不再参与回报归因。
§3.4,第 4–5 页 · 式 3–6 · 附录 A.5,第 11–12 页
实验证据
评测协议。使用 DreamFly 处理后的 OpenFly 划分:test-seen 含 1,392 条轨迹(UE BigCity 与 6 个 AirSim 城市),test-unseen 含 404 条(留出的 UE SmallCity)。最终位置距目标 20 m 以内即为成功。所有 X-Fly 行使用同一规则:单位温度的 STOP ~ Bernoulli(σ(ℓ))、128 步控制上限,指标在首次停止分布上精确求期望。已有方法的行是其已发表结果,使用各自的原生停止策略,因此 X-Fly 行之间的比较才是严格对齐的。k 为每次融合策略决策执行的控制数。差值单位为百分点 (pp)。
§4.1,第 5 页 · 表 1 标题,第 6 页 · 附录 A.6,第 12 页
来源:表 1,第 6 页。按论文顺序列出全部 12 行,柱条从 0 起。
只含对齐的 X-Fly 行:同一策略骨干、同一评测协议。
来源:表 1,第 6 页;§4.3,第 5–6 页。Flow-GRPO 只在 k = 8 下训练和评测。
在与表 1 相同的轨迹上,每个 episode 按首次停止结果归入六个互斥类别之一(2 类成功、4 类失败);各类期望占比合计 100%。
来源:表 3,第 13 页,即图 4(第 7 页)的数据;判定规则见附录 C。成功(未 STOP):控制预算耗尽时恰在区域内。过早 / 过晚:在首个区域内锚点之前 / 之后、于区域外 STOP。未停止:到达过区域,但从未停止,最终在区域外。导航失败:即使禁用 STOP,也没有锚点进入区域。
源域验证曲线,每 20 次更新一个原始数值。协议与表 1 不同:384 条不参与 Flow-GRPO 更新的 BigCity 航线、固定种子、每条航线一次 STOP 采样。两条曲线仅供相互比较,不与表 1 横向比较。
来源:§4.4,第 7 页,及图 5(第 8 页)的数据。BC 初始化的训练因 OSR 与 NE 持续变差,在 680 次更新时停止。因渲染器故障中断的验证点,事后用保存的 checkpoint 以相同航线与种子补评(附录 A.7,第 12 页)。
局限
禁用 STOP 时,最终策略在 93.41% 的 test-seen 与 88.61% 的 test-unseen episode 中访问到了区域内锚点,但只有 74.18% 与 51.73% 转化为成功。在 test-unseen 上,密集到达率只比锚点到达率高 0.75 个百分点,因此与 SR 之间剩下的差距主要在于:策略确实到过的锚点上,停得不是时候。
Flow-GRPO 让停止整体后移:过晚停止在 test-seen 上升至 9.89%,在 test-unseen 上升至 15.84%;在 test-seen 上已略多于过早停止。
每个训练配置只用了一个训练种子,因此这些结果没有衡量训练种子带来的方差。OpenFly 不包含真实的飞行器动力学、传感噪声与运行安全约束,迁移到真实平台需要另行验证。
§5,第 7 页 · §4.3,第 6 页
团队 · 论文 · 引用
ARIDGE · XPENG · *通讯作者: jurb@aridge.com
@article{ju2026xfly,
title = {X-Fly: Learning to Reach and Stop in Full-Chunk Aerial Vision-Language Navigation},
author = {Ju, Ruibin and Cai, Ruifeng and Xu, Min and Wang, Lin},
journal = {arXiv preprint arXiv:2610.21450},
year = {2026},
url = {https://arxiv.org/abs/2610.21450}
}