# 四站／五站多目的地 FIFO 模型（2026-09-30）

最新补充：逐班容量与实际编队规模的定义见 batch-capacity-model.md；逐班模式按各航段实际规模重算节能。下文统一规模的描述对应固定模式。

## 范围与假设

四站使用 A→C→D→B；五站使用 A→C→D→E→B。每架飞机的任务终点可以是 D、E（仅五站）或 B，路径为这条链到终点为止的前缀。本版不允许跳站或分支航线。本站终止任务后飞机退出仿真运输链；返航、调机与补能尚未建模。

飞机最终目的地与某一货组的目的地不同：目标飞机仍前往 B，但可在 C、D 卸下部分货物。背景飞机可在 D 或 E 结束整架飞机的任务。

同一航段共享一个 FIFO 队列和同一班空位。例如 C→D 的飞机可以有不同最终目的地，但不能因此重复获得空位。终点为 D 的飞机在 D 交付，不参加 D→B（四站）或 D→E（五站）的排队。只有终点为 B 的飞机参加 E→B 排队。

## 逐架排程

飞机索引为 i，中转站索引为 j，班次索引为 k。到达时间 a(i,j)、作业时间 h(i,j)、出发时间 t(i,j,k) 均以分钟计。班次时刻 T(j,k) 使用统一时钟，每班空位为整数 S(j)。目标机入编缓冲 b 为分钟；背景机缓冲当前为零。

继续飞行的飞机就绪时间为 a(i,j)+h(i,j)+b(i)。按到达时间排序，同到达时刻按飞机编号排序。每班从队首分配最多 S(j) 个空位。队首未到达或未就绪时，后机不得越过，未用空位保留为空；这是本版选择的严格 FIFO 规则。

若飞机搭上班次 k，则下一站到达为：

`a(i,j+1) = T(j,k) + 60 × distance(j,j+1) / speed + transitDelay(i,j)`。

因此下游到达时间由上游排程内生决定，不能独立重新生成。未分配到上游班次的飞机，不产生下游到达记录。继续编队的本站滞留为 `T(j,k)−a(i,j)`，包含作业和等编队时间；本站终止者的交付完成时刻为 `a(i,j)+h(i,j)`，后续出发与排队时间记为空值，并非零等待。

## 索降与经济优化

本版仍优化一架最终目的地为 B 的目标机。决策变量 dC、lC、lD 单位为 kg：dC 为 A→C 货量；lC 为 C→D 货量；lD 为 D→B 货量。固定 q 为 A→B 货量。五站的 lD 经 E 运到 B，在 E 不交付、不增加新货；E 的可编辑作业时间可以表示重组或检查，并计入滞留时间。E 的新货变量、绞盘作业、共享空域和额外处理费尚未增加。

目标函数仍为目标机净收益最大化：运输收费收入，减去时效损失、货物处理费、C/D 索降固定费和电费。背景飞机尚无货量、费率和能耗数据，因此按终点统计完成架数，不计算或冒称全网络货运利润。

每个候选货量都重新排所有中转点的队列。搜索保持原有离散步长，不能称为连续问题全局最优。

五站的后半段能耗为：

`E_DE + E_EB = (distance_DE + distance_EB) × (k0 + kLoad × (q+lD)) × gamma`。

等待能耗增加 E 点实际滞留：

`E_wait = loiterRate × (waitC + waitD + waitE)`。

k0 单位 kWh/km，kLoad 单位 kWh/(km·kg)，loiterRate 单位 kWh/min；gamma 使用原有角色、编队规模、气动占比和减阻参数。总航程与参考载荷约束均使用实际启用路线长度。默认 D→E、E→B 各 12.5 km 是演示假设，合计与原 D→B 的 25 km 相同，以便先看新增排队机制，不代表真实地理距离或零绕行代价。

## 情景分析与核验

索降可行／盈利图、编队与同路线单飞图、随机扰动试验均使用上述同一个排程函数。五站扰动当前包括 C 到达、C/D 作业、C→D 飞行延迟和 C/D/E 班次取消；E 的作业和 D→E／E→B 飞行尚无独立随机扰动。上游延误仍会传播到 E。

新测试验证：共享 C 空位不因最终目的地改变而增加；D/E 终止者不占后续空位；去 B 飞机的到达由每站实际出发递推；终止任务能减少下游拥堵；五站等待计入能耗；零扰动回放与计划一致；两幅图均重新计算五站结果。原四站和三站算法继续保留。

计算量：每个货量候选重新对各站最多 48 架飞机排序并扫描班次。新增 E 为新增一轮排程，没有新增货量决策维度；主要搜索量仍是三个货量网格的乘积。本版支持同一链路的多终点，尚不能代表有支线和多起点的区域航线网络。
