PPO 与 Actor-Critic 方法
在完成任务定义后,训练算法需要将交互数据转化为网络参数的更新。本篇介绍四足运动训练中常用的 PPO-Clip 与 Actor-Critic 结构,重点说明各个计算量的意义及其联系。示例继续采用十二关节的位置偏移动作,不绑定 legged_gym 或 mjlab 的具体实现。
前置内容为强化学习的交互与训练机制与奖励函数与回合机制。完整的策略梯度推导可在理论进阶中选读。
1. 策略网络与价值网络
Section titled “1. 策略网络与价值网络”Actor 根据策略输入 定义动作分布 ;Critic 根据输入 估计当前策略下的未来折扣回报 。 与 分别表示两者参数。
这里单独使用 ,是因为价值网络的输入可以与策略不同。例如 Actor 使用本体观测和历史,Critic 还可以接收仿真线速度等训练期信息。若两者输入相同,则可令 。对于部分可观测任务,价值预测的质量仍取决于输入包含的信息。
| 模块 | 学习对象 | 训练中的作用 | 常规部署中的作用 |
|---|---|---|---|
| Actor | 条件动作分布 | 产生探索动作,优化运动行为 | 根据输入产生动作 |
| Critic | 未来折扣回报 | 构造优势与价值学习目标 | 通常不参与控制推理 |
Critic 不提供“正确关节角”标签,而是提供相对当前策略预期的评价。若 Actor 依赖估计模块、历史缓存或归一化统计,部署时也必须保留这些依赖,不能仅按网络名称决定导出范围。
2. 连续动作分布与探索
Section titled “2. 连续动作分布与探索”十二维动作可以使用对角高斯分布建模:
网络给出均值 ,标准差 可以是可学习参数,也可以由网络产生。训练时从分布采样,评估时常采用均值动作;采用哪种方式应写入评估协议。
需要区分用于概率计算的采样动作与送入物理环境的处理后动作。若先采样 ,再由环境执行裁剪、缩放和 PD 控制,则 PPO 应保存并对同一个采样动作计算新旧对数概率。不能用未经变换的高斯密度直接评价裁剪后的值,冒充原采样动作的概率。使用可逆动作变换时,还需按该分布实现处理变换后的密度。
探索标准差属于策略分布,动作缩放属于物理接口。两者都会影响实际动作变化,但修改其中一个不能替代对另一个的检查。
3. 时序差分误差与广义优势估计
Section titled “3. 时序差分误差与广义优势估计”优势用于衡量某次动作的结果相对价值预期的改善程度。广义优势估计(GAE)通过组合多个时间步的时序差分误差构造更新信号,参数 调节对较远误差的权重。
为明确边界,记 为价值自举掩码, 为优势递推掩码:
表示本次转移到达的输入,发生自动重置时应与新回合初始输入区分。上式描述一种显式掩码处理方式,实际框架也可能先修正超时奖励再执行递推。
| 转移位置 | 处理含义 | ||
|---|---|---|---|
| 同一回合内,后续样本已收集 | 1 | 1 | 续接价值与后续优势 |
| 任务终止 | 0 | 0 | 不续接终止后的价值或优势 |
| 持续任务的外部时限截断并重置 | 1 | 0 | 使用回合末价值,但不跨入新回合递推 |
| 采样段末端,回合尚未结束 | 1 | 0 | 使用末端价值,结束本段有限长度递推 |
若有限时长本身属于任务终止,应按任务语义处理,不能统一归为外部截断。
例如在非终止转移中,取 、、当前价值 2.0、下一价值 2.1,则 。若同一步是任务终止,自举项被去除,误差为 。这说明回合边界的错误会直接改变学习信号。
较大的 保留更多远期误差信息,但估计可能更易受轨迹波动影响;较小的 更依赖局部价值估计。它与折扣因子、采样长度和价值预测质量共同作用。
4. PPO 的概率比与裁剪目标
Section titled “4. PPO 的概率比与裁剪目标”对于采样时保存的同一个动作,定义新旧策略的概率密度比:
PPO-Clip 最大化以下经验目标:
旧策略对数概率和优势在这一轮更新中作为固定数据。裁剪限制目标中继续推动概率比变化的收益,并非直接约束网络参数或动作。该目标与交替采样、批量更新的形式来自 PPO 原论文。
以 为手算示例:当 、 时,该样本贡献为 1.2;当 、 时,贡献为 。正负优势都需要考虑,不能只把概率比截到区间后乘优势来替代完整目标。
裁剪不保证所有样本的概率比都位于区间内,也不保证每次更新后实际任务表现单调提高。实现中可以进一步监测 KL 散度,并采用提前停止或学习率调整,具体机制见 PPO 算法说明。
5. 价值损失与熵项
Section titled “5. 价值损失与熵项”一种价值回归目标是 ,并最小化:
这里的 指构造回报用的原始优势。若 Actor 更新时对优势进行标准化,不能把标准化后的优势直接代入该回报目标。价值裁剪等变体需按实现单独说明。
以梯度下降的符号约定,可以写出示意总损失:
熵项鼓励保留动作分布的随机性;权重过大也可能妨碍稳定动作形成。Actor 与 Critic 可以使用独立优化器,上式只用于说明目标方向,不规定代码组织方式。
6. 算法量与物理行为的对应
Section titled “6. 算法量与物理行为的对应”训练中应同时查看 KL、价值损失、策略标准差、奖励分项与机器人行为。低价值损失可能只是奖励尺度很小;较低熵也不等于策略已掌握全部指令。动作持续饱和时,还应检查动作接口和探索分布,而不能只调整 PPO 裁剪范围。
- 用本篇数值复核非终止与任务终止两种 TD 误差。
- 令优势分别为 1 和 -1,计算概率比为 0.6、1.0、1.4 时的裁剪目标,解释更新方向。
- 对一份轨迹标记终止、截断与采样段末端,分别填写两个掩码。
- 列出 Actor 推理所需的数据和模块,说明 Critic 的特权输入是否需要随策略部署。