v3.4 函数保持初始化实验评估

评估日期:2026-09-09

数据完整性

六个训练任务均完成 1500 episode,返回码为 0。周期验证包含 6 × 30 × 32 = 5760 条轨迹,最终测试包含 6 × 2 × 128 = 1536 条轨迹。自动审计检查通过,没有缺失的训练任务、验证点、final selector 或场景 seed。

直接结果

checkpoint 方法 成功率 任务完成率 配送比例 发现比例
validation-best taskctx 函数保持 0.26% 40.83% 41.38% 41.35%
validation-best 配对 noctx 0.00% 40.05% 40.61% 40.55%
last taskctx 函数保持 0.00% 39.32% 40.21% 39.87%
last 配对 noctx 0.26% 42.24% 43.22% 42.58%

总共 768 条 taskctx final-test 轨迹中只有 1 条成功,768 条 noctx 轨迹中也只有 1 条成功。taskctx 在 validation-best 的任务完成率高 0.78 个百分点,在 last 低 2.92 个百分点。三个训练 seed 的离散程度高于这些差值,当前数据没有形成可重复的 taskctx 收益信号。

与上一轮 v3.4 的差异来源

上一轮 delivcoal 中,taskctx/noctx validation-best 成功率分别为 65.10% 和 62.50%,任务完成率分别为 95.31% 和 95.00%。本轮两组同时下降到接近零成功率和约 40% 任务完成率。

逐项比较保存的训练配置后,核心训练参数、地图规模、智能体数量、任务数量、PPO 参数和 episode 长度均一致;实际环境名称发生了变化:

实验 配置中的 env_name 加载的环境包
上一轮 v3.4 delivcoal envs/delivcoal
本轮函数保持实验 MyEnv envs/capcoal

manifest 顶层虽然声明了 env_name: delivcoal,旧的 sweep 逻辑只用该字段命名输出目录。每个 job 从根 config.yaml 继承了 MyEnv,导致训练和随后的评估都进入 capcoal 环境。最终测试内部使用了相同环境和相同场景 seed,因此本轮 taskctx/noctx 对照本身配对成立;它与上一轮 delivcoal 结果不属于同一个实验总体。

可支持的判断

本轮结果说明函数保持初始化可以完成训练并让新增输入获得更新,无法评价它对 delivcoal 退化的修复作用。两组在 capcoal 中表现接近,说明这次共同失败与 taskctx 开关没有直接对应关系。周期验证从早期到晚期一直处在较低水平,也没有呈现上一轮所观察到的“先收敛、后回落”轨迹。

代码已修正 sweep 的环境传播规则:manifest 顶层 env_name 现在写入每个 job,job override 仍可覆盖它。正式 manifest 的公共配置也显式加入 env_name: delivcoal,形成双重约束。后续 delivcoal 重跑必须先 dry-run 检查生成配置中的环境路由,再提交训练。

纠正后的正式重跑已于 2026-09-09 13:15 启动,运行目录为 runs/20260909-1315_delivcoal_hatt-v34-function-preserving-corrected。启动后逐份检查了六个生成配置,环境均为 delivcoal。

结论边界

这轮计算产生了一组完整的 capcoal 对照结果,可以保留为跨环境失败案例。它没有验证或证伪 v3.4 的 delivcoal 任务上下文设计,也没有回答函数保持初始化能否缓解原 seed 2 的末期下降。该问题需要在修正后的 delivcoal 配置上重新训练和测试。