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

  • 1. 多智能体关系分类
    • 1.1 合作关系(Fully Cooperative)
    • 1.2 竞争关系(Fully Competitive)
    • 1.3 混合关系(Mixed Cooperative & Competitive)
    • 1.4 利己关系(self-interested)
  • 2. 专业术语(Terminologies)
    • 2.1 假设agent个数为
    • 2.2 状态为
    • 2.3 第i个agent的动作为
    • 2.4 状态转移函数
    • 2.5 奖励(Reward)
    • 2.6 回报(Return)
    • 2.7 策略网络
    • 2.8 回报的随机性
    • 2.9 状态价值函数
  • 3. 多智能体策略学习的收敛问题
    • 3.1 单智能体的策略学习
    • 3.2 多智能体策略学习的问题
      • 3.2.1 收敛条件
      • 3.2.2 使用单智能体策略学习方式进行多智能体策略学习
  • 4. 多智能体强化学习
    • 4.1 学习方式分类
      • 4.1.1 Fully Decentralized
      • 4.1.2 Fully Centralized
      • 4.1.3 Centralized Learning & Decentralized Execution(中心化训练,去中心化执行)
    • 4.2 不完全观测(partial observation)
    • 4.3 完全去中心化学习(Fully Decentralized)
    • 4.4 完全中心化学习(Fully Centralized)
      • 4.4.1 网络结构
      • 4.4.2 训练方式
      • 4.4.3 执行方式
      • 4.4.3 优势与不足
    • 4.5 中心化学习,去中心化执行( Centralized Learning & Decentralized Execution)
      • 4.5.1 网络结构
      • 4.5.2 训练方式
      • 4.5.3 参数共享
  • 5 总结

1. 多智能体关系分类

1.1 合作关系(Fully Cooperative)

  • agent的利益一致,合作去获取共同的回报
  • 如工业机器人

1.2 竞争关系(Fully Competitive)

  • 一个agent的收益是另一个agent的损失
  • 如捕食者和猎物

1.3 混合关系(Mixed Cooperative & Competitive)

  • 既有合作,也有竞争
  • 如机器人踢足球

1.4 利己关系(self-interested)

  • 只想让自身受益,不关心别人受益或者损失。
  • 如股票自动交易系统。

2. 专业术语(Terminologies)

2.1 假设agent个数为

nnn

2.2 状态为

SSS

2.3 第i个agent的动作为

AiA^iAi

2.4 状态转移函数

p(s′∣s,a1,a2,...,an)=P(S=s,A1=a1,A2=a2,...,An=an)p(s'|s,a^1,a^2,...,a^n)=P(S=s,A^1=a^1,A^2=a^2,...,A^n=a^n)p(s′∣s,a1,a2,...,an)=P(S=s,A1=a1,A2=a2,...,An=an)下一时刻的动作依赖于所有智能体的动作(相互影响)。

2.5 奖励(Reward)

  • 第i个智能体获得的奖励为:RiR^iRi
  • 合作关系:R1=R2=...=RnR^1=R^2=...=R^nR1=R2=...=Rn
  • 竞争关系:R1∝−R2R^1\propto-R^2R1∝−R2
  • Ri依赖于自身的动作Ai,也依赖于其它智能体的动作(Aj)i≠jR^i依赖于自身的动作A^i,也依赖于其它智能体的动作(A^j)_{i\neq j}Ri依赖于自身的动作Ai,也依赖于其它智能体的动作(Aj)i​=j​

2.6 回报(Return)

  • t时刻第i个智能体获得的奖励为:RtiR_t^iRti​
  • 第i个智能体的汇报为:Uti=Rti+Rt+1i+Rt+2i+Rt+3i+...U_t^i = R_t^i+R_{t+1}^i+R_{t+2}^i+R_{t+3}^i+...Uti​=Rti​+Rt+1i​+Rt+2i​+Rt+3i​+...
  • 第i个智能体的折扣回报为:Uti=Rti+γ⋅Rt+1i+γ2⋅Rt+2i+γ3⋅Rt+3i+...γ∈[0,1]U_t^i = R_t^i+\gamma \cdot R_{t+1}^i+\gamma^2 \cdot R_{t+2}^i+\gamma^3 \cdot R_{t+3}^i+...\\\gamma \in [0,1]Uti​=Rti​+γ⋅Rt+1i​+γ2⋅Rt+2i​+γ3⋅Rt+3i​+...γ∈[0,1]

2.7 策略网络

  • 每个智能体都有自己的策略网络:π(ai∣s;θi)\pi(a^i|s;\theta^i)π(ai∣s;θi)
  • 在某些场景中策略网络是可以互换的,如自动驾驶中:θ1=θ2=...=θn\theta^1 = \theta^2=...=\theta^nθ1=θ2=...=θn
  • 在某些场景中策略网络是不可互换的,如足球比赛中(不同角色有不同作用):θi≠θj\theta^i\neq\theta^jθi​=θj

2.8 回报的随机性

  1. 奖励的随机性
  • Rti依赖于St,At1,At2,At3,...,Atn,R_t^i依赖于S_t,A_t^1,A_t^2,A_t^3,...,A_t^n,Rti​依赖于St​,At1​,At2​,At3​,...,Atn​,
  • St的随机性依赖于状态转移函数PS_t的随机性依赖于状态转移函数PSt​的随机性依赖于状态转移函数P
  • Ati的随机性来源于策略网络π(⋅∣st;θi)A_t^i的随机性来源于策略网络\pi(\cdot|s_t;\theta^i)Ati​的随机性来源于策略网络π(⋅∣st​;θi)
  1. 回报的随机性
  • Uti=∑k=0∞γkRt+kiU_t^i=\sum_{k=0}^{\infty}\gamma^{k}R_{t+k}^iUti​=k=0∑∞​γkRt+ki​
  • 依赖于所有未来的状态:{St,St+1,...}\{S_t,S_{t+1},...\}{St​,St+1​,...}
  • 依赖于未来所有agent的动作:{Ati,At+1i,...}(foriinrange(1,n+1))\{A_t^i,A_{t+1}^i,...\}(for\quad i\quad in \quad range(1,n+1)){Ati​,At+1i​,...}(foriinrange(1,n+1))

2.9 状态价值函数

  • 第i个智能体的状态价值为:Vi(st;θ1,θ2,...,θn)=E[Uti∣St=st]V^i(s_t;\theta^1,\theta^2,...,\theta^n)=E[U_t^i|S_t=s_t]Vi(st​;θ1,θ2,...,θn)=E[Uti​∣St​=st​]期望依赖于所有未来的动作和状态,除了t时刻的状态。
  • Atj∼π(⋅∣st;θj)j=1,...,nA_t^j\sim \pi(\cdot|s_t;\theta^j)\quad j=1,...,nAtj​∼π(⋅∣st​;θj)j=1,...,n
  • Vi∼{θ1,θ2,...,θn}V^i\sim\{\theta^1,\theta^2,...,\theta^n\}Vi∼{θ1,θ2,...,θn}
  • 一个agent的状态价值依赖于所有agent的策略
  • 如果一个agent的策略改变了,则其它所有智能体的状态价值都会改变。

3. 多智能体策略学习的收敛问题

3.1 单智能体的策略学习

  1. 策略网络:π(a∣s;θ)\pi(a|s;\theta)π(a∣s;θ)
  2. 状态价值函数:V(s;θ)V(s;\theta)V(s;θ)
  3. 目标函数(用于评价策略好坏):J(θ)=Es[V(s;θ)]J(\theta)=E_s[V(s;\theta)]J(θ)=Es​[V(s;θ)]
  4. 策略网络的参数学习方式为最大化目标函数:maxθJ(θ)max_\theta J(\theta)maxθ​J(θ)
  5. 策略网络的收敛条件为目标函数不再增加。

3.2 多智能体策略学习的问题

3.2.1 收敛条件

收敛条件:满足纳什均衡(Nash Equilibrium)

  1. 保持其余智能体的策略不变时,仅改变第i个智能体的策略已不能提升其获得的回报。
  2. 每个agent都以最优的策略应对其它智能体的策略。
  3. 纳什均衡表明策略网络已经收敛,因为每个agent都不会去改变自己的策略,即使改变策略也不会提升自己获得的回报。

3.2.2 使用单智能体策略学习方式进行多智能体策略学习

  1. 第i个智能体的策略网络为:π(ai∣s;θi)\pi(a^i|s;\theta^i)π(ai∣s;θi)
  2. 第i个智能体的状态价值函数为:V(s;θ1,θ2,...,θn)V(s;\theta^1,\theta^2,...,\theta^n)V(s;θ1,θ2,...,θn)
  3. 目标函数为:J(θ1,θ2,...,θn)=Es[V(s;θ1,θ2,...,θn)]J(\theta^1,\theta^2,...,\theta^n)=E_s[V(s;\theta^1,\theta^2,...,\theta^n)]J(θ1,θ2,...,θn)=Es​[V(s;θ1,θ2,...,θn)]
  4. 学习第i个策略网络的参数,通过最大化下列目标函数:maxθiJi(θ1,θ2,...,θn)\mathop{max}\limits_{\theta^i}J^i(\theta^1,\theta^2,...,\theta^n)θimax​Ji(θ1,θ2,...,θn)
  5. 一个智能体更新策略,会使得其它智能体的目标函数发生改变,从而导致策略学习永远无法收敛。
  6. 假设第i个智能体找到最优策略:θ⋆i=argmaxθiJi(θ1,θ2,...,θn)\theta_\star^i=\mathop{argmax}\limits_{\theta^i}J^i(\theta^1,\theta^2,...,\theta^n)θ⋆i​=θiargmax​Ji(θ1,θ2,...,θn)其余agent改变自己的策略时,第i个agent的最优策略则已改变。

4. 多智能体强化学习

4.1 学习方式分类

4.1.1 Fully Decentralized

每个agent仅依据自身的观测值和奖励值进行策略学习,不同agent之间不交流。

4.1.2 Fully Centralized

每个agent将自己所有的观测值、奖励值和动作发送给中央控制器,每个agent只执行命令,不进行决策,所有的决策由中央控制器制定并下发。

4.1.3 Centralized Learning & Decentralized Execution(中心化训练,去中心化执行)

训练时使用中央控制器,训练结束后则不再依赖它。

4.2 不完全观测(partial observation)

  1. 一个智能体不能观测到完整的全局状态:sss
  2. 第i个智能体的观测为:oio^ioi
  3. 不完全观测:s≠ois\neq o^is​=oi
  4. 完全观测:s=o0=o1=o2=...=ons=o^0=o^1=o^2=...=o^ns=o0=o1=o2=...=on

4.3 完全去中心化学习(Fully Decentralized)

  1. 第i个agent的策略网络(actor)为:π(ai∣oi;θi)\pi(a^i|o^i;\theta^i)π(ai∣oi;θi)
  2. 第i个agent的价值网络(critic)为:q(oi,ai;Wi)q(o^i,a^i;W^i)q(oi,ai;Wi)
  3. agent之间不做信息共享
  4. 与single-agent的学习方式完全一致。

4.4 完全中心化学习(Fully Centralized)

4.4.1 网络结构

  1. 所有agent的观测值为:o=[o1,o2,...,on]o=[o^1,o^2,...,o^n]o=[o1,o2,...,on]
  2. 所有agent的动作为:a=[a1,a2,...,an]a=[a^1,a^2,...,a^n]a=[a1,a2,...,an]
  3. 中央控制器知道每一个agent的观测值、动作和奖励
  4. 中央控制器具有n个策略网络(actor):π(ai∣o;θi)i=1,2,...,n\pi(a^i|o;\theta^i)\\i=1,2,...,nπ(ai∣o;θi)i=1,2,...,n
  5. 中央控制器具有n个价值网络(critic):q(o,a;Wi)i=1,2,...,nq(o,a;W^i)\\i=1,2,...,nq(o,a;Wi)i=1,2,...,n
  6. 使用价值网络评价策略网络决策的好坏。

4.4.2 训练方式

  1. 训练完全由中央控制器执行
  2. 使用策略梯度训练策略网络
  3. 使用TD算法训练价值网络

4.4.3 执行方式

  1. 决策完全由中央控制器进行
  2. 所有agent将观测值传递给中央控制器
  3. 中央控制器收集到各个agent的状态观测值:o=[o1,o2,...,on]o=[o^1,o^2,...,o^n]o=[o1,o2,...,on]
  4. 对于每一个agent,中央控制器从相应策略网络中进行动作抽样,并下发至每个agent:ai∼π(⋅∣o;θi)a^i\sim\pi(\cdot|o;\theta^i)ai∼π(⋅∣o;θi)

4.4.3 优势与不足

优势:

  • 知道全局信息,利于决策。

不足:

  • 执行慢,与中央控制器的通信和同步较慢,往往取决于最慢的步骤。
  • 无法实现实时决策。

4.5 中心化学习,去中心化执行( Centralized Learning & Decentralized Execution)

4.5.1 网络结构

  1. 每个agent具有自己的策略网络:π(ai∣oi;θi)\pi(a^i|o^i;\theta^i)π(ai∣oi;θi)
  2. 中央控制器具有n个价值网络(网络可以相同,但是参数不同):q(o,a;Wi)q(o,a;W^i)q(o,a;Wi)
  3. 训练过程中,中央控制器可以获得每个agent的动作、状态观测值、奖励。
  4. 执行(实际决策)过程中,中央控制器的价值网络不再使用。

4.5.2 训练方式

1.价值网络,使用TD算法进行参数更新,网络输入为:a=[a1,a2,...,an]o=[o1,o2,...,on]ria = [a^1,a^2,...,a^n]\\o = [o^1,o^2,...,o^n]\\ r_ia=[a1,a2,...,an]o=[o1,o2,...,on]ri​
2. 策略网络,使用策略梯度进行参数更新,网络输入为:aioiqia^i\\o^i\\q^iaioiqi

4.5.3 参数共享

  1. n个策略网络:π(ai∣oi;θi)\pi(a^i|o^i;\theta^i)π(ai∣oi;θi)
  2. n个价值网络:q(o,a;Wi)q(o,a;W^i)q(o,a;Wi)
  3. 可训练参数为:{θi,Wi}i=1n\{\theta^i,W^i\}_{i=1}^n{θi,Wi}i=1n​
  4. 参数可以共享,比如在无人车中
  5. 参数不可以共享,比如机器人足球比赛

5 总结

学习方式 策略网络(actor) 价值网络(critic)
完全去中心化 π(ai∣oi;θi)\pi(a^i|o^i;\theta^i)π(ai∣oi;θi) q(oi,ai;Wi)q(o^i,a^i;W^i)q(oi,ai;Wi)
完全中心化 π(ai∣o;θi)\pi(a^i|o;\theta^i)π(ai∣o;θi) q(o,a;Wi)q(o,a;W^i)q(o,a;Wi)
中心化学习,去中心化决策 π(ai∣oi;θi)\pi(a^i|o^i;\theta^i)π(ai∣oi;θi) q(o,a;Wi)q(o,a;W^i)q(o,a;Wi)

本文内容为参考B站学习视频书写的笔记!

by CyrusMay 2022 04 11

强化学习—— 多智能体强化学习相关推荐

  1. 多智能体强化学习入门

    参考文章:万字长文:详解多智能体强化学习的基础和应用 .多智能体强化学习入门(一)--基础知识与博弈 推荐文章:多智能体强化学习路线图 (MARL Roadmap) 推荐综述论文:An Overvie ...

  2. 多智能体强化学习思路整理

    多智能体强化学习算法思路整理 目录 摘要 背景和意义 研究背景 强化学习 多智能体强化学习与博弈论基础 研究意义 问题与挑战 问题分类 问题分析 环境的不稳定性与可扩展性的平衡 部分可观测的马尔可夫决 ...

  3. 《强化学习周刊》第40期:PMIC多智能体强化学习、Lazy-MDPs、CTDS

    No.40 智源社区 强化学习组 强 化 学  习 研究 观点 资源 活动 周刊订阅 告诉大家一个好消息,<强化学习周刊>已经开启"订阅功能",以后我们会向您自动推送最 ...

  4. 《强化学习周刊》第16期:多智能体强化学习的最新研究与应用

    No.16 智源社区 强化学习组 强 化 学  习 研究 观点 资源 活动 关于周刊 强化学习作为人工智能领域研究热点之一,多智能强化学习的研究进展与成果也引发了众多关注.为帮助研究与工程人员了解该领 ...

  5. 《强化学习周刊》第2期:多智能体强化学习(MARL)赋能“AI智能时代”

    No.02 智源社区 强化学习组 R L 学  习 研究 观点 资源 活动 关于周刊 随着强化学习研究的不断成熟,如何将其结合博弈论的研究基础,解决多智能体连续决策与优化问题成为了新的研究领域,为了帮 ...

  6. 上海交大开源训练框架,支持大规模基于种群多智能体强化学习训练

    机器之心专栏 作者:上海交大和UCL多智能体强化学习研究团队 基于种群的多智能体深度强化学习(PB-MARL)方法在星际争霸.王者荣耀等游戏AI上已经得到成功验证,MALib 则是首个专门面向 PB- ...

  7. 不用地图如何导航?DeepMind提出新型双路径强化学习「智能体」架构

    来源:deepmind.arXiv 作者:Piotr Mirowski.Matthew Koichi Grimes.Mateusz Malinowski.Karl Moritz Hermann.Kei ...

  8. 直播 | 帝国理工王剑虹:配电网中用多智能体强化学习进行的主动电压控制

    「AI Drive」是由 PaperWeekly 和 biendata 共同发起的学术直播间,旨在帮助更多的青年学者宣传其最新科研成果.我们一直认为,单向地输出知识并不是一个最好的方式,而有效地反馈和 ...

  9. 多智能体强化学习_基于多智能体强化学习主宰星际争霸游戏

    大家好,今天我们来介绍基于多智能体强化学习主宰星际争霸游戏这篇论文 Grandmaster level in StarCraft II using multi-agent reinforcement ...

最新文章

  1. 几个让我印象深刻的面试题(二)
  2. 互联网趋势关键词:交流,为价值付费,资源整合
  3. 网络游戏程序中解决加载卡顿的有效方法
  4. jquery使用技巧总结
  5. 根据oracle入库数据进行告警,Oracle 启动故障案例之--ORA-600 [4193]错误
  6. SPEL + 中的错误处理
  7. 东明县计算机学校,东明县职业中等专业学校2021年招生信息
  8. java同事只有竞争吗_如何防止同事竞争破坏公司文化
  9. 丰胸神器?网友曝椰树椰汁新广告低俗 疑似虚假宣传被调查...
  10. Oracle如何一次插入多条数据
  11. 取消input聚焦时的边框,去除ios点击时,自动添加的底色效果
  12. springboot下使用拦截器和过滤器
  13. 超星尔雅不让下载?课件,拿来吧你!
  14. 如何将swf文件转换成pdf
  15. ArcGIS裁剪时警告 warning001003:Datum conflict between input and output
  16. RedTiger‘s Hackit
  17. 集合框架-Comparator和Comparable的区别
  18. webstorm下载安装过程打开项目
  19. 《用微信测试公众号慰问你的好兄弟/姐妹》:用java简单实现微信公众号消息推送(入门且详细且有效)
  20. rop检查_他山之石丨详解抗VEGF治疗在ROP诊疗中的应用

热门文章

  1. IP地址获取问题(InetAddress.getLocalHost().getHostAddress())
  2. centos aria2开机启动_balenaEtcher for mac(U盘启动盘制作工具) v1.5.100
  3. postgres创建用户和数据库
  4. 怎样去判断一个女人适不适合结婚?
  5. matlab newff函数解析
  6. 关于项目的众包功能 7-9
  7. 青年歌手大奖赛_评委会打分 --JAVA
  8. MySQL数据库表引擎与字符集
  9. @SpringBootApplication深入剖析
  10. CSS基础选择器(标签选择器、类选择器、多类名选择器、 id选择器、通配符选择器、属性选择器)