Actor-Critic方法
Actor-Critic方法是一种结合了基于价值学习和基于策略学习的强化学习算法。它同时维护策略函数(Actor)和价值函数(Critic),利用两者的优势实现更加稳定和高效的学习。
基本框架
Actor-Critic方法包含两个核心组件:
Actor(演员)
Actor 是策略函数 ,负责根据当前状态选择动作。它通过策略梯度方法更新参数,目标是最大化期望累积回报。
Critic(评论家)
Critic 是价值函数 或 ,负责评估 Actor 所选动作的质量。Critic 通过时间差分(TD)学习来估计状态或动作的价值,并为 Actor 提供反馈信号。
更新过程
在每一步交互中,Agent 执行以下更新:
- Actor 根据当前状态 选择动作
- 环境返回奖励 和下一状态
- Critic 计算 TD 误差(优势函数):
其中 是折扣因子, 反映了当前动作相对于平均水平的优劣。
- Critic 更新其价值函数参数以缩小 TD 误差:
- Actor 利用 Critic 提供的 TD 误差更新策略参数:
优势与挑战
优势:
- 相比纯策略梯度方法,Critic 提供的价值估计降低了策略梯度的方差,使训练更加稳定
- 相比纯价值学习方法,Actor 直接优化策略,适用于连续动作空间
- 可以处理随机策略和确定性策略
挑战:
- Actor 和 Critic 的联合训练可能不稳定,需要精心协调学习率
- 价值函数估计可能存在偏差,影响策略更新的方向
- 在实际应用中常使用优势函数(Advantage Function) 进一步降低方差
代表性算法
基于 Actor-Critic 框架的代表算法包括 A2C(Advantage Actor-Critic)、A3C(Asynchronous Advantage Actor-Critic)、以及近年广泛使用的 PPO(Proximal Policy Optimization)和 SAC(Soft Actor-Critic)等。
链接到
- 上一个知识点:9.3 基于策略的学习
- 下一个知识点:无(本章最后一个知识点)
- 相关知识点:11.4 基于人类反馈的强化学习