优势演员-评论家算法 A2C

  • 优势演员-评论家算法 A2C
  • 主要思想
  • 目标函数



 


优势演员-评论家算法 A2C

前置知识:演员-评论家算法:多智能体强化学习核心框架

主要思想

AC 网络结构:

  1. 策略网络 - 演员: 这个网络负责根据当前的状态选择动作。它输出的是给定状态下每个动作的概率。
  2. 价值网络 - 评论家: 用于估计当前策略下,一个状态或状态-动作对的期望回报。
  • Q 网络: 估计在给定状态和动作下的期望回报。
  • V 网络: 估计在给定状态下的期望回报。

演员-评论家算法有 3 个网络(策略网络、价值函数-Q网络和V网络),我们最终目的不是计算 Q网络和V网络 的具体数值,而是差异(也就是优势网络A)。

因为演员-评论家算法用俩个不同的网络(Q网络和V网络)去,估计价值函数,反而会增大误差。

优势函数作用:

  • 优势函数 A(s, a) = Q(s, a) - V(s): 这个函数衡量的是在给定状态下,选择某个特定动作相对于平均动作的相对优势。

优势函数的目的并不是要精确计算 Q 和 V 的具体值,而是要找出哪些动作比平均动作好,哪些比平均动作差。

  • 当使用两个独立的网络来估计 Q 值和 V 值时,确实可能会增加估计的不确定性或误差,因为每个网络都有其独立的误差。
  • 然而,计算优势函数的关键在于找出相对优势。即使 Q 和 V 的绝对估计值不是完美准确的,它们的差值(即 A(s, a))仍然可以有效地指导策略网络进行更好的动作选择。
  • 优势函数的使用有助于减少方差,并且能够更加明确地指示策略网络应该如何改进,从而提高学习的效率和稳定性。

优势演员-评论家算法 通过分离策略和价值估计,并引入优势函数,提供更精细的价值估计,以及减少学习过程中的不稳定性。

就像练习投篮,你只能觉知到自己的投篮是偏左还是偏右了。

但那些高手的觉知更精细,他们会觉知到自己的手指(尤其是食指)的状态。

更别提膝盖、腰、肩膀、手肘等一系列对投篮都有影响的部位了。

你投篮几年了还是很低的命中率,因为你缺乏觉知的意识。

你偶尔怀疑自己为什么偷懒不准也找不到原因,只能感叹手感不好。

其实就是想要觉知而无法施展出来;即使你花时间去练习自己的投篮也往往效果不佳,因为你的觉知不精细。

而那些投篮高手,因为更精细,他们的刻意练习会让他们突飞猛进。

目标函数

  • 演员-评论家算法AC 的目标函数基于价值函数(比如状态价值函数 V)来评估动作。
  • A2C 改进了这个目标函数,引入了优势函数 优势演员-评论家算法 A2C_强化学习,其中 Q 是动作价值函数,V 是状态价值函数。这样的改变减少了方差,提高了学习稳定性。

数学表达:

  • 优势演员-评论家算法 A2C_强化学习_02

作者把 Q 变成了 当前的即时奖励 优势演员-评论家算法 A2C_方差_03 加上在下一个状态 优势演员-评论家算法 A2C_算法_04

  • 优势演员-评论家算法 A2C_方差_05

把 2 式代入 1 式:

  • 优势演员-评论家算法 A2C_算法_06

A2C 这个公式突出优势函数的形式,演员的更新不是基于动作价值(优势演员-评论家算法 A2C_强化学习_07),只使用 V 网络,解决了 AC 算法的问题。

 


优势演员-评论家算法 A2C_精确计算_08