强化学习—A2C

Advantage Actor-Critic(A2C)

Advantage Actor-Critic (A2C) 是强化学习中一种常用的策略优化算法,它结合了策略梯度方法价值函数逼近的优点。A2C 主要通过引入优势函数(Advantage Function)来改进传统的 Actor-Critic 方法,减少方差并提高策略更新的效率。

基本概念

Actor-Critic 方法

在 Actor-Critic 方法中,有两个主要的组件:

  • Actor(行动者):负责选择动作。Actor 根据策略(policy)(\pi_\theta(a|s)) 来决定在给定状态 (s) 下选择的动作 (a)。
  • Critic(评论者):负责评估 Actor 的动作。Critic 通过估计状态值函数 (V(s)) 或者动作值函数 (Q(s, a)) 来评估当前策略的好坏。

传统的 Actor-Critic 方法通过 Critic 提供的价值评估来指导 Actor 如何调整策略,以最大化累积奖励。

Advantage Function (优势函数)

Advantage Function (A(s, a)) 的主要目的是衡量某个动作相对于某一状态下的平均水平的好坏。它的定义为:
[
A(s, a) = Q(s, a) - V(s)
]
其中:

  • (Q(s, a)) 是状态-动作值函数,表示在状态 (s) 下执行动作 (a) 后的预期总奖励。
  • (V(s)) 是状态值函数,表示在状态 (s) 下的预期总奖励。

Advantage Function 描述了在状态 (s) 下选择动作 (a) 的相对优势。如果 (A(s, a)) 为正,说明动作 (a) 优于在状态 (s) 下的平均水平;如果为负,说明劣于平均水平。

A2C 的工作原理

A2C 通过以下步骤来更新策略:

  1. Actor 更新策略:Actor 根据 Critic 提供的 Advantage Function (A(s, a)) 来更新策略。更新的目的是增大优势较大的动作的选择概率,减小劣势动作的选择概率。更新公式为:
    [
    \theta \leftarrow \theta + \alpha \nabla_\theta \log \pi_\theta(a|s) A(s, a)
    ]
    其中,(\alpha) 是学习率。

  2. Critic 更新价值函数:Critic 更新状态值函数 (V(s)) 或者动作值函数 (Q(s, a)),以更好地评估当前策略。Critic 的更新通常采用均方误差(MSE)损失函数来最小化预测值与实际回报之间的差距。

A2C 的优点

  • 减少方差:引入 Advantage Function 后,A2C 相较于原始的 Actor-Critic 方法可以显著减少策略梯度的方差,从而使得策略更新更加稳定。
  • 同步更新:A2C 是一种同步更新的方法,这意味着多个环境中的数据可以同时被用来更新策略,从而提高学习效率。

A2C 的缺点

  • 计算资源需求高:由于 A2C 需要同步多个环境的执行结果,这可能需要更多的计算资源。
  • 稳定性问题:尽管 A2C 已经引入了 Advantage Function 以减少方差,但在某些复杂环境下,仍然可能遇到训练不稳定的情况。

总结

Advantage Actor-Critic (A2C) 是一种有效的强化学习算法,通过引入 Advantage Function 来改进传统的 Actor-Critic 方法,从而减少方差并提高策略更新的效率。在实际应用中,A2C 被广泛用于解决多种复杂的强化学习问题。

笔记

和Reinforce方法一样的结构,区别在训练网络上,Reinforce方法是A2C方法的一个特例,因为Reinforce需要记录完整的运动轨迹,而A2C方法需要记录使用的轨迹数量m是超参数可以设定。A2C方法和传统的Actor-Critic不一样,它的价值网络是状态价值V(只依赖于状态s);传统的是动作价值Q(依赖于状态s和动作a)。

策略网络(actor)和价值网络(critic)

在这里插入图片描述
在这里插入图片描述

训练过程

在这里插入图片描述

推导

两个定理

在这里插入图片描述
在这里插入图片描述

对期望作蒙特卡洛近似

在这里插入图片描述

在这里插入图片描述在这里插入图片描述

价值网络更新参数:

使用带有Baseline的随机价值梯度

g(at)是策略梯度的蒙特卡罗近似(随机梯度,随机抽样得到的), Q - V是优势函数。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述

价值网络更新参数

在这里插入图片描述在这里插入图片描述
在这里插入图片描述

优势函数的原理

在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述

A2C和Reinforce的对比

相似点

  1. 都有策略网络和价值网络。
  2. 网络结构完全一样。

不同点

  1. A2C的价值网络为Critic,用来评价actor的表现;Reinforce的价值网络是Baseline,不评价动作的好坏,用来降低随机梯度的方差加速训练。

在这里插入图片描述在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值