1535 字
8 分钟
SafeRL-YK:从离线安全锚点到在线 γ 调度

这篇文章用来同步我最近在做的 SafeRL-YK 项目:它想解决的不是“让强化学习直接端到端输出控制量”,而是让强化学习站在一个已经满足物理约束和安全约束的控制底座之上,只学习什么时候更像 Cruising,什么时候更像 Stop-and-Go

项目想法#

项目面向自动驾驶中的纵向跟驰场景。整体思路可以概括成一句话:

离线先把两个安全锚点控制器做扎实,在线阶段只让 RL 学一个调度参数 γ

这里的两个锚点,分别对应两类典型交通工况:

  • Cruising:相对平稳、低频扰动的巡航跟驰;
  • Stop-and-Go:更频繁启停、加减速扰动更强的拥堵跟驰。

项目并不直接让 RL 输出油门或加速度,而是让它输出一个调度量,去插值两套离线求好的 YK 安全控制器。这样做的出发点很明确:

  • 把安全性尽量前置到离线求解阶段
  • 把 RL 的责任缩小为“调度”而不是“发明控制器”
  • 把真实数据中的工况结构显式利用起来

项目目标#

目前这个项目的目标分成三层。

1. 从真实数据中提炼可用工况#

原始数据来自 highDinD。离线流水线会先做:

  • 纵向轨迹提纯;
  • 长时域轨迹拼接;
  • 频域 GMM 聚类;
  • 再把聚类结果回切为时域窗口。

这样做的目标不是单纯做数据清洗,而是要把真实车流中可重复出现的“跟驰模态”抽出来,给后面的锚点求解和 RL 训练提供结构化输入。

2. 求出两个可解释、安全的控制锚点#

离线阶段会在统一目标和统一硬约束下,分别为 CruisingStop-and-Go 求解两套 YK 锚点控制器。这里不仅检查频域稳定性,也做时域急停安全校验,避免出现“数学上稳,但紧急情况下不安全”的解。

这一步的目标,是先得到两个足够可靠的端点控制器,再谈在线插值。

3. 让强化学习只学调度,不学底层物理#

在线阶段的 RL 不直接生成控制律,而是学习调度参数 γ,在两个安全锚点之间平滑切换。当前主线已经从“直接输出绝对 γ”转向“输出增量 Δγ”,因为这种形式更适合做平滑调节,也更贴近“逐步修正”而不是“瞬间跳变”。

现在的实现已经做到什么#

到目前为止,这个项目已经不只是一个概念验证,而是形成了一条比较完整的闭环:

  • 离线数据流水线已经打通,从原始轨迹到 clustered windows 都能落盘;
  • 权重扫描和 PSO 锚点求解已经产出 best_weights.jsonyk_anchors.pkl
  • 参考频谱已经可以离线生成,供传统 SAY-CM 频谱调度器做基线;
  • 奖励基线缓存已经预计算,训练时不用在 reset 阶段反复做高代价仿真;
  • 当前训练主线已经迁移到 delta_env + delta_train,也就是全车队观测、Δγ 动作、5Hz 控制频率、带 TTC 惩罚项的版本;
  • 项目里已经存在两轮 delta_sweep 训练目录,说明增量版实验已经实际跑起来了。

换句话说,项目的核心结构已经从“离线锚点 + 在线调度”落到了具体脚本、缓存文件、评测脚本和实验目录上。

截至 2026 年 4 月初的阶段性效果#

截至 2026 年 4 月 2 日,项目里已有一份 500 条轨迹的批量评测摘要。

先看最朴素的静态锚点对比:

  • 静态 γ=0abs_mean-6058.14
  • 静态 γ=1abs_mean-7228.10
  • 500 条轨迹里,γ=0 赢了 497 条,γ=1 只赢了 3 条。

这说明一件很重要的事:当前数据分布下,单一的 γ=0 静态锚点仍然很强。

再看当前主线的 delta 版本评测:

  • delta_gamma_0rel_mean-110.85
  • 几个已训练配置里,最接近它的是 C03_ds02_wdg5_phase1__relative_normrel_mean-128.08
  • 其余配置大多更差,例如 C01_ds02_wdg0_phase1__relative_norm-140.77C02_ds02_wdg1_phase2__relative_norm-308.40

所以如果只看目前这份摘要,结论也很明确:

  • 项目的工程链路已经跑通;
  • 增量动作版 RL 已经能稳定进入可评测状态;
  • 但它还没有稳定超过当前最强的静态锚点基线。

我觉得这反而是一个健康的阶段。因为这说明问题不在“有没有把训练脚本跑起来”,而在更核心的研究问题上:真实工况下,什么样的观测、奖励与课程设计,才能让调度策略真正优于固定锚点?

我现在更关心什么#

接下来这个项目最值得继续追的,不是把系统变得更复杂,而是把“为什么 RL 还没稳定赢过静态锚点”拆清楚。当前我更关注几件事:

  • relative_norm 奖励是否已经足够消除不同工况的天然基线偏置;
  • 两阶段课程训练能否真正把极端工况中的策略迁移到混合工况;
  • Δγ 的动作设计、TTC 惩罚和全车队观测之间,谁在真正推动收益提升;
  • 传统频谱调度与 DMPC 基线放进同一套评价框架后,SafeRL-YK 的优势到底出现在哪一维。

小结#

如果要用一句话描述 SafeRL-YK 现在所处的位置,那就是:

它已经走过了“只讲思路”的阶段,进入了“离线安全底座基本成型,在线调度策略开始接受严格基线检验”的阶段。

我接下来会继续把这条线往前推:一边让离线锚点更可靠,一边让 RL 真正学会在真实交通模态之间做有意义的调度,而不是仅仅复现一个静态好用的默认解。

SafeRL-YK:从离线安全锚点到在线 γ 调度
https://weathour.github.io/posts/saferl-yk-progress/
作者
Weathour
发布于
2026-04-03
许可协议
CC BY-NC-SA 4.0