AlphaGo原来是这样运行的,一文详解多智能体强化学习( 六 )


每个子策略的更新梯度为:
总的来说 , MADDPG 的核心是在 DDPG 算法的基础上 , 对每个智能体使用全局的 Q 值来更新局部的策略 , 该方法在完全合作、完全竞争和混合关系的问题中都能取得较好效果 。 算法流程如下所示:
AlphaGo原来是这样运行的,一文详解多智能体强化学习
本文插图
图 7:MADDPG 算法流程 。 图源:[9]
2. 反事实多智能体策略梯度法方法(Counterfactual Multi-Agent Policy Gradients, COMA)
AlphaGo原来是这样运行的,一文详解多智能体强化学习
本文插图
在合作式的多智能体学习问题中 , 每个智能体共享奖励(即在同一个时刻获得相同的奖励) , 此时会存在一个 “置信分配” 问题(credit assignment):如何去评估每个智能体对这个共享奖励的贡献?
COMA 方法在置信分配中利用了一种反事实基线:将智能体当前的动作和默认的动作进行比较 , 如果当前动作能够获得的回报高于默认动作 , 则说明当前动作提供了好的贡献 , 反之则说明当前动作提供了坏的贡献;默认动作的回报 , 则通过当前策略的平均效果来提供(即为反事实基线) 。 在对某个智能体和基线进行比较的时 , 需要固定其他智能体的动作 。 当前策略的平均效果和优势函数的定义如下:
AlphaGo原来是这样运行的,一文详解多智能体强化学习
本文插图

AlphaGo原来是这样运行的,一文详解多智能体强化学习
本文插图
COMA 方法结合了集中式训练、分布式执行的思想:分布式的个体策略以局部观测值为输入、输出个体的动作;中心化的 critic 使用特殊的网络结构来输出优势函数值 。
具体地 , critic 网络的输入包括了全局状态信息 s、个体的局部观测信息 o、个体的编号 a 以及其他智能体的动作 , 首先输出当前智能体不同动作所对应的联合 Q 值 。 然后 ,再经过 COMA 模块 , 使用输入其中的智能体当前策略和动作 , 计算反事实基线以及输出最终的优势函数 。
AlphaGo原来是这样运行的,一文详解多智能体强化学习
本文插图
图 8:(a) COMA 方法中的 actor-critic 框架图 , (b) actor 的网络结构 , (c) critic 的网络结构(包含了核心的 COMA 模块来提供优势函数值) 。 图源:[10]
2.2 value-based 的方法
在前面提到的 policy-based 方法中 , 中心化的值函数是直接使用全局信息进行建模 , 没有考虑个体的特点 。 在多智能体系统是由大规模的多个个体构成时 , 这样的值函数是难以学习或者是训练到收敛的 , 很难推导出理想的策略 。 并且仅依靠局部观测值 , 无法判断当前奖励是由于自身的行为还是环境中其他队友的行为而获得的 。
AlphaGo原来是这样运行的,一文详解多智能体强化学习
本文插图
值分解网络(value decomposition networks, VDN)由 DeepMind 团队在 2018 年提出 , 该方法的核心是将全局的 Q(s,a)值分解为各个局部 Qi(si,ai)的加权和 , 每个智能体拥有各自的局部值函数 。
AlphaGo原来是这样运行的,一文详解多智能体强化学习
本文插图
这样的分解方式 , 在联合动作 Q 值的结构组成方面考虑了个体行为的特性 , 使得该 Q 值更易于学习 。 另一方面 , 它也能够适配集中式的训练方式 , 在一定程度上能够克服多智能体系统中环境不稳定的问题 。 在训练过程中 , 通过联合动作 Q 值来指导策略的优化 , 同时个体从全局 Q 值中提取局部的 Qi 值来完成各自的决策(如贪心策略 ai=argmax Qi) , 实现多智能体系统的分布式控制 。


推荐阅读