"); //-->
2. 反事实多智能体策略梯度法方法(Counterfactual Multi-Agent Policy Gradients, COMA)
在合作式的多智能体学习问题中,每个智能体共享奖励(即在同一个时刻获得相同的奖励),此时会存在一个 “置信分配” 问题(credit assignment):如何去评估每个智能体对这个共享奖励的贡献?
COMA 方法在置信分配中利用了一种反事实基线:将智能体当前的动作和默认的动作进行比较,如果当前动作能够获得的回报高于默认动作,则说明当前动作提供了好的贡献,反之则说明当前动作提供了坏的贡献;默认动作的回报,则通过当前策略的平均效果来提供(即为反事实基线)。在对某个智能体和基线进行比较的时,需要固定其他智能体的动作。当前策略的平均效果和优势函数的定义如下:
COMA 方法结合了集中式训练、分布式执行的思想:分布式的个体策略以局部观测值为输入、输出个体的动作;中心化的 critic 使用特殊的网络结构来输出优势函数值。
具体地,critic 网络的输入包括了全局状态信息 s、个体的局部观测信息 o、个体的编号 a 以及其他智能体的动作,首先输出当前智能体不同动作所对应的联合 Q 值。然后, 再经过 COMA 模块,使用输入其中的智能体当前策略和动作,计算反事实基线以及输出最终的优势函数。
图 8:(a) COMA 方法中的 actor-critic 框架图,(b) actor 的网络结构,(c) critic 的网络结构(包含了核心的 COMA 模块来提供优势函数值)。图源:[10]
2.2 value-based 的方法
在前面提到的 policy-based 方法中,中心化的值函数是直接使用全局信息进行建模,没有考虑个体的特点。在多智能体系统是由大规模的多个个体构成时,这样的值函数是难以学习或者是训练到收敛的,很难推导出理想的策略。并且仅依靠局部观测值,无法判断当前奖励是由于自身的行为还是环境中其他队友的行为而获得的。
值分解网络(value decomposition networks, VDN)由 DeepMind 团队在 2018 年提出,该方法的核心是将全局的 Q(s,a)值分解为各个局部 Qi(si,ai)的加权和,每个智能体拥有各自的局部值函数。
这样的分解方式,在联合动作 Q 值的结构组成方面考虑了个体行为的特性,使得该 Q 值更易于学习。另一方面,它也能够适配集中式的训练方式,在一定程度上能够克服多智能体系统中环境不稳定的问题。在训练过程中,通过联合动作 Q 值来指导策略的优化,同时个体从全局 Q 值中提取局部的 Qi 值来完成各自的决策(如贪心策略 ai=argmax Qi),实现多智能体系统的分布式控制。
图 9:左图是完全分布式的局部 Q 值网络结构,右图是 VDN 的联合动作 Q 值网络结构。考虑两个智能体,它们的联合动作 Q 值由个体的 Q1 和 Q2 求和得到,在学习时针对这个联合 Q 值进行迭代更新,而在执行时个体根据各自的 Qi 值得到自身的动作 ai。图源:[11]
VDN 对于智能体之间的关系有较强的假设,但是,这样的假设并不一定适合所有合作式多智能体问题。在 2018 年的 ICML 会议上,有研究者提出了改进的方法 QMIX。
QMIX 在 VDN 的基础上实现了两点改进:1)在训练过程中加入全局信息进行辅助;2)采用混合网络对单智能体的局部值函数进行合并(而不是简单的线性相加)。
在 QMIX 方法中,首先假设了全局 Q 值和局部 Q 值之间满足这样的关系:最大化全局 Q_tot 值对应的动作,是最大化各个局部 Q_a 值对应动作的组合,即
在这样的约束条件下,既能够使用集中式的学习方法来处理环境不稳定性问题以及考虑多智能体的联合动作效应(全局 Q 值的学习),又能够从中提取出个体策略实现分布式的控制(基于局部 Q 值的行为选择)。进一步地,该约束条件可转化为全局 Q 值和局部 Q 值之间的单调性约束关系:
令全局 Q 值和局部 Q 值之间满足该约束关系的函数表达式有多种,VDN 方法的加权求和就是其中一种,但简单的线性求和并没有充分考虑到不同个体的特性,对全体行为和局部行为之间的关系的描述有一定的局限性。QMIX 采用了一个混合网络模块(mixing network)作为整合 Qa 生成 Q_tot 的函数表达式,它能够满足上述的单调性约束。
图 10:QMIX 网络结构。图源:[12]
在 QMIX 方法设计的网络结构中,每个智能体都拥有一个 DRQN 网络(绿色块),该网络以个体的观测值作为输入,使用循环神经网络来保留和利用历史信息,输出个体的局部 Qi 值。
所有个体的局部 Qi 值输入混合网络模块(蓝色块),在该模块中,各层的权值是利用一个超网络(hypernetwork)以及绝对值计算产生的:绝对值计算保证了权值是非负的、使得局部 Q 值的整合满足单调性约束;利用全局状态 s 经过超网络来产生权值,能够更加充分和灵活地利用全局信息来估计联合动作的 Q 值,在一定程度上有助于全局 Q 值的学习和收敛。
结合 DQN 的思想,以 Q_tot 作为迭代更新的目标,在每次迭代中根据 Q_tot 来选择各个智能体的动作,有:
最终学习收敛到最优的 Q_tot 并推出对应的策略,即为 QMIX 方法的整个学习流程。
3. 多智能体强化学习的应用
3.1. 游戏应用
1、分步对抗游戏
这类游戏包括了围棋、国际象棋、****牌等,MARL 在这几种游戏中都有相关的研究进展并取得了不错的成果。其中,著名的 AlphaGo 通过在和人类对战的围棋比赛中取得的惊人成绩而进入人们的视野。围棋是一种双玩家零和随机博弈,在每个时刻,玩家都能够获取整个棋局。它一种涉及超大状态空间的回合制游戏,很难直接使用传统的 RL 方法或者是搜索方法。AlphaGo 结合了深度学习和强化学习的方法:
针对巨大状态空间的问题,使用网络结构 CNN 来提取和表示状态信息;
在训练的第一个阶段,使用人类玩家的数据进行有监督训练,得到预训练的网络;
在训练的第二个阶段,通过强化学习方法和自我博弈进一步更新网络;
在实际参与游戏时,结合价值网络(value network)和策略网络(policy network),使用 蒙特卡洛树搜索(MCTS)方法得到真正执行的动作。
图 11:AlphaGo 在 2016 年击败人类玩家。图源:https://rlss.inria.fr/files/2019/07/RLSS_Multiagent.pdf
2、实时战略游戏
MARL 的另一种重要的游戏应用领域,是实时战略游戏,包括星际争霸,DOTA,王者荣耀,吃鸡等。该类游戏相比于前面提到的国际象棋、围棋等回合制类型的游戏,游戏 AI 训练的难度更大,不仅因为游戏时长过长、对于未来预期回报的估计涉及到的步数更多,还包括了多方同时参与游戏时造成的复杂空间维度增大,在一些游戏设定中可能无法获取完整的信息以及全局的形势(比如在星际争霸中,不知道迷雾区域是否有敌方的军队),在考虑队内合作的同时也要考虑对外的竞争。
OpenAI Five 是 OpenAI 团队针对 Dota 2 研发的一个游戏 AI [13],智能体的策略的学习没有使用人类玩家的数据、是从零开始的(learn from scratch)。考虑游戏中队内英雄的协作,基于每个英雄的分布式控制方式(即每个英雄都有各自的决策网络模型),在训练过程中,通过一个超参数 “team spirit” 对每个英雄加权、控制团队合作,并且使用基于团队整体行为的奖励机制来引导队内合作。考虑和其他团队的对抗,在训练过程中使用自我对抗的方式(也称为虚拟自我博弈,fictitious self-play, FSP)来提升策略应对复杂环境或者是复杂对抗形势的能力。这种自我对抗的训练方式,早在 2017 年 OpenAI 就基于 Dota2 进行了相关的研究和分析,并发现智能体能够自主地学习掌握到一些复杂的技能;应用在群体对抗中,能够提升团队策略整体对抗的能力。
AlphaStar 是 OpenAI 团队另一个针对星际争霸 2(Starcraft II)研发的游戏 AI,其中在处理多智能体博弈问题的时候,再次利用了 self-play 的思想并进一步改进,提出了一种联盟利用探索的学习方式(league exploiter discovery)。使用多类个体来建立一个联盟(league),这些个体包括主智能体(main agents)、主利用者(main exploiters)、联盟利用者(league exploiters)和历史玩家(past players)四类。这几类智能体的策略会被保存(相当于构建了一个策略池),在该联盟内各类智能体按照一定的匹配规则与策略池中的其他类智能体的策略进行对抗,能够利用之前学会的有效信息并且不断增强策略的能力,解决普通的自我博弈方法所带有的 “循环学习” 问题(“Chasing its tail”)。
图 12:联盟利用者探索(league exploiter discovery)的学习框架。图源:[14]
3.2. 多机器人避碰
在现实生活中,多机器人的应用场景主要是通过多个机器人的协作来提升系统的性能和效率,此时多智能体强化学习的关注重点主要在于机器人(智能体)之间的合作。
在移动机器人方面,自主避障导航是底层应用的关键技术,近几年通过强化学习的方法来学习单机器人导航策略这方面的工作成果比较多;而当环境中存在多个移动机器人同时向各自目标点移动的时候,需要进一步考虑机器人之间的相互避碰问题,这也是 MARL 在多机器人导航(multi-robot navigation)领域的主要研究问题。Jia Pan 教授团队 [13] 在控制多机器人避碰导航问题上使用了集中式学习和分布式执行的机制,在学习过程中机器人之间共享奖励、策略网络和值函数网络,通过共享的经验样本来引导相互之间达成隐式的协作机制。
图 13:多机器人向各自目标点移动过程中的相互避碰。仓库物件分发是该问题的常见场景,多个物流机器人在向各自指定的目标点移动过程当中,需要避免和仓库中的其他物流机器人发生碰撞。图源:[15]
另外,不仅有机器人和机器人之间的避碰问题,有一些工作还考虑到了机器人和人之间的避碰问题,如 SA-CADRL(socially aware collision avoidance deep reinforcement learning) 。根据该导航任务的具体设定(即机器人处在人流密集的场景中),在策略训练是引入一些人类社会的规则(socially rule),相当于要让机器人的策略学习到前面 1.2.3 部分提到显式的协调机制,达成机器人与人的行为之间的协作。
图 14:左图展示了相互避碰时的两种对称规则,上面为左手规则,下面为右手规则。右图是在 SA-CADRL 方法中模型引入这样的对称性信息,第一层中的红色段表示当前智能体的观测值,蓝色块表示它考虑的附近三个智能体的观测值,权重矩阵的对称性是考虑了智能体之间遵循一定规则的对称行为。图源:[16]
4. 总结
多智能体强化学习(MARL)是结合了强化学习和多智能体学习这两个领域的重要研究方向,关注的是多个智能体的序贯决策问题。本篇文章主要基于智能体之间的关系类型,包括完全合作式、完全竞争式和混合关系式,对多智能体强化学习的理论和算法展开介绍,并在应用方面列举了一些相关的研究工作。在未来,对 MARL 方面的研究(包括理论层面和应用层面)仍然需要解决较多的问题,包括理论体系的补充和完善、方法的可复现性、模型参数的训练和计算量、模型的安全性和鲁棒性等 [15]。
参考文献:
[1] Sutton R S, Barto A G. Reinforcement learning: An introduction[M]. MIT press, 2018.
[2] Zhang K , Yang Z , Baar T . Multi-Agent Reinforcement Learning: A Selective Overview of Theories and Algorithms[J]. 2019.
[3] L. Busoniu, R. Babuska, and B. De Schutter, “A comprehensive survey of multi-agent reinforcement learning,” IEEE Transactions on Systems, Man, and Cybernetics, Part C: Applications and Reviews, vol. 38, no. 2, pp. 156–172, Mar. 2008.
[4] Littman M L. Markov games as a framework for multi-agent reinforcement learning[C]. international conference on machine learning, 1994: 157-163.
[5] Hu J, Wellman M P. Nash Q-learning for general-sum stochastic games[J]. Journal of machine learning research, 2003, 4(Nov): 1039-1069.
[6] Caroline Claus and Craig Boutilier. The dynamics of reinforcement learning in cooperative multiagent systems. In Proceedings of the Fifteenth National Conference on Artificial Intelligence, pp. 746–752, 1998.
[7] S. Kapetanakis and D. Kudenko. Reinforcement learning of coordination in cooperative multi-agent systems. American Association for Artificial Intelligence, pp. 326-331, 2002.
[8] Yang Y, Luo R, Li M, et al. Mean Field Multi-Agent Reinforcement Learning[C]. international conference on machine learning, 2018: 5567-5576
[9] Lowe R, Wu Y, Tamar A, et al. Multi-Agent Actor-Critic for Mixed Cooperative-Competitive Environments[C]. neural information processing systems, 2017: 6379-6390.
[10] Foerster J, Farquhar G, Afouras T, et al. Counterfactual Multi-Agent Policy Gradients[J]. arXiv: Artificial Intelligence, 2017.
[11] Sunehag P, Lever G, Gruslys A, et al. Value-Decomposition Networks For Cooperative Multi-Agent Learning.[J]. arXiv: Artificial Intelligence, 2017.
[12] Rashid T, Samvelyan M, De Witt C S, et al. QMIX: Monotonic Value Function Factorisation for Deep Multi-Agent Reinforcement Learning[J]. arXiv: Learning, 2018.
[13] OpenAI Five, OpenAI, https://blog.openai.com/openai-five/, 2018.
[14] Vinyals, O., Babuschkin, I., Czarnecki, W.M. et al. Grandmaster level in StarCraft II using multi-agent reinforcement learning. Nature 575, 350–354 (2019).
[15] P. Long, T. Fan, X. Liao, W. Liu, H. Zhang and J. Pan, "Towards Optimally Decentralized Multi-Robot Collision Avoidance via Deep Reinforcement Learning," 2018 IEEE International Conference on Robotics and Automation (ICRA), Brisbane, QLD, 2018, pp. 6252-6259, doi: 10.1109/ICRA.2018.8461113.
[16] Y. F. Chen, M. Everett, M. Liu and J. P. How, "Socially aware motion planning with deep reinforcement learning," 2017 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Vancouver, BC, 2017, pp. 1343-1350, doi: 10.1109/IROS.2017.8202312.
[17] Hernandez-Leal P , Kartal B , Taylor M E . A survey and critique of multiagent deep reinforcement learning[J]. Autonomous Agents & Multi Agent Systems, 2019(2).
分析师介绍:
杨旭韵,工程硕士,主要研究方向是强化学习、模仿学习以及元学习。现从事工业机器人相关的技术研究工作,主要负责机器学习算法落地应用的工作。
*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。