加入收藏 | 设为首页 | 会员中心 | 我要投稿 应用网_阳江站长网 (https://www.0662zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 创业 > 点评 > 正文

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

发布时间:2020-11-07 18:11:48 所属栏目:点评 来源:51cto
导读:在这篇综述性文章中,作者详尽地介绍了多智能强化学习的理论基础,并阐述了解决各类多智能问题的经典算法。此外,作者还以 AlphaGo、AlphaStar为例,概述了多智能体强化学习的实际应用。 近年来,随着强化学习(reinforcement learning)在多个应用领域取

在 MADDPG 中,个体维护的中心化 Q 值需要知道全局的状态信息和所有智能体的动作信息,此时假设了智能体能够通过通信或者是某种方式得知其他智能体的观测值和策略,这种假设前提过于严格。MADDPG 进一步提出了可以通过维护策略逼近函数 hat{miu}来估计其他智能体的策略,通过对其他智能体的行为建模使得维护中心化的 Q 值、考虑联合动作效应对单个个体来说是可行的。智能体 i 在逼近第 j 个智能体的策略函数时,其优化目标是令策略函数能够近似经验样本中智能体 j 的行为,同时考虑该策略的熵,可表示为:

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

除了考虑联合动作以外,MADDPG 在处理环境不稳定问题方面还使用了策略集成(policies ensemble)的技巧。由于环境中的每个智能体的策略都在迭代更新,因此很容易出现单个智能体的策略对其他智能体的策略过拟合,即当其他智能体的策略发生改变时,当前得到的最优策略不一定能很好的适应其他智能体的策略。为了缓和过拟合问题,MADDPG 提出了策略集成的思想,即对于单个智能体 i,它的策略μi 是由多个子策略μi^k 构成的集合。在一个 episode 中,只使用一种从集合中采样得到的子策略进行决策和完成交互。在学习过程中最大化的目标是所有子策略的期望回报,即

每个子策略的更新梯度为:

总的来说,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),实现多智能体系统的分布式控制。

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

图 9:左图是完全分布式的局部 Q 值网络结构,右图是 VDN 的联合动作 Q 值网络结构。考虑两个智能体,它们的联合动作 Q 值由个体的 Q1 和 Q2 求和得到,在学习时针对这个联合 Q 值进行迭代更新,而在执行时个体根据各自的 Qi 值得到自身的动作 ai。图源:[11]

VDN 对于智能体之间的关系有较强的假设,但是,这样的假设并不一定适合所有合作式多智能体问题。在 2018 年的 ICML 会议上,有研究者提出了改进的方法 QMIX。

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

QMIX 在 VDN 的基础上实现了两点改进:1)在训练过程中加入全局信息进行辅助;2)采用混合网络对单智能体的局部值函数进行合并(而不是简单的线性相加)。

在 QMIX 方法中,首先假设了全局 Q 值和局部 Q 值之间满足这样的关系:最大化全局 Q_tot 值对应的动作,是最大化各个局部 Q_a 值对应动作的组合,即

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

(编辑:应用网_阳江站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

推荐文章
    热点阅读