https://arxiv.org/pdf/2604.04539

RSS2026 best paper

这篇文章会更工程一点,是一个 arch-algo 的 co-design.

Methodology

Fast Training

首先在 training 设计上,为了能够 match PPO,FlashSAC 采用了:

  • 大规模并行(env=1024)
  • 大规模 replay buffer,起到保留 long-tail experience 的作用(采用 10M replay buffer,比正常的大很多)
  • 使用更大的模型
  • 使用大 batch size 的同时减少更新次数(2 updates for 1024 transitions)

Stable Training

为了解决 off-policy RL 中致命的 critic 误差问题,FlashSAC 从多个层面控制对 Q-Value 的估计:

网络层面

  • Inverted Residual backbone

    文章对于网络设计,不直接使用 MLP,而是堆叠 \(d\to 4d\to d\) 的 residual block,来减少深层网络训练的困难.

  • Pre-activation batch norm

    由于每个 batch 都很大,所以文章选择使用 batch norm,并且选择了在 activation function 前进行 batch norm 的设计.

  • Final RMSNorm

    在过完所有 residual blocks 进入 value layer 之前添加一个 RMSNorm,增加 Q-value 输出的稳定性.

  • Weight unit-norm projection

    每次梯度更新之后,将 weight vector 投影到单位球面,然后 norm 层的 \(\gamma,\beta\) 投影到范数 \(\sqrt{d}\). 在这样的训练中,模型会更加侧重于 Q-value 的方向信息,而不是单纯变大来改变输出,来限制 Q-value variance.

一些细节设计

  • Cross-Batch value prediction

    由于不同的 batch 的归一化不同,所以如果预测 \(Q(s,a)\) 和 \(Q(s',a')\) 的归一化不同会导致额外偏差,所以将这两者拼接到同一个 batch 中. 由于 batch size 本来就很大所以这是好的.

  • Distributional Critic

    Critic 不去直接预测一个 value,而是预测一个 value distribution. 在 support \([-5,5]\) 上划分为 101 个 atom,然后预测 atom probability,并用 cross-entropy loss 去拟合 bellman target. 这让最优化的 landscape 更加平滑一些.

  • Adaptive Reward Sacling

    由于前面规定了 support,所以 reward 也需要重新 scale. 在训练过程中,记录 discounted return 的方差和历史最大值,然后按 \(\frac{1}{\max(\sqrt{\sigma^2+\epsilon},\frac{G_{max,history}}{G_{max,current}})}\) 去放缩。

Exploration

如果只使用 SAC 的 gaussian noise 的话靠谱程度就会不大高;另一方面标准 SAC 需要认为指定 entropy,这个就导致了差异和不稳定.

首先关于 entropy,FlashSAC 不直接指定 entropy,而是指定每个 action dimension 的目标标准差 \(\sigma_{tgt}\),以此得到 entropy. 可以知道这样的 entropy 在 \(H=\frac{|A|}{2}\log(2\pi e\sigma^2)\). 取 \(\sigma=0.15\).

另一方面,对于 gaussian policy 的随机采样,FlashSAC 不是每一步都采样,而是对于连续 \(k\) 个时间步骤保持同样的 \(\epsilon\),\(k\sim \zeta(s)\),其中 \(s=2\). 这样能够偶尔出现较长的一致的 \(\epsilon\),形成连贯的轨迹.

Experiment

论文对 60 个任务都进行了测试,在广泛的 benchmark 和 sim2real 上表现都很好,在高维任务上比 PPO 收敛速度快非常多;另一方面,对比别的 off-policy baseline,由于支撑的网络容量更大,以及稳定性更强所以表现也很好.

一些非平凡的 Ablation:

  • 对于灵巧手任务,off-policy 覆盖的动作区域明显更广.
  • Buffer scaling:0.1M -> 10M 的过程中性能和稳定性提高,然后再往后就学的更慢了.
  • Entropy target:Entropy target 没有那么敏感,0.15 完全支持多任务直接使用.