文章目录
- 前言
- 1、Multi-Agent Policy Gradient Theorem
- 2、Centralised State-Value Critics
- 2、Centralised Action-Value Critics
前言
Independent learning算法当中每个智能体看待其他智能体为环境的一部分,加剧了环境非平稳性,而CTDE框架的算法能够降低环境的非平稳性,本文记录如何将CTDE框架应用到策略梯度算法当中
1、Multi-Agent Policy Gradient Theorem
单智能体策略梯度算法的基础是策略梯度理论,定义了多种更新策略参数的规则,参数化策略的梯度质量由期望回报决定,形式化如下:
在MARL设定环境当中,根据梯度理论得到多智能体策略梯度理论,智能体i对应其他智能体的策略梯度如下:
在独立学习算法当中已经存在一些多智能体策略梯度的算法,在这些算法当中,智能体i的期望回报由Q函数评估,而Q函数只与智能体i自身的观测与动作有关;而CTDE框架中,期望回报的评估由中心化的信息(全局信息)决定,也就是通过环境的全部信息与所有智能体的动作评估价值函数进而采用策略梯度进行更新
2、Centralised State-Value Critics
为了在CTDE框架下应用AC算法,因此需要考虑actor和critic网络,actor网络被定义为 π ( h i t ; ϕ i ) \pi(h_{i}^{t};\phi_{i}) π(hit;ϕi),actor网络只需要局部观测历史去选择相应的动作,因此能够做到去中心化执行,然而critic网络定义为 V ( s t ; θ i ) V(s^{t};\theta_{i}) V(st;θi),在训练期间利用全局信息来近似智能体i的价值函数,在执行阶段critic网络则被抛弃
==优势:==网络能够利用全局的状态,利用了更多的环境与其他智能体的信息,在局部可观测的环境当中,应用联合历史观测序列近似全局的环境信息,降低非平稳性的影响
2、Centralised Action-Value Critics
上述Centralised State-Value Critics网络是基于状态价值函数进行评估的算法,因此能否采用Action-Value函数进行代替,动作价值函数不仅仅与当前状态的价值函数评估有关,同时与智能体的动作有关
为了训练一个中心化的动作价值函数的Critic网络应用到多智能体AC算法当中,首先每个智能体i根据自身的局部观测历史训练出策略网络(actor),对于critic网络,每个智能体i使用全部状态信息与所有智能体的动作训练 Q i Q_i Qi网络,如果全局信息不可观测,则采用联合观测历史序列代替,训练中心critic网络的损失函数如下:
actor网络的策略损失函数如下:
==问题:==为什么不采用类似于DQN的算法训练action-value critic
在多智能体策略梯度理论要求评估当前策略下所有智能体的期望回报,而DQN算法应用经验回收池中的经验进行训练,这些经验并不能反应当前策略下的数据分布,因此DQN直接训练critic网络近似最优回报,而非当前策略下的期望回报