0 Preliminaries

在多智能体强化学习算法中,两个主要的技术指标为合理性与收敛性。

  1. 合理性(rationality):在对手使用一个恒定策略的情况下,当前智能体能够学习并收敛到一个相对于对手策略的最优策略。

  2. 收敛性(convergence):在其他智能体也使用学习算法时,当前智能体能够学习并收敛到一个稳定的策略。通常情况下,收敛性针对系统中的所有的智能体使用相同的学习算法。

Q:为什么不能直接将单智能体强化学习算法直接移植到多智能体环境中?

A: 在多智能体环境中,每个 agent 的策略在训练的过程中都是不断变化的,这导致对每个 agent 来说,环境都是不稳定的,而在这种不稳定的环境中学习到的策略是毫无意义的。所以对于 Q-learning 这类方法,经验回放的方法(experience replay)是完全失效的。而对于 policy gradient 方法来说,随着 agent 数量增加,环境复杂度也增加,这就导致通过采样来估计梯度的优化方式,方差急剧增加。

1 完全竞争环境的MARL

1.1 Minimax-Q

Minimax-Q 主要应用于 二人零和随机博弈 中。

Minimax 算法

求解二人零和博弈的公式如下:
max⁡πimin⁡a−i∈A−i∑ai∈AiQi∗(ai,a−1)πi(ai)\max _{\pi_{i}} \min _{a_{-i} \in A_{-i}} \sum_{a_{i} \in A_{i}} Q_{i}^{*}\left(a_{i}, a_{-1}\right) \pi_{i}\left(a_{i}\right) πi​max​a−i​∈A−i​min​ai​∈Ai​∑​Qi∗​(ai​,a−1​)πi​(ai​)
即,每个智能体最大化在与对手博弈中最差情况下的期望奖励值。可构建线性规划来求解每个特定状态的阶段博弈的纳什均衡策略。

所以这里 Minimax-Q 的 Minimax 指的是 Minimax 算法,而 Q 指的是借用 Q-learning 中的 TD 来迭代学习状态值函数或动作-状态值函数。

Minimax-Q 的优化目标:
Vi∗(s)=max⁡πi(s,⋅)min⁡a−i∈A−i∑ai∈AiQi∗(s,ai,a−i)πi(s,ai),i=1,2V_{i}^{*}(s)=\max _{\pi_{i}(s, \cdot)} \min _{a_{-i} \in A_{-i}} \sum_{a_{i} \in A_{i}} Q_{i}^{*}\left(s, a_{i}, a_{-i}\right) \pi_{i}\left(s, a_{i}\right), \ \ \ \ \ i=1,2 Vi∗​(s)=πi​(s,⋅)max​a−i​∈A−i​min​ai​∈Ai​∑​Qi∗​(s,ai​,a−i​)πi​(s,ai​),     i=1,2
缺点:

  • 线性规划的求解使得学习速度较慢;
  • Minimax-Q 算法能够找到多智能体强化学习的纳什均衡策略。但是假设对手使用的不是纳什均衡策略,而是一个较差的策略,则该算法无法让智能体根据对手的策略来调节优化自己的策略,而只能找到随机博弈的纳什均衡策略。这是由于 Minimax-Q 算法是一个 对手独立算法(opponent-independent algorithm),不论对手策略是怎么样的,都收敛到该博弈的纳什均衡策略。就算对手采用一个非常弱的策略,当前智能体也不能学习到一个比纳什均衡策略更好的策略。

2 完全合作环境的MARL

2.1 MAPPO

The Surprising Effectiveness of PPO in Cooperative, Multi-Agent Games

https://arxiv.org/pdf/2103.01955.pdf

MAPPO 算法的基本思想是 中心式训练,分散式执行(Centealized Training and Decentralized Execution, CTDE)。

先回顾一下 PPO 算法。PPO 是一个经典的 on-policy 算法,从 TRPO 改进而来。从实现上来讲,它采用的是经典的 actor-critic 架构,actor 负责接收局部观测,并输出动作,critic 负责评估在当前状态下做出该动作的好坏。MAPPO 同样也采用 actor-critic 架构,不同之处在于这里的 critic 学的是一个 中心价值函数(Centralized Value Function),即此时 critic 能够观测到全局信息,包括其他 agent 的信息和环境的信息。

2.2 COMA

Counterfactual Multi-Agent Policy Gradients

https://arxiv.org/pdf/1705.08926v1.pdf

COMA 算法的基本思想是 中心式训练,分散式执行(Centealized Training and Decentralized Execution, CTDE)。

作者提出集中训练的方法大致可以分为 在智能体之间传递梯度 以及 参数共享,这两种方法均没有在训练过程中利用额外的信息,相反,COMA在训练过程中会使用一个集中式的 critic 网络,但依然可以实现分布式执行。同时本文提出大多多智能体的工作都假设智能体之间完全协作,共用同一奖励,导致单个智能体难以推断自己对于团队成功的贡献,这就是所谓的多智能体 信用分配(credit assignment) 问题,为此,本文通过利用一个 反事实基准(counter-factual baseline) 来区分不同智能体对系统奖励的贡献。

COMA 的三个主要创新点:

  1. 采用了集中式的 critic;
  2. 使用了反事实基准;
  3. 利用 critic 表征对基准进行高效估计

2.2 VDN

Value-Decomposition Networks For Cooperative Multi-Agent Learning

https://arxiv.org/pdf/1706.05296.pdf

智能体共享团队奖励会带来“credit assignment (信用分配)” 问题,即利用该团队奖励拟合出的值函数不能评价每个智能体的策略对整体的贡献。在这篇文章中,同样存在这样的问题。同时,由于每个智能体都是局部观测,那么对其中一个智能体来说,其获得的团队奖励很有可能是其队友的行为导致的。也就是说该奖励值对该智能体来说,是“虚假奖励 (spurious reward signals)”。因此,每个智能体独立使用强化学习算法学习 (即 Independent RL) 往往效果很差。这种虚假奖励还会伴随一种现象,作者称作 “lazy agent (惰性智能体)”。当团队中的部分智能体学习到了比较好的策略并且能够完成任务时,其它智能体不需要做什么也能获得不错的团队奖励,这些智能体就被称作“惰性智能体”。

为了能够解决上述问题,作者提出了 “值函数分解(Value-Decomposition)” 的研究思路,将团队整体的值函数分解成 N 个子值函数,分别作为各智能体执行动作的依据。

2.3 QMIX

QMIX: Monotonic Value Function Factorisation for Deep Multi-Agent Reinforcement Learning

https://arxiv.org/pdf/1803.11485.pdf

和 VDN 类似,QMIX 也是一种基于价值的方法,可以以集中的端到端方式训练分散策略。QMIX 采用了一个网络,将联合动作值估计为每个智能体值的复杂非线性组合(VDN是线性加和),且仅基于局部观测。并且在结构上施加约束,使联合动作值函数与每个智能体动作值函数之间是单调的,保证集中策略和分散策略之间的一致性。

3 合作-竞争混合型环境的MARL

3.1 MADDPG

Multi-Agent Actor-Critic for Mixed Cooperative-Competitive Environments

https://arxiv.org/pdf/1706.02275.pdf

MADDPG 算法的基本思想是 中心式训练,分散式执行(Centealized Training and Decentralized Execution, CTDE)。

在 MADDPG 中,一个重要的前提是:当我们知道所有 agent 的动作时,无论策略如何变化,我们的环境都是稳定的

MADDPG 算法具有以下三点特征:

  1. 通过学习得到的最优策略,在应用时只利用局部信息就能给出最优动作。
  2. 不需要知道环境的动力学模型以及特殊的通信需求。
  3. 该算法不仅能用于合作环境,也能用于竞争环境。

MADDPG 本质上还是一个 DPG 算法,针对每个智能体训练一个需要全局信息的 Critic 以及一个需要局部信息的 Actor,并且允许每个智能体有自己的奖励函数(reward function),因此可以用于合作任务或对抗任务。并且由于脱胎于DPG算法,因此动作空间可以是连续的。

3.2 Nash Q-Learning

Nash Q-Learning 是将 Minimax-Q 从 二人零和博弈 扩展到 多人一般和博弈 的算法。

Nash Q-Learning 在 合作性均衡对抗性均衡 的环境中能够收敛到纳什均衡点,其收敛性条件是,在每一个状态的阶段博弈中,都能够找到一个全局最优点或者鞍点,只有满足这个条件,Nash Q-Learning 算法才能够收敛。

3.3 Independent Q-learning

Multi-Agent Cooperation and Competition with Deep Reinforcement Learning

https://arxiv.org/pdf/1511.08779.pdf

IQL(Independent Q-learning)的思想简单粗暴,不用全局价值,仅使用单个 agent 的价值学习

IQL 将其余智能体直接看作环境的一部分,也就是对于每个智能体都是在解决一个单智能体任务,很显然,由于环境中存在智能体,因此环境是一个非稳态的,这样就无法保证收敛性了,并且智能体会很容易陷入无止境的探索中,但是在工程实践上,效果还是比较可以的。

Reference

  1. https://zhuanlan.zhihu.com/p/53811876

  2. https://blog.csdn.net/qq_37395293/article/details/115402486

  3. https://blog.csdn.net/qq_39388410/article/details/102767534?utm_medium=distribute.pc_relevant.none-task-blog-2defaultbaidujs_title~default-1.pc_relevant_paycolumn_v3&spm=1001.2101.3001.4242.2&utm_relevant_index=4

  4. https://zhuanlan.zhihu.com/p/53563792

【深度强化学习】多智能体算法汇总相关推荐

  1. AI 大战 AI,一个深度强化学习多智能体竞赛系统

    小伙伴们快看过来!这是一款全新打造的 ⚔️ AI vs. AI ⚔️--深度强化学习多智能体竞赛系统. 这个工具托管在 Space 上,允许我们创建多智能体竞赛.它包含三个元素: 一个带匹配算法的 S ...

  2. DeepMind 综述深度强化学习:智能体和人类相似度竟然如此高!

    来源:AI科技评论 近年来,深度强化学习(Deep reinforcement learning)方法在人工智能方面取得了瞩目的成就,从 Atari 游戏.到围棋.再到无限制扑克等领域,AI 的表现都 ...

  3. Github 1300+ 星!旷视开源的深度强化学习绘画智能体论文解读

    借助于强化学习,AI也能画画了.上图为旷视提出的绘画机器人画故宫的过程. 本文中旷视研究院介绍了团队在机器仿人类绘画方面的最新研究,方法在四个大型数据集上表现优异.通过结合深度强化学习方法和神经网络渲 ...

  4. 赠票 | 深度强化学习的理论、算法与应用专题探索班

    文末有数据派赠票福利呦! 深度强化学习是人工智能领域的一个新的研究热点.它以一种通用的形式将深度学习的感知能力与强化学习的决策能力相结合,并能够通过端对端的学习方式实现从原始输入到输出的直接控制.自提 ...

  5. 深度强化学习在智能城市领域应用介绍

    来源:海豚数据科学实验室 深度强化学习是近年来热起来的一项技术.深度强化学习的控制与决策流程必须包含状态,动作,奖励是三要素.在建模过程中,智能体根据环境的当前状态信息输出动作作用于环境,然后接收到下 ...

  6. 线下报名 | YOCSEF TDS:深度强化学习的理论、算法与应用

    时间:7月29日9:00-17:20 地点:北京中科院计算所,一层/四层报告厅(暂定) 报名方式:1.报名链接:http://conf2.ccf.org.cn/TDS  2.点击文末阅读原文报名  3 ...

  7. 基于深度强化学习的智能船舶航迹跟踪控制

    基于深度强化学习的智能船舶航迹跟踪控制 人工智能技术与咨询 昨天 本文来自<中国舰船研究> ,作者祝亢等 关注微信公众号:人工智能技术与咨询.了解更多咨询! 0.   引 言 目前,国内外 ...

  8. 基于深度强化学习的智能汽车决策模型

    1.基于深度强化学习的智能汽车决策模型 以神经网络为核心的智能体最主要的优势在于其依靠大量的数据自主学习的能力,通过数据驱动智能体可以应对各种未经历过的复杂环境.强化学习是一种经典的智能系统设计方案, ...

  9. 深度强化学习系列(14): A3C算法原理及Tensorflow实现

    在DQN.DDPG算法中均用到了一个非常重要的思想经验回放,而使用经验回放的一个重要原因就是打乱数据之间的相关性,使得强化学习的序列满足独立同分布. 本文首先从Google于ICML2016顶会上发的 ...

  10. 强化学习—— 多智能体强化学习

    强化学习-- 多智能体强化学习 1. 多智能体关系分类 1.1 合作关系(Fully Cooperative) 1.2 竞争关系(Fully Competitive) 1.3 混合关系(Mixed C ...

最新文章

  1. 读文献先读图——主成分分析 PCA 图
  2. linux网络配置答案,Linux网络配置与管理作业3答案.doc
  3. 【机器学习入门到精通系列】SVM与核函数(附程序模拟!)
  4. Oracle数据库实例的创建、删除、修改
  5. 大学生计算机等级考试c 语言程序设计,计算机等级考试c语言程序设计习题大学论文.doc...
  6. VTK:图表之SelectedVerticesAndEdgesObserver
  7. 新的Java缓存标准(javax.cache)
  8. 解决安卓项目显示cannot resolve symbol 'R'
  9. 作者:李海生(1974-),男,博士,食品安全大数据技术北京市重点实验室、北京工商大学计算机与信息工程学院教授、研究生导师...
  10. 后缀表达式----栈
  11. python怎么用matplotlib_python-无法在我的程序中使用matplotlib函数
  12. android+键盘键值修改器,键盘按键修改器
  13. JVM 垃圾回收机制主要原理
  14. 计算机上的win键是什么意思,win是电脑上哪个键
  15. oracle 提取重复数据,oracle里面查询重复数据的方法
  16. C语言记录按键次数,【视频】C语言实现键盘记录【c语言吧】_百度贴吧
  17. java内部类的四大作用
  18. web 开发最新技术
  19. 继承QGraphicsObject自定义图元
  20. django项目支持外网访问--花生壳

热门文章

  1. 第2章 SSD主控和全闪存阵列
  2. parse_args()详解
  3. 如何维系人脉?快点进来看看吧!
  4. 高德地图web绘制省、市、区 边界线和面积图
  5. 让软件集成为您的业务创造更多价值
  6. 说说北京奥运购票系统瘫痪这事儿
  7. 20100918_Dawning_图片平铺
  8. 第九届蓝桥杯大赛个人赛决赛(软件类本科B组)做题笔记和订正
  9. 小码哥-玩转【斗鱼直播APP】系列之框架搭建
  10. 306浏览器怎样使用芝麻HTTP进行代理服务器设置