热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

多智能体强化学习_多智能体强化学习综述LucianBusoniu

Multi-AgentReinforcementLearning:ASurvey,LucianBusoniuRobertBabuskaBartDeSchutter,2

Multi-Agent Reinforcement Learning: A Survey, Lucian Busoniu Robert Babuska Bart De Schutter,2006

这篇文章对多智能体强化学习(MARL)的背景,目的,代表性的算法进行了调研。

多智能强化学习算法分类图下图。

d122c512d5ef7e43fc9d84ac32a766ad.png

1. 背景知识(Backgrounds)

A. 单智能体强化学习

谈多智能体强化学习,首先需要有一般强化学习的概念,一般的强化学习可以参考这里。单智能体情况下,使用马尔可夫决策过程(Markov Decision Process, MDP)来建模:

其中,

是状态空间,
是动作空间,
是转移概率分布,
是奖励函数。
时刻的长期奖励

在给定策略

下的状态动作函数为
,求解最优策略
来最大化
函数。使用Q-learning算法求解:

B. 多智能体强化学习

随机博弈(stochastic game, SG),或称马尔可夫博弈可以定义为

其中

表示
个智能体,
是环境状态空间,
是动作空间,则联合动作集合
(也是一种概率分布,三维张量,取值范围[0,1])是状态转移概率分布,
是奖励函数。

此时的转移概率、即时奖励、长期回报都依赖联合动作

,
。此时的策略也是联合策略
。每个智能体的Q函数依赖联合动作和联合策略

如果

,SG简化为静态博弈。当
,SG是完全合作的;当
,SG是完全竞争的。静态博弈下,纳什均衡(Nash Equilibrum)是对对手的最佳策略。

合作的目的就是确保所有的智能体合理地选择期望联合策略中自己的部分。在多均衡的博弈中,合作归结为均衡的选择,智能体需要不断的选择同一均衡中自己的部分。

2. 多智能体学习目标(Multi-Agent Learning Goal)

完全合作的随机博弈,可以通过最大化联合回报来解决。但是在其他的情况下,确定一个MALRL的目标并不容易,因为智能体的回报函数彼此之间相互关联,难以独立最大化。收敛到均衡点是多智能体学习的基本要求,并且纳什均衡是用的最多的。

聚焦稳定性的文献一般认为智能体之间常常是独立的。而考虑适应能力的话,一般就会考虑其他智能体的行为。如果只考虑稳定性不考虑收敛性,那么就变成对其他智能体的跟踪了。

下表对多智能体强化学习算法进行了分类

631e95a50afa788b68c2924bb0528335.png

3. 多智能体强化学习算法简介(Multi-Agent Reinforcement Learning Algorithms)

这里将涉及到的算法按任务进行分类:完全合作、完全竞争、混合任务。

A. 完全合作任务

前面说过,完全合作时

,如果存在控制空心,学习目标简化为MDP,动作空间为联合动作空间,此时的Q学习形式为:

如果所有的智能体都是独立决策的,并且都采用贪婪策略,协作问题就会出现,即使所有的智能体都使用相同的算法并行学习共同的最优Q函数。理论上他们可以使用贪婪策略最大化共同回报,但是贪婪的动作选择机制以随机的方式打破了协作,最终导致联合动作是次优的。

无需协作模型

Team Q-learning[1]假设最优联合动作是唯一的(实际很少发生),因此原来的最优贝尔曼方程可以直接使用。Distributed Q-learning[2]没有假设协作的条件,但是这种方法只在确定性的场景下有效。每个智能体
只通过它自己的动作来维护一个策略
和一个局部Q函数
,更新方向都是朝着怎加
进行的:
以及共同奖励为正的情况下,可以证明策略会收敛到最佳联合粗略

直接协作方法

在随机选择动作的时候有合作或者协商

Social conventions[3]和roles[4]会限制智能体的动作选择
Coordination graph简化协作,如果全局Q函数可以加性的分解为局部Q函数[5][6]
在协商选择动作的过程中需要通信

非直接协作方法

这类方法使动作选择朝着产出更大的值得方向进行,从而控制智能体走向协作。

联合动作学习(Joint Action Learner, JAL)[7]经验地使用从别的智能体行为学习到的模型。
频率最大Q值算法主要考虑那些在过去产生好的值的动作出现的频率。
最优动态学习(Optimal Adaptive Learning, OAL)[8],朝着最近被选择的纳什均衡进行。使用其他的方法确保最优纳什均衡最终能够达到。
JAL和FMQ都是静态博弈。

备注以及一些开放问题

方法的队员之间是相互独立的,而非直接协作方法是队员已知的。直接协作方法在只使用公共知识的情况下队员之间是相互独立的,在有协商的情况下是队员已知的。

为了提高算法的实用能力,我们需要弄清楚算法适用的规模以及在不确定或者部分可观测下的健壮性。免协作方法特别容易受到不确定观测的影响。

交流是MARL中解决协作问题最直接有效的方法,而这部分的研究目前不是很充分。

B. 完全竞争任务

在完全竞争博弈下(两个智能体,

),使用了最大最小值的概念:假设对手会怎么做会造成我的收益最小,那么把这个最小收益最大化。这种思想催生了像
这样的算法:

其中

是智能体1的最小最大值:

在上面的算法中Q值没有使用智能体作为下标索引,因为方程隐含的假设了

。minmax-Q是真正的与对手无关,因为即使最小最大解有很多方案可以达到,每一种都至少会达到最小最大值这一回报,并且与对手怎么做无关。

如果智能体有一个关于对手的模型(对手已知),实际上可以达到比最小最大值更优的回报。对手模型可以使用

这样的算法学习获得
[9]

C. 混合任务

一般情况下,奖励函数不会有什么限制,但是多智能体情况下会产生兴趣冲突,比如竞争资源等。这种情况下,像均衡这样的博弈理论会产生很大的影响。在多均衡的博弈中,智能体需要持续选择同一均衡中自己对应的部分。

接下来先介绍静态重复的博弈,然后介绍动态博弈。

1)重复博弈

  • 智能体跟踪方法(Agent-tracking)
  • 智能体敏感方法(Agent-aware)
  • 其他一些问题

2)动态随机博弈

混合动态任务对应于无限制的随机博弈,此时需要考虑所有的MARL问题:延迟奖励、非平稳智能体、冲突目标等。

  • 单智能体强化学习(Single-agent RL)应用于MARL存在的问题

MARL的非平稳特性会导致单智能体RL大部分算法失效,这些算法没有考虑其他智能体的行为影响(智能体只爱),智能体之间智能体之间会产生严重的干扰。尽管有局限性,但是因为比较简单也有不少应用。这些应用中经常将其他智能体的信息编码输入智能体中,相当于间接的是基于别的智能体在做决策。

  • 智能体独立方法(Agent-independent)

这类算法一般都基于Q-learning,并且使用博弈理论求解器求解随机博弈各个阶段的策略和值[10][11]。在

时刻:

其中,

返回第
个智能体对应部分的均衡(策略),
给出使用此均衡的期望回报。目标设置为在每一个状态收敛到均衡。在更新过程中会用到包含所有智能体的一个Q值表,所有智能体使用相同的算法,所有的动作、奖励都是可观测的。

举例

,纳什Q学习(Nash Q-learning):

其中

表示计算纳什均衡,
表示均衡中智能体的第
个策略。
表示第
个智能体在均衡条件下在状态
能获得的反馈期望。Correlated Q-learning
[12]以及asymmetric Q-learning工作原理类似,基于相关或者Stackelberg(领航-追随)均衡。在symmetric-Q里面,追随者不需要建立领航者的Q值表,但是领航者必须要知道追随者的动作选择。
  • 智能体跟踪方法(Agent-tracking)

智能体跟踪这类算法会适应学习到的其他智能体的非平稳策略模型而不考虑收敛性。动作必须是可观测的。Non-Stationary Converging Policies(NSCP)算法计算一个模型的最佳反应并用其来估计值函数[13]

  • 智能体敏感方法(Agent-aware)

智能体可知方法一般会考虑收敛的问题。Win-or-Learn-Fast Policy Hill-Climbing (WolF-PHC)算法在WoLF-IGA中将基本的Q学习和梯度策略方法组合[14]:

当智能体要输的时候梯度步长

,要赢的时候为
,
。赢的标准可以是当前策略略和平均策略的比较(WoLF-PHC)或者是策略的二阶差分(PD-WoLF
[15])。基本原理就是在要输的时候要尽快逃离目前的形式,而在赢的时候要小心的调整来达到收敛。

Extended Optimal Response (EXORL) 在双智能体任务中,策略朝着最小化另一个智能体奖励的方向更新。

Environment-Independent Reinforcement Acceleration (EIRA) 不对环境做任何假设,这一点来说,这个算法十分通用,但是也使得它无法利用任务的特殊结构。

  • 一些说明

博弈论倾向于在动态情况下使用静态(阶段方式)的解决方案。但是阶段式的解决方案在在混合任务中是否适用现在没有定论。

混合随机博弈中,一般认为智能体是自利的。因此,合作协同技术,像沟通、社会约定、规则等都没有研究。然而在很多混合任务中,智能体是相互合作的,只在某些情况下存在竞争,比如竞争同一个资源。在这样的任务中,合作协同方式是一个可行的选择。

许多混合随机博弈算法都受限于规模和不完整观测,而不完整观测对智能体独立的方法影响较大。

4. 结论与展望(Conclusion and Future Perspectives)

前面回顾了多智能体强化学习面临的挑战,以及针对这些挑战提出的方法,我们对这些方法进行了总结并给出了自己的思考。接下来给出一些更一般的问题。

首先,阶段性地使用博弈论在环境和智能体都是动态变化的场景下不是最合适的。目前为止(本文发表于2006年),基于博弈论的分析仅仅用在动态学习里面。

我们希望学习过程是稳定的,这样智能体的行为更易于控制和分析。我们也希望智能体可以自适应于其他智能体,因为它们的动态特性往往是难以预测的。这样一来,MARL算法不应该仅仅是智能体独立或者仅仅是智能体跟踪。控制论里面的鲁棒理论可以将稳定性和适应性整合为统一的目标。如果一个学习算法可以做到对其他智能体的非平稳特性鲁棒稳定,那么就能在其他智能体行为有限变化的情况下收敛。

从实用的角度出发,现实的学习目标出了通常的非对称要求外,还应该包含暂态表现的边界,如期望达到相应水平的最大时间、暂态表现的下界等。这些方面已经有一些研究了[16]

认为机器学习、博弈论以及控制论的相互结合可以大大促进MARL的发展。

参考

  1. ^M. L. Littman, Value-function reinforcement learning in Markov games, Journal of Cognitive Systems Research, vol. 2, pp. 55-66, 2001.
  2. ^M. Lauer and M. Riedmiller, An algorithm for distributed reinforcement learning in cooperative multi-agent systems, in Proceedings Seventeenth International Conference on Machine Learning (ICML-00), Stanford University, US, 29 June 2 July 2000, pp. 535-542.
  3. ^C. Boutilier, Planning, learning and coordination in multiagent decision processes, in Proceedings Sixth Conference on Theoretical Aspects of Rationality and Knowledge (TARK-96), De Zeeuwse Stromen, The Netherlands, 17-20 March 1996, pp. 195-210.
  4. ^M. T. J. Spaan, N. Vlassis, and F. C. A. Groen, High level coordination of agents based on multiagent Markov decision processes with roles, in Workshop on Cooperative Robotics, 2002 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS-02), Lausanne, Switzerland, 1 October 2002, pp. 66-73.
  5. ^C. Guestrin, M. G. Lagoudakis, and R. Parr, Coordinated reinforcement learning, in Proceedings Nineteenth International Conference on Machine Learning (ICML-02), Sydney, Australia, 812 July 2002, pp. 227-234.
  6. ^J. R. Kok, M. T. J. Spaan, and N. Vlassis, Non-communicative multirobot coordination in dynamic environment, Robotics and Autonomous Systems, vol. 50, no. 2-3, pp. 99-114, 2005.
  7. ^C. Claus and C. Boutilier, The dynamics of reinforcement learning in cooperative multiagent systems, in Proceedings 15th National Conference on Articial Intelligence and 10th Conference on Innovative Applications of Articial Intelligence (AAAI/IAAI-98), Madison, US, 26-30 July 1998, pp. 746-752.
  8. ^S. Kapetanakis and D. Kudenko, Reinforcement learning of coordination in cooperative multi-agent systems, in Proceedings 18th National Conference on Articial Intelligence and 14th Conference on Innovative Applications of Articial Intelligence (AAAI/IAAI-02), Menlo Park, US, 28 July 1 August 2002, pp. 326-331.
  9. ^D. Carmel and S. Markovitch, Opponent modeling in multi-agent systems, in Adaptation and Learning in Multi-Agent Systems, G. Wei and S. Sen, Eds. Springer Verlag, 1996, pp. 40-52.
  10. ^M. Bowling, Multiagent learning in the presence of agents with limitations, Ph.D. dissertation, Computer Science Dept., Carnegie Mellon University, Pittsburgh, US, May 2003.
  11. ^A. Greenwald and K. Hall, Correlated-Q learning, in Proceedings Twentieth International Conference on Machine Learning (ICML-03), Washington, US, 21-24 August 2003, pp. 242-249.
  12. ^V. K¨on¨onen, Asymmetric multiagent reinforcement learning, in Proceedings IEEE/WIC International Conference on Intelligent Agent Technology (IAT-03), Halifax, Canada, 13-17 October 2003, pp. 336-342.
  13. ^ M. Weinberg and J. S. Rosenschein, Best-response multiagent learning in non-stationary environments, in Proceedings 3rd International Joint Conference on Autonomous Agents and Multiagent Systems (AAMAS-04), New York, US, 19-23 August 2004, pp. 506-513.
  14. ^M. Bowling and M. Veloso, Multiagent learning using a variable learning rate, Articial Intelligence, vol. 136, no. 2, pp. 215-250, 2002.
  15. ^B. Banerjee and J. Peng, Adaptive policy gradient in multiagent learning, in Proceedings 2nd International Joint Conference on Autonomous Agents and Multiagent Systems (AAMAS-03), Melbourne, Australia, 14-18 July 2003, pp. 686-692.
  16. ^M. Bowling, Convergence and no-regret in multiagent learning, in Advances in Neural Information Processing Systems 17 (NIPS-04), Vancouver, Canada, 13-18 December 2004, pp. 209-216.



推荐阅读
  • 生成式对抗网络模型综述摘要生成式对抗网络模型(GAN)是基于深度学习的一种强大的生成模型,可以应用于计算机视觉、自然语言处理、半监督学习等重要领域。生成式对抗网络 ... [详细]
  • 本文讨论了在Windows 8上安装gvim中插件时出现的错误加载问题。作者将EasyMotion插件放在了正确的位置,但加载时却出现了错误。作者提供了下载链接和之前放置插件的位置,并列出了出现的错误信息。 ... [详细]
  • 本文介绍了机器学习手册中关于日期和时区操作的重要性以及其在实际应用中的作用。文章以一个故事为背景,描述了学童们面对老先生的教导时的反应,以及上官如在这个过程中的表现。同时,文章也提到了顾慎为对上官如的恨意以及他们之间的矛盾源于早年的结局。最后,文章强调了日期和时区操作在机器学习中的重要性,并指出了其在实际应用中的作用和意义。 ... [详细]
  • 本文由编程笔记#小编为大家整理,主要介绍了logistic回归(线性和非线性)相关的知识,包括线性logistic回归的代码和数据集的分布情况。希望对你有一定的参考价值。 ... [详细]
  • 微软头条实习生分享深度学习自学指南
    本文介绍了一位微软头条实习生自学深度学习的经验分享,包括学习资源推荐、重要基础知识的学习要点等。作者强调了学好Python和数学基础的重要性,并提供了一些建议。 ... [详细]
  • 本文介绍了九度OnlineJudge中的1002题目“Grading”的解决方法。该题目要求设计一个公平的评分过程,将每个考题分配给3个独立的专家,如果他们的评分不一致,则需要请一位裁判做出最终决定。文章详细描述了评分规则,并给出了解决该问题的程序。 ... [详细]
  • Android Studio Bumblebee | 2021.1.1(大黄蜂版本使用介绍)
    本文介绍了Android Studio Bumblebee | 2021.1.1(大黄蜂版本)的使用方法和相关知识,包括Gradle的介绍、设备管理器的配置、无线调试、新版本问题等内容。同时还提供了更新版本的下载地址和启动页面截图。 ... [详细]
  • Python正则表达式学习记录及常用方法
    本文记录了学习Python正则表达式的过程,介绍了re模块的常用方法re.search,并解释了rawstring的作用。正则表达式是一种方便检查字符串匹配模式的工具,通过本文的学习可以掌握Python中使用正则表达式的基本方法。 ... [详细]
  • 利用Visual Basic开发SAP接口程序初探的方法与原理
    本文介绍了利用Visual Basic开发SAP接口程序的方法与原理,以及SAP R/3系统的特点和二次开发平台ABAP的使用。通过程序接口自动读取SAP R/3的数据表或视图,在外部进行处理和利用水晶报表等工具生成符合中国人习惯的报表样式。具体介绍了RFC调用的原理和模型,并强调本文主要不讨论SAP R/3函数的开发,而是针对使用SAP的公司的非ABAP开发人员提供了初步的接口程序开发指导。 ... [详细]
  • 本文讨论了clone的fork与pthread_create创建线程的不同之处。进程是一个指令执行流及其执行环境,其执行环境是一个系统资源的集合。在调用系统调用fork创建一个进程时,子进程只是完全复制父进程的资源,这样得到的子进程独立于父进程,具有良好的并发性。但是二者之间的通讯需要通过专门的通讯机制,另外通过fork创建子进程系统开销很大。因此,在某些情况下,使用clone或pthread_create创建线程可能更加高效。 ... [详细]
  • 本文讨论了在openwrt-17.01版本中,mt7628设备上初始化启动时eth0的mac地址总是随机生成的问题。每次随机生成的eth0的mac地址都会写到/sys/class/net/eth0/address目录下,而openwrt-17.01原版的SDK会根据随机生成的eth0的mac地址再生成eth0.1、eth0.2等,生成后的mac地址会保存在/etc/config/network下。 ... [详细]
  • 本文详细介绍了如何使用MySQL来显示SQL语句的执行时间,并通过MySQL Query Profiler获取CPU和内存使用量以及系统锁和表锁的时间。同时介绍了效能分析的三种方法:瓶颈分析、工作负载分析和基于比率的分析。 ... [详细]
  • 深度学习中的Vision Transformer (ViT)详解
    本文详细介绍了深度学习中的Vision Transformer (ViT)方法。首先介绍了相关工作和ViT的基本原理,包括图像块嵌入、可学习的嵌入、位置嵌入和Transformer编码器等。接着讨论了ViT的张量维度变化、归纳偏置与混合架构、微调及更高分辨率等方面。最后给出了实验结果和相关代码的链接。本文的研究表明,对于CV任务,直接应用纯Transformer架构于图像块序列是可行的,无需依赖于卷积网络。 ... [详细]
  • 本文介绍了如何使用Express App提供静态文件,同时提到了一些不需要使用的文件,如package.json和/.ssh/known_hosts,并解释了为什么app.get('*')无法捕获所有请求以及为什么app.use(express.static(__dirname))可能会提供不需要的文件。 ... [详细]
  • 【shell】网络处理:判断IP是否在网段、两个ip是否同网段、IP地址范围、网段包含关系
    本文介绍了使用shell脚本判断IP是否在同一网段、判断IP地址是否在某个范围内、计算IP地址范围、判断网段之间的包含关系的方法和原理。通过对IP和掩码进行与计算,可以判断两个IP是否在同一网段。同时,还提供了一段用于验证IP地址的正则表达式和判断特殊IP地址的方法。 ... [详细]
author-avatar
凌波_薇步
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有