GeoWind2Plan: Mission-Time 3D Urban Wind Prediction for Energy-Efficient UAV Planning¶
会议: NeurIPS 2026(任务清单归属;缓存原文为 arXiv v1)
arXiv: 2609.36056
代码: https://github.com/DUAL-Xiao/GeoWind2Plan/
领域: 机器人 / 城市无人机能耗规划与三维风场预测
关键词: 城市平均风场、傅里叶神经算子、风向协变性、局部走廊、无人机轨迹优化
一句话总结¶
GeoWind2Plan 将建筑几何和背景风转换成任务走廊内的三维平均风场,再联合优化无人机路径与速度;在街区 A、4 m/s 背景风下,CFD 复评能耗由无风感知规划的 \(13.3\pm1.8\) 降至 \(12.5\pm1.5\) Wh/km,而 20% 走廊的风场推理约需 3 秒。
研究背景与动机¶
城市低空飞行的能耗不能只用路径长度判断。同一背景风经过建筑群后,会形成街谷加速、背风遮蔽、尾流和局部转向;无人机真正承受的是对空气的相对速度,而不是地速。因此,最短的无碰撞路线可能正好穿过高阻力区域,多绕一点或改变高度反而可能节能。已有风感知规划往往假设三维风场已经可用,或者用单一风向量、只随高度变化的风廓线代替局部流动,这些输入不足以判断绕建筑哪一侧更划算。
高保真计算流体力学(CFD)能够提供建筑尺度的风场,却不适合在接到任务后临时计算。本文的一个 1.2 km 街区算例需要约 8 小时,而且 CFD 解绑定具体入口风速、风向和边界条件;风况改变就意味着新的边值问题。若直接让学习模型覆盖城市几何、连续风向和风速的组合,所需三维 CFD 标签也难以承受。另一方面,一次飞行只查询有限路线附近的风,没有必要每次预测整座城市。
本文把这两个困难联系起来:利用物理坐标变换把风向变化转成几何变化,利用高雷诺数平均流相似性近似处理风速,再只预测与当前起终点有关的局部区域。评价重点也从“每个网格是否都接近 CFD”转到“预测风是否支持更好的飞行决策”。核心 idea:用参考风坐标系中的局部几何条件神经算子快速构建任务相关平均风场,以统一物理能耗模型驱动连续三维路径和速度优化,并在离线 CFD 风场下检验最终路线的节能价值。
方法详解¶
整体框架¶
在线输入只有三维建筑几何、水平背景风向量和起终点,不包括当前任务的 CFD 风场。系统首先确定路线走廊并将几何旋转到参考来风方向,用局部傅里叶神经算子(FNO)预测有关三维块,重叠融合后把速度向量旋回城市坐标并按背景风速缩放。随后,多条快速探索随机树(RRT)路径作为非线性优化的初值,输出连续三维路线、速度和时间安排。
四个关键设计分别是参考风适配、走廊局部预测、空气相对能耗和多初值连续规划。前两个负责让风信息及时可用,后两个负责把这份信息变成飞行决策;CFD 仅参与离线监督和复评,不是在线规划输入,也不是推理时的修正器。
%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
I["建筑几何与背景风<br/>起点与终点"] --> A["参考风适配<br/>几何旋转"]
A --> B["走廊局部预测<br/>几何编码与 FNO"]
B -->|融合后旋回向量并缩放| C["空气相对能耗<br/>风到阻力与功率"]
C --> D["多初值连续规划<br/>RRT 与非线性优化"]
D --> O["三维路线与速度<br/>离线 CFD 复评"]
T["离线 CFD 标签"] -.->|训练监督| B
关键设计¶
1. 参考风适配:把连续风向变化转成参考坐标系中的几何变化
为每个来风角度另训一个模型会迅速耗尽 CFD 数据。本文只学习参考方向、参考风速下的几何到平均风映射;任务风向变化时,旋转建筑几何与查询位置,使来风对齐参考方向。标量占据场只需要变换采样坐标,但风是向量场,预测完成后还必须把三个速度分量旋回原坐标,不能只把预测网格放回原处。
原文式 (4) 给出理想平均流算子的偏航协变性:
这里 \(\mathcal{G}\) 是建筑占据场,\(\mathcal{S}\) 是物理平均流解算子,\(Q_{\theta}\) 把任务来风单位向量 \(\bm{d}_{\theta}\) 对齐参考方向 \(\bm{e}_{1}\);旋转后的几何在位置 \(\bm{y}\) 处取原几何在 \(Q_{\theta}^{\top}\bm{y}\) 处的值。该结论依赖中性不可压缩流、唯一稳态或集合平均解,以及随几何和入口一致旋转或偏航对称的边界条件。它不是“不管城市怎么转,风都不变”,也不是学习模型自动获得了无误差等变性;有限域边界和体素插值仍会引入误差。
风速适配的物理地位不同。原文式 (5) 假设,在固定几何、风向和入口廓线形状的高雷诺数中性流范围内,按入口风速归一化的平均流变化较小:
因此,完成预测与向量旋回后,将风速乘以 \(U/U_{\mathrm{ref}}\)。这是经实验检验的平均流相似性近似,不是 Navier–Stokes 方程对速度线性的声明,也不意味着阵风、热分层或湍流统计量可以同比例缩放。
2. 走廊局部预测:只计算可能用到的风,同时保留建筑方向信息
局部 FNO 的输入不是只有建筑是否存在。占据场给出实体与自由空间,符号距离场(SDF)给出最近建筑表面的距离,多方向距离特征(MDDF)则通过水平射线和顺风竖直射线描述障碍朝向、街谷开口及高度遮挡,再配合空间坐标输入网络。MDDF 在全域上预计算后才裁块,所以块外建筑仍可通过射线距离影响块内特征;这比让小块网络完全依靠块内占据信息更适合尾流与遮蔽判断,但并不代表模型精确恢复了所有远程流体耦合。
每个预测块包含 \(45\times45\times45\) 个网格单元,共享同一个 FNO。网络先提升特征维度,通过傅里叶层混合空间信息、MLP 混合通道,最后输出时间平均的三个风速分量。推理采用重叠块和平滑融合,以减轻块边界不连续,再通过插值支持规划器在连续位置查询风;目标是平均风,而非瞬时湍流或阵风。
起终点的水平连线定义一个贯穿飞行高度带的三维走廊,宽度参数 \(r\) 表示总宽度为水平起终点距离的 \(r\) 倍,不是单侧半宽,也不是“仅计算全城 \(r\) 比例体积”的严格定义。几何旋转后,只推理与旋转走廊相交的块。走廊实验中,RRT 和连续优化也被限制在同一个走廊里,因此节省计算同时改变了可搜索路线集合,不能把该实验解释为只减少风场计算而完全不影响规划。
3. 空气相对能耗:让局部风通过阻力、推力和飞行时间改变目标
规划器不能直接把“顺风区域”当作低成本边,而需要比较具体路线与速度组合的累计功率。原文式 (7)–(9) 从每个离散节点的空气相对速度计算二次寄生阻力,并通过受力平衡得到推力;节点功率由有用机械功、诱导功率和桨叶型阻功率组成,最后用梯形积分求能耗:
其中 \(\bm{v}_{i}\) 是地速,\(\bm{g}\) 是向下的重力加速度,\(\rho\)、\(C_d\)、\(A_f\) 和 \(m\) 分别是空气密度、阻力系数、迎风面积与质量。附录 E 使用动量理论近似诱导速度,桨叶型阻功率按推力相对悬停推力的 \(3/2\) 次方缩放。模型同时考虑加速度和高度变化,但保持准稳态,不包含完整姿态动力学、电机控制瞬态或电化学电池模型。
这解释了为什么“阻力最小”不等于“总能耗最小”:多旋翼延长飞行时间也要持续消耗维持升力的功率。顺风时提高地速可能增大平均阻力,却因时间缩短降低总能耗;逆风时减速则可能用较长飞行时间换取较低空气相对速度。原文允许某些下降或强顺风状态下机械功项为负;不能把这项建模约定直接解读成真实电池能够回收同样的能量。
4. 多初值连续规划:先寻找绕障路线,再联合调整位置与速度
建筑障碍使能耗优化高度非凸。RRT 在三维自由空间中产生不同绕障路径,用占据场和 SDF 检查避障,开阔区域步长更大、建筑附近步长更小;这些路径在检查分辨率下无碰撞,但不是能耗最优,也不预先保证完整动态可行性。每个任务使用 10 个 RRT 初值,将各自路径重采样为节点,再由内点法优化节点位置、地速、加速度以及统一时间步长。
原文式 (11) 用梯形配点将位置与速度、速度与加速度连起来:
优化固定起终点位置,约束飞行高度、地图范围、空气速度、加速度、推力和时间步长,并在节点及若干线段中间采样点施加 SDF 净空约束。端点速度和加速度默认不固定为零。连续变量允许路径平滑、侧移、升降和调整飞行时间,但有限采样检查不是全连续轨迹安全证书;10 次初值加局部非线性优化也没有全局最优保证。
最终选择在当前规划风场下预测能耗最低的优化候选,再用高保真 CFD 风场替换风查询,按相同离散轨迹和时间步长复评。所有对比方法共享能耗模型、约束、RRT 初值和优化器,只有规划风输入改变。论文的 Ground truth 是“使用 CFD 风输入的参考规划”,不是唯一真实最优轨迹,更不是经过证明的最小物理电池消耗。
一个完整示例¶
以默认端点高度 75 m、背景风速 4 m/s 的逆风任务为例,先由起终点确定覆盖 30–120 m 飞行高度的走廊,把走廊和建筑几何转到参考来风坐标。网络只预测与走廊相交的块,经融合、向量旋回和风速缩放后,规划器即可查询建筑背风区、街谷和不同高度的平均风。
10 条 RRT 路线提供不同绕障初值,每条路线都在同一个风场与物理成本下调整侧向位置、高度和速度。逆风时,优化器可能选择更低、更慢且局部受建筑遮蔽的飞行方式,而不是沿水平最短线高速穿越迎风街谷。该段是机制说明,不是声称原文公布了这条具体任务的轨迹数值;实际候选选择和能耗复评仍按上述统一协议执行。
损失函数 / 训练策略¶
监督标签由 CityFFD 的离线 CFD/LES 生成,收敛后取三维速度的时间平均。训练集约含 20 个 \(1.2\times1.2\) km 街区及 1 个 \(3\times3\) km 算例,评价街区不与训练集共享 CFD 块。入口采用指数为 0.15、参考高度 10 m 的幂律风廓线,模拟网格为 \(4\times4\times1.5\) m;参考训练风速为 4 m/s。
网络用速度场 RMSE 监督,不是通过规划能耗反向传播来端到端训练。配置为 4 个傅里叶层、隐藏宽度 60、每个空间方向 12 个傅里叶模式;AdamW 权重衰减 \(10^{-4}\),批大小 16,初始学习率 \(10^{-2}\),每 20 个 epoch 减半。MDDF 角度维经频域压缩,仅保留少量低频模式。单张 32 GB V100 的训练约需 7 小时,局部训练扩大的是已有 CFD 的块样本数,并没有凭空增加独立天气与城市算例。
实验关键数据¶
主实验¶
评价包含 A–D 四个 \(1.2\times1.2\) km 街区及 E 一个 \(3\times3\) km 街区,每个街区采样 256 个可行起终点任务并移除过短任务。默认背景风速 4 m/s,A 另测 2 与 8 m/s;飞行高度 30–120 m,默认端点 75 m。相对任务风角 \(\psi\) 满足 \(|\psi|\le45^{\circ}\) 为顺风、\(|\psi-180^{\circ}|\le45^{\circ}\) 为逆风,其余为侧风。
下表摘自原文表 1,数值是 CFD 复评的单位距离能耗,均值 ± 标准差,单位 Wh/km;括号是原文报告的相对 CFD 参考额外能耗,不用四舍五入后的均值重算。风廓线基线由训练 CFD 的城市内部场预先平均得到,只保留高度变化。
| 街区 / 风速 / 任务 | CFD 参考 | 无风感知 | 高度风廓线 | GeoWind2Plan |
|---|---|---|---|---|
| A / 4 m/s / 全部 | \(12.3\pm1.4\) | \(13.3\pm1.8\)(7.5%) | \(12.8\pm1.6\)(4.1%) | \(12.5\pm1.5\)(1.4%) |
| A / 4 m/s / 顺风 | \(10.2\pm0.6\) | \(11.0\pm0.4\)(8.4%) | \(10.6\pm0.6\)(3.8%) | \(10.2\pm0.5\)(0.6%) |
| A / 4 m/s / 逆风 | \(13.7\pm0.5\) | \(15.4\pm1.1\)(12.1%) | \(14.6\pm0.7\)(6.4%) | \(14.0\pm0.5\)(2.1%) |
| A / 8 m/s / 逆风 | \(15.2\pm0.7\) | \(21.5\pm3.2\)(41.0%) | \(18.1\pm1.9\)(18.9%) | \(16.4\pm1.0\)(7.6%) |
| E / 4 m/s / 全部 | \(12.2\pm2.1\) | \(14.0\pm3.2\)(14.6%) | \(12.7\pm2.3\)(3.8%) | \(12.5\pm2.3\)(2.5%) |
强逆风最能放大局部风信息的价值:A 的 8 m/s 逆风任务中,无风感知规划相对参考多耗 41.0%,本文为 7.6%。E 的较大域也保持接近参考,但这证明的是该测试街区上的扩展能力,不是任意城市尺度的保证。
消融实验¶
原文表 2 是走廊宽度分析,而非移除 FNO 或 MDDF 的模块消融。下表保留其顺序,能耗为 A 街区所有相对风角任务的 Wh/km;时延仅列正文明确给出的风场推理值。
| 方法 | 走廊宽度 | CFD 复评能耗 | 风场推理 / 分析 |
|---|---|---|---|
| CFD 参考 | 全域 | \(12.3\pm1.4\) | CFD 算例约 8 小时 |
| GeoWind2Plan | 全域 | \(12.5\pm1.5\) | 神经预测约 15 秒 |
| GeoWind2Plan | 50% | \(12.4\pm1.5\) | 未单列时延 |
| GeoWind2Plan | 20% | \(12.4\pm1.6\) | 神经预测约 3 秒 |
| GeoWind2Plan | 10% | \(12.4\pm1.9\) | 高楼封堵时失败增加 |
| 无风感知 | 全域 | \(13.3\pm1.8\) | 不需要在线风预测 |
这些相近能耗不代表成功率相同。10% 走廊被高于 120 m 的建筑横向封堵时可能没有可行路线;表 2 没有给出各宽度的成功率,不能据此宣称窄走廊“不损失可行性”。
附录 H.4 表 5 独立检验风速缩放:保持几何、风向和入口廓线形状不变,将不同 CFD 场除以各自入口风速后比较。相对归一化向量差是两场差值的整体 \(L_2\) 范数除以目标风速场的整体 \(L_2\) 范数;平均角差是在自由飞行域逐点计算向量夹角后平均。
| 风速对比(参考 4 m/s) | 相对归一化向量差 | 平均角差 |
|---|---|---|
| 2 vs. 4 m/s | 0.0669 | 0.1115 rad(6.39°) |
| 8 vs. 4 m/s | 0.1124 | 0.1365 rad(7.82°) |
关键发现¶
- 三维风预测除了改变高度,还支持绕建筑侧向弯曲;仅高度风廓线可以表达垂直风切变,却无法表达水平尾流与遮蔽差异。
- 风速相似性并不精确:8 m/s 的归一化向量差高于 2 m/s,因此跨速结果应同时看风场偏差和对应 CFD 下的最终轨迹能耗。
- 附录 G 区分了两种计算阶段:20% 走廊风预测约 3 秒;每个 RRT 初值加优化约 2 CPU 秒,10 个初值在 10 核并行时规划墙钟约 2 秒,串行约 20 CPU 秒。不能把“规划约 2 秒”写成完整系统约 2 秒,也不能省略风预测阶段。
亮点与洞察¶
- 物理结构减少标签需求:把来风方向变换成参考系几何变化,避免逐风向学习独立映射。可迁移的前提是坐标、向量分量和边界处理全部一致,不能只旋转输入图像。
- 任务区域决定计算预算:走廊推理保留路线附近的高分辨率结构,而非把全城降采样。它同时收缩规划空间,部署时应允许走廊自适应扩宽或回退。
- 决策复评优于只看场误差:用预测风优化、用 CFD 风打分,直接检查预测是否误导规划。该思路适合其他物理代理模型驱动的控制任务,但本文仍是监督风场训练,而非决策损失训练。
局限与展望¶
- 预测时间平均风,背景风在一次任务内固定;没有阵风、湍流风险和时变入口重规划的实证支持。加入湍动能、风输入不确定性及在线更新是明确后续方向。
- 偏航协变性有唯一平均解及边界一致性假设,速度缩放限于中性、机械驱动、固定廓线形状的测试范围;热分层、复杂地形和传感器误差需要额外验证。
- 窄走廊能减少计算,却可能排除必要绕行;能耗表不能代替成功率表。本文也没有给出有限节点检查之外的连续安全证书或全局最优性证明。
- CFD 是高保真数值参考而非实飞测量,本文未报告真实飞行电池节能实验。机械功可能为负的准稳态约定需要在实际非再生电池成本中统一处理。
- 原文 §3.2 将汇总百分比称为“四个街区平均”,而总体实验列 A–E 五个街区,汇总范围未在该句完全明确;本笔记以逐街区表值为主,不把该汇总宣传成五街区总体结果。
相关工作与启发¶
- vs Flume-FNO:沿用局部 FNO 与建筑方向距离编码的思路;本文重点是参考风适配、任务区域推理和 CFD 复评的无人机规划闭环,不宜把全部风预测结构视作首次提出。
- vs Ebert 等的 Gappy POD 风估计规划:后者使用二维风切片与经验功率曲线;本文使用三维平均风、受力推力模型,以及可变速度和高度的连续优化。
- vs Gu 等的城市物流规划:后者具备较详细的多旋翼风阻模型,但主要针对二维稳态巡航;本文显式联合三维节点、加速度和时间步长。
- vs 风险导向 CAE-DNN / A* 方法:后者预测风速与湍动能服务风险避让;本文聚焦能耗及路径速度联合优化,但目前不覆盖湍流安全。两者的目标可以互补,不能把能耗优势等同于安全优势。
评分¶
- 新颖性: 4/5 — 主要价值是物理适配、局部推理与连续规划闭环,而非全新的 FNO 架构。
- 实验充分度: 4/5 — 有留出街区、风速、风角、尺度和走廊分析,但缺实飞及详细失败率。
- 写作质量: 4/5 — 方法与附录假设较清楚,汇总街区数量和时延口径需要谨慎辨别。
- 价值: 4/5 — 对任务时限内利用建筑尺度风信息有参考意义,实际部署仍需不确定性与安全验证。