本项目受到维护者本科阶段一项早期研究的启发。该研究讨论中国船舶排放控制区背景下,内贸班轮如何在 ECA 内外选择不同航速,并在燃油成本、碳排放成本和班期要求之间取得平衡。
本科研究是项目的问题来源,不是当前代码的完整技术规格。当前仓库面向交互展示和可重复实验,重新实现了地图测距、ECA 判区、离散航速搜索和敏感性计算,并加入可编辑航线、真实港区点位和移动端界面。
因此,项目结果不应被表述为原论文数值的再次发表,也不应被视为对早期论文全部结论的复核。
在给定以下输入后:
- 一条由航路点组成的四港循环航线;
- ECA 研究判区;
- 离散速度—油耗曲线;
- MGO、HFO、碳排放价格与碳排放因子;
- 总计划周期和单港停留时间;
模型为每个港间航段的 ECA 部分和区外部分选择一个离散航速,使燃油成本与碳成本之和尽可能低,同时不超过总计划周期。
flowchart LR
A[航路点] --> B[Haversine 测距]
B --> C[每 5 海里采样判区]
C --> D[ECA / 区外决策段]
D --> E[离散航速与油耗评估]
E --> F[时间状态动态规划]
F --> G[航速、时间、油耗、排放与成本]
航路点以 [经度, 纬度] 保存。相邻点之间采用 Haversine 公式计算大圆距离,单位为海里。
为了估算 ECA 内外距离,每条折线按最长约 5 海里的间隔采样,以采样小段中点是否落入研究多边形作为分类依据。该方法适合即时交互,但边界附近存在采样误差;它不是严格的测绘或 GIS 拓扑求交。
ECA 着色面由政策文件中的海侧控制点和 Natural Earth 岸线闭合。官方第 60 点没有数值坐标,坐标基准也未在原表中明确,因此项目始终将其称为“研究判区”。
对于距离为 d、速度点对应每 500 海里油耗为 f 的决策段:
fuel = f × fuelFactor × d / 500
co2 = fuel × carbonFactor
fuelCost = fuel × zoneFuelPrice
carbonCost = co2 × carbonPrice
segmentCost = fuelCost + carbonCost
ECA 内使用 MGO 价格,区外使用 HFO 价格。当前版本假设两种燃油使用同一速度—油耗曲线和碳排放因子。
这些名称延续早期研究算例,不能直接解释为当前法规允许在所有区外海域使用高硫 HFO。实际燃料合规性还取决于全球硫上限、船舶设备、脱硫装置、航次日期和主管机关要求。
优化器将四个港间航段拆成最多八个分区决策段,在设置的最低和最高航速之间枚举速度点。
动态规划以 0.25 小时为时间刻度。每加入一个决策段,求解器保留相同累计时间下成本最低的状态,最后从满足总计划周期的状态中选择总成本最低者。
如果没有任何速度组合可以满足计划周期,页面会使用最高可选航速计算一个参考结果,并将状态标记为“班期不可行”。该结果用于解释不可行程度,不代表存在可行最优解。
“统一航速”并不是未经优化的历史航次,而是:
在同一条航线、同一组价格和同一计划周期下,为所有 ECA/区外决策段使用同一个可行离散航速。
它的作用是隔离“分区航速策略”的边际收益。它没有隔离路线几何本身的收益,也不等同于早期本科研究中的论文基准情景。
默认航线由航线标注工具人工绘制,已经主动考虑 ECA 避让。v0.1.0 默认路线约 3,009 海里,其中 ECA 内约 492 海里,ECA 占比约 16.4%。
由于统一航速与优化策略都使用这条已避让航线,比较时路线收益不会再次计入;剩余优化空间只来自分区航速差异。在默认均衡参数和较宽松班期下,进一步优化航速的节约率约为 0.2% 是情景本身的合理结果。
这也意味着不能把当前默认节约率与早期论文中基于不同距离矩阵、时间窗和基准定义得到的比例直接比较。
当前实现有意采用适合前端交互的简化模型:
| 项目 | 早期本科研究 | 当前实验室 |
|---|---|---|
| 空间距离 | 预先测量的距离矩阵 | 可编辑地图航线实时估算 |
| 航速表示 | 连续权重组合离散速度点 | 每个分区选择一个离散速度 |
| 到港约束 | 逐港、逐日时间窗 | 总计划周期 |
| 整数变量 | 到达日期二进制变量 | 无显式二进制到达变量 |
| 求解器 | AMPL/CPLEX 混合整数规划 | 浏览器端动态规划 |
| 研究重点 | 验证一个具体算例 | 快速编辑、重算和比较情景 |
- 航线穿陆、吃水、通航分道、禁航区和气象海况;
- 风浪、流速、载重、主机工况和船体污损;
- 换油时间、换油成本、脱硫塔和燃料兼容性;
- 逐港装卸计划、等待、迟到惩罚和班期恢复;
- SOx、NOx、颗粒物和生命周期排放;
- 燃油价格、航行时间和油耗曲线的不确定性。
这些限制不妨碍项目作为教学和方法实验工具使用,但必须在解释结果时保留。
- 优先比较同一数据版本和同一航线下的情景。
- 清楚区分路线变化和航速变化的贡献。
- 不把成本最低自动解释为环境影响最低。
- 不将研究判区结果用于执法或合同合规判断。
- 修改政策坐标、油耗或排放参数时记录来源、日期和假设。