具身智能的“大脑”进化:深入拆解VLA 模型中的强化学习方法论

引言

强化学习 (RL) 是训练视觉语言智能体 (VLA) 的核心技术之一。与单纯的模仿学习相比,RL 允许智能体通过与环境的交互和试错来发现新的、更优的策略,从而提高泛化能力和鲁棒性。为应对 VLA 在机器人领域中面临的样本效率低、训练不稳定、控制维度高等挑战,研究者们提出了一系列经典及创新的 RL 算法。


1. PPO (Proximal Policy Optimization) ✅

  • 核心思想: PPO 是一种策略梯度方法,它通过一个“截断”的目标函数来限制每次策略更新的步长,确保新旧策略之间的差异不会太大。这使得训练过程更加稳定,避免了因更新过猛导致的策略崩溃。

  • VLA/机器人中的应用: PPO 因其稳定性、易于实现和调参,成为机器人学习领域非常流行的基准算法。它能够很好地处理连续和离散的行动空间,适用于多种机器人任务。

  • 训练结构图:

D

计算策略损失 L_CLIP

计算价值损失 L_VF

梯度下降更新 Actor & Critic

C

A(s,a) = Q(s,a) - V(s)

B

Actor 根据 state 输出 action

与环境交互, 收集 s, a, r, s'

PPO 训练循环

  • 核心公式:

    • 截断替代目标函数 (策略损失): 这是PPO的核心,用于更新Actor。
      L C L I P ( θ ) = E ^ t [ min ⁡ ( r t ( θ ) A ^ t , clip ( r t ( θ ) , 1 − ϵ , 1 + ϵ ) A ^ t ) ] L^{CLIP}(\theta) = \hat{\mathbb{E}}_t \left[ \min\left(r_t(\theta) \hat{A}_t, \text{clip}(r_t(\theta), 1 - \epsilon, 1 + \epsilon) \hat{A}_t\right) \right] LCLIP(θ)=E^t[min(rt(θ)A^t,clip(rt(θ),1ϵ,1+ϵ)A^t)]
      其中 r t ( θ ) = π θ ( a t ∣ s t ) π θ o l d ( a t ∣ s t ) r_t(\theta) = \frac{\pi_\theta(a_t|s_t)}{\pi_{\theta_{old}}(a_t|s_t)} rt(θ)=πθold(atst)πθ(atst) 是新旧策略的概率比, A ^ t \hat{A}_t A^t 是优势函数, ϵ \epsilon ϵ 是截断超参数。
    • 价值函数损失: 用于更新Critic,通常是均方误差。
      L V F ( θ ) = E ^ t [ ( V θ ( s t ) − V t target ) 2 ] L^{VF}(\theta) = \hat{\mathbb{E}}_t \left[ (V_\theta(s_t) - V_t^{\text{target}})^2 \right] LVF(θ)=E^t[(Vθ(st)Vttarget)2]
    • 总损失: 策略损失和价值损失的加权和,有时会加上一个熵奖励项以鼓励探索。
      L ( θ ) = L C L I P ( θ ) − c 1 L V F ( θ ) + c 2 S [ π θ ] ( s t ) L(\theta) = L^{CLIP}(\theta) - c_1 L^{VF}(\theta) + c_2 S[\pi_\theta](s_t) L(θ)=LCLIP(θ)c1LVF(θ)+c2S[πθ](st)
  • 参考: PPO Paper


2. SAC (Soft Actor-Critic) ✅

  • 核心思想: SAC 是一种基于最大熵框架的离策略 (off-policy) 算法。它不仅致力于最大化累积奖励,还同时最大化策略的熵(即随机性)。这鼓励智能体进行更充分的探索,避免过早陷入局部最优,从而提升了样本效率和稳定性。

  • VLA/机器人中的应用: SAC 在连续控制任务中表现尤为出色,非常适合需要精细操作的机器人(如机械臂)。其高样本效率对于数据采集成本高昂的真实世界机器人训练至关重要。

  • 训练结构图:

网络与更新

数据流

s, r

a

批量 (s,a,r,s')

批量 s

Q值

Q值

环境

Replay Buffer

Actor

Critic 更新

Actor 更新

Q-Network 1

Q-Network 2

  • 核心公式:

    • 奖励函数 (最大熵目标): SAC的优化目标是在标准奖励的基础上增加一个策略熵项。
      J ( π ) = ∑ t = 0 T E ( s t , a t ) ∼ ρ π [ r ( s t , a t ) + α H ( π ( ⋅ ∣ s t ) ) ] J(\pi) = \sum_{t=0}^{T} \mathbb{E}_{(s_t, a_t) \sim \rho_\pi} \left[ r(s_t, a_t) + \alpha \mathcal{H}(\pi(\cdot|s_t)) \right] J(π)=t=0TE(st,at)ρπ[r(st,at)+αH(π(st))]
      其中 H \mathcal{H} H 是策略 π \pi π 的熵, α \alpha α 是自动调整的温度参数。
    • Q函数/评论家损失:
      L Q ( θ ) = E ( s , a , r , s ′ ) ∼ D [ ( Q θ ( s , a ) − ( r + γ E a ′ ∼ π [ Q θ ˉ ( s ′ , a ′ ) − α log ⁡ π ( a ′ ∣ s ′ ) ] ) ) 2 ] L_Q(\theta) = \mathbb{E}_{(s,a,r,s') \sim \mathcal{D}} \left[ \left( Q_{\theta}(s,a) - \left(r + \gamma \mathbb{E}_{a'\sim\pi}[Q_{\bar{\theta}}(s',a') - \alpha \log \pi(a'|s')]\right) \right)^2 \right] LQ(θ)=E(s,a,r,s)D[(Qθ(s,a)(r+γEaπ[Qθˉ(s,a)αlogπ(as)]))2]
      为了稳定训练,通常使用两个Q网络,并取目标Q值中的较小者(类似TD3)。
    • 策略/行动者损失:
      L π ( ϕ ) = E s ∼ D , a ∼ π ϕ [ α log ⁡ π ϕ ( a ∣ s ) − Q θ ( s , a ) ] L_\pi(\phi) = \mathbb{E}_{s \sim \mathcal{D}, a \sim \pi_\phi} \left[ \alpha \log \pi_\phi(a|s) - Q_\theta(s,a) \right] Lπ(ϕ)=EsD,aπϕ[αlogπϕ(as)Qθ(s,a)]
  • 参考: SAC Paper


3. GRPO (Generalized/Group Relative Policy Optimization) ✅

  • 核心思想: GRPO 是一种无评论家 (critic-free) 的策略优化方法。它不学习一个明确的价值函数,而是通过对一批由同一提示生成的经验轨迹的奖励进行分组归一化,来计算出相对的优势。这种方法简化了算法结构,显著提高了内存效率。

  • VLA/机器人中的应用: 对于需要部署在资源受限设备上的 VLA,或在大型模型训练中,GRPO 因其内存效率高而具有优势。它被认为是机器人自适应学习领域的一项重要进展,因为它避免了训练一个独立的、可能不稳定的评论家网络。

  • 训练结构图:

k个奖励 R_1..R_k

k个优势 A_1..A_k

输入 Prompt

Actor 生成 k 个轨迹

奖励模型评估

计算组平均奖励 R_avg

计算相对优势 A_i = R_i - R_avg

更新 Actor 策略

  • 核心公式:

    • 组相对优势 (Group Relative Advantage): GRPO的核心是其优势计算方式,它不依赖于价值函数。
      A j k = R j k − R ˉ j 其中 R ˉ j = 1 K ∑ k = 1 K R j k A_{jk} = R_{jk} - \bar{R}_j \quad \text{其中} \quad \bar{R}_j = \frac{1}{K} \sum_{k=1}^{K} R_{jk} Ajk=RjkRˉj其中Rˉj=K1k=1KRjk
      R j k R_{jk} Rjk 是针对提示 j j j 的第 k k k 个响应的奖励。优势是该响应的奖励与其所在组的平均奖励的差值。
    • 策略损失 (Policy Loss): 通常使用一个类似PPO的截断目标函数,但使用上面计算出的相对优势 A ^ \hat{A} A^
      L ( θ ) = E ^ [ log ⁡ π θ ( a ∣ s ) A ^ ] L(\theta) = \hat{\mathbb{E}} \left[ \log \pi_\theta(a|s) \hat{A} \right] L(θ)=E^[logπθ(as)A^]
      (具体形式可能因实现而异,但核心是使用无评论家的相对优势)
  • 参考: RLinf-GRPO (作为 RLinf 框架的一部分)


4. Reinforce++ ✅

  • 核心思想: 与 GRPO 类似,Reinforce++ 也是一种无评论家的 RLHF (Reinforcement Learning from Human Feedback) 算法。其关键创新在于使用全局优势归一化 (Global Advantage Normalization) 来稳定训练过程,旨在提高对提示和奖励模型的鲁棒性。

  • VLA/机器人中的应用: 主要应用于大型语言模型(作为VLA的大脑)的对齐任务。通过移除评论家网络,降低了计算和内存负担。全局归一化相比组归一化,可能在处理多样化的批次数据时提供更稳健的梯度信号。

  • 训练结构图:

N个优势 A_1..A_N

计算 μ_A, σ_A

N个归一化优势

一批不同 Prompts

Actor 生成 N 个轨迹

计算每个轨迹的优势 A_i

全局优势归一化

A_norm = (A_i - μ_A) / σ_A

更新 Actor 策略

  • 核心公式:

    • 全局优势归一化 (Global Advantage Normalization): 这是Reinforce++的核心。
      A ^ n o r m = A − μ A σ A + ϵ \hat{A}_{norm} = \frac{A - \mu_A}{\sigma_A + \epsilon} A^norm=σA+ϵAμA
      其中 μ A \mu_A μA σ A \sigma_A σA 分别是当前整个训练批次中所有优势值的均值和标准差。这使得优势信号的分布保持稳定。
    • 策略损失 (Policy Loss): 使用归一化后的优势来更新策略。
      L ( θ ) = E ^ [ log ⁡ π θ ( a ∣ s ) A ^ n o r m ] L(\theta) = \hat{\mathbb{E}} \left[ \log \pi_\theta(a|s) \hat{A}_{norm} \right] L(θ)=E^[logπθ(as)A^norm]
  • 参考: Reinforce++ Paper


5. DAPO (Decoupled Clip and Dynamic sAmpling Policy Optimization) ✅

  • 核心思想: DAPO 是一种为大型语言模型(LLM)设计的 RL 算法,它通过解耦的裁剪和动态采样策略来优化训练过程。

  • VLA/机器人中的应用: 目前,DAPO 的研究和应用主要集中在提升 LLM 的高级推理能力(如数学问题),而非直接的机器人身体控制。但它可以用于优化作为 VLA “大脑”的语言模型,间接提升 VLA 的任务理解和规划能力。

  • 训练结构图:

奖励分数

D

动态采样选择训练数据

使用解耦裁剪计算损失

Prompt

LLM 生成多个响应

奖励模型评估

梯度下降更新 LLM

  • 核心公式:

    • DAPO 的公式较为复杂,其核心在于损失函数中对 KL 散度的动态惩罚和解耦的裁剪项,旨在解决传统 PPO 在 LLM 对齐任务中的模式崩溃和训练不稳定问题。对于 VLA 机器人控制,其公式的直接借鉴意义不大。
  • 参考: DAPO Paper


6. CrossQ ✅

  • 核心思想: CrossQ 是对 SAC 的一种改进,旨在进一步提高样本效率和降低计算成本。它通过两个关键改动实现:1) 在评论家网络中使用批量归一化 (Batch Normalization);2) 移除目标网络 (Target Network)

  • VLA/机器人中的应用: 作为 SAC 的高效版本,CrossQ 非常适合计算资源有限或需要快速迭代的机器人研发场景。它在保持高性能的同时,简化了算法实现,降低了内存和计算开销。

  • 训练结构图:

采样 s, a, r, s'

当前 (s,a)
下一 (s',a')

计算所有Q值

C

Q网络 (含批量归一化)

Replay Buffer

拼接批次

分离批次

计算贝尔曼误差

更新 Critic & Actor

  • 核心公式:

    • 评论家损失 (Critic Loss): CrossQ 的巧妙之处在于其目标Q值的计算。因为它没有目标网络,它使用当前的Q网络来计算目标,但通过批量归一化来稳定。
      L Q ( θ ) = E [ ( Q θ ( s , a ) − y ( r , s ′ , a ′ ) ) 2 ] L_Q(\theta) = \mathbb{E} \left[ \left( Q_{\theta}(s,a) - y(r, s', a') \right)^2 \right] LQ(θ)=E[(Qθ(s,a)y(r,s,a))2]
      目标值 y y y 的计算不使用延迟更新的目标网络:
      y ( r , s ′ , a ′ ) = r + γ ( Q θ ( s ′ , a ′ ) − α log ⁡ π ( a ′ ∣ s ′ ) ) y(r, s', a') = r + \gamma \left( Q_{\theta}(s',a') - \alpha \log \pi(a'|s') \right) y(r,s,a)=r+γ(Qθ(s,a)αlogπ(as))
      这里的 Q θ ( s ′ , a ′ ) Q_{\theta}(s',a') Qθ(s,a) 是用与 Q θ ( s , a ) Q_{\theta}(s,a) Qθ(s,a) 完全相同的网络和权重计算的,但输入是下一状态和动作。通过将 ( s , a ) (s,a) (s,a) ( s ′ , a ′ ) (s',a') (s,a) 拼接在一个批次中进行前向传播,批量归一化层可以稳定这个过程。
  • 参考: CrossQ Paper


7. RLPD (Reinforcement Learning with Prior Data) ✅

  • 核心思想: RLPD 是一种混合学习方法,它结合了离线数据(Prior Data,如人类演示、次优策略日志)和在线交互数据来进行强化学习。其目标是利用已有的数据来预热策略,加速在线学习过程,从而大幅提高样本效率。

  • VLA/机器人中的应用: 在机器人领域,获取真实世界的交互数据成本极高。RLPD 允许 VLA 先从离线数据集中学习基础技能,然后在真实环境中通过少量交互快速微调和适应,是解决 Sim-to-Real 挑战和提高数据效率的有效途径。

  • 训练结构图:

对称采样

更新

离线数据集

混合 Replay Buffer

在线交互

离策略 RL 算法
(例如 SAC, CrossQ)

  • 核心公式:

    • RLPD 本身不改变核心RL算法的损失函数。它的创新在于数据处理流程。其损失函数取决于底层的离策略算法(例如,如果使用SAC,则损失函数与SAC相同)。
    • 关键在于从混合缓冲区采样时,通常会使用对称采样策略,例如,一个批次中50%的数据来自离线数据集,50%来自在线交互,以平衡两种数据源对策略更新的贡献。
  • 参考: RLPD Paper


8. SAC-Flow ✅

  • 核心思想: SAC-Flow 是 SAC 的一种变体,它将策略网络(Actor)替换为基于流的模型(Flow-based model),如归一化流 (Normalizing Flows)。这种策略表达能力更强,能够表示更复杂的多模态动作分布。

  • VLA/机器人中的应用: 对于一些复杂的机器人操作任务,最优的动作可能不止一个(例如,可以用多种姿态拿起同一个杯子)。SAC-Flow 能够学习这种多模态的动作分布,使得 VLA 的行为更加灵活和鲁棒。它通过特定的网络结构(如 GRU 或 Transformer)解决了流模型在 RL 训练中的不稳定性问题。

  • 训练结构图:

SAC Critic & Loss

SAC-Flow Actor

雅可比行列式

State

基础分布 z0

可逆变换 f1

...

可逆变换 fK

Action

log π(a|s)

计算 SAC 损失

  • 核心公式:

    • 策略和对数概率: Actor 不再直接输出高斯分布的均值和方差,而是学习一个可逆的变换函数 f θ f_\theta fθ。动作 a a a 通过对一个简单基础分布(如 N ( 0 , I ) \mathcal{N}(0, I) N(0,I))中的噪声 z z z 进行变换得到: a = f θ ( z ) a = f_\theta(z) a=fθ(z)
    • 策略的对数概率 log ⁡ π θ ( a ∣ s ) \log \pi_\theta(a|s) logπθ(as) 可以通过变量变换公式精确计算:
      log ⁡ π θ ( a ∣ s ) = log ⁡ p ( z ) − log ⁡ ∣ det ⁡ ( ∂ f θ ( z ) ∂ z ) ∣ \log \pi_\theta(a|s) = \log p(z) - \log \left| \det \left( \frac{\partial f_\theta(z)}{\partial z} \right) \right| logπθ(as)=logp(z)log det(zfθ(z))
      其中 log ⁡ p ( z ) \log p(z) logp(z) 是基础分布的对数概率,第二项是 f θ f_\theta fθ 的雅可比行列式的对数。
    • 损失函数: SAC-Flow 使用与标准SAC完全相同的策略损失评论家损失,但将上面计算出的 log ⁡ π θ ( a ∣ s ) \log \pi_\theta(a|s) logπθ(as) 代入公式中。
  • 参考: SAC-Flow Paper

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐