利用反向传播学习多智能体通信
利用反向传播解决多智能体通信
介绍
存在的问题
在现实世界中,每个参与者的能力和对世界的可见性都有限
虽然控制每个代理的模型通常是通过强化学习来学习的,但通信的规范和格式通常是预先确定的(每个时间步交流信息)
本文工作
提出了一个模型,在该模型中,合作的智能体在采取动作之前学会在他们之间进行沟通,每个智能体都由深度前馈网络控制
模型能够应用于涉及到环境部分可见的问题上
模型允许智能体的数量和类型在允许时发生动态变化
通信模型
- s j s^j sj :第j个智能体对环境的状态值
- 控制器Φ, a=Φ(s) ,其中 s={ s 1 s^1 s1,…,} s j s^j sj 是所有的状态值, a={ a 1 a^1 a1,…, a j a^j aj} 是所有动作的拼接。 这个单个控制器Φ包含每个代理的单独控制器,以及代理之间的通信
控制器Φ结构
主要结构
由模块 f i f^i fi构建 i ∈ { 0 , … , K } i∈\{0,…, K\} i∈{0,…,K},其中K为网络中的通信步数
f i f^i fi为每个智能体j取两个输入向量:隐藏状态 h j i h{^i_j} hji和通信 c j i c{^i_j} cji,并输出一个向量 h j i + 1 h{^{i+1}_j} hji+1。由 f i f^i fi单一线性层+非线性层构成。 整体的输入: h 0 = [ h 1 0 , h 2 0 , … , h j 0 ] h^0 = [h{^0_1}, h{^0_2},…,h{^0_j}] h0=[h10,h20,…,hj0];
整个模型可视为由多个层次构成: h i + 1 = σ ( T i h i ) h^{i+1}=\sigma(T^ih^i) hi+1=σ(Tihi) 其中 h i h^i hi是所有 h j i h{^i_j} hji的拼接 而 T i T^i Ti相当于模型系数; T的大小是动态的 通过公式2( J-1)的归一化因子可以实现
模型第一层使用编码器函数: h j 0 = r ( s j ) h{^0_j}=r(s_j) hj0=r(sj); 输入为每个agent的状态 s j s_j sj输出为特征向量 h j 0 h{^0_j} hj0 ;r是一个单层神经网络 ;对于所有的agent有 c j 0 = 0 c{^0_j}=0 cj0=0
模型的输出端使用解码器函数: q ( h j K ) q(h{^K_j}) q(hjK);输出所有action空间的分布;q是单层网络的形式,最后有一个softmax;最后为了产生离散的action,会从分布中进行采样 a j a_j aj~ q ( h j K ) q(h{^K_j}) q(hjK)
智能体变化,N(j)会随之变化,所以模型被解释为动态图,N(j)是当前时刻连接到顶点j的顶点集,图内的边表示agent之间的通信通道,于是公式2变成:
其他变化
- 跳过连接:对于某些任务,将输入编码 h j 0 h{^0_j} hj0作为第一层以外的通信步骤的输入。因此,对于第i步的智能体j,有: h j i + 1 = f i ( h j i , c j i , h j 0 ) h{^{i+1}_j=f^i(h{^i_j},c{^i_j},h{^0_j})} hji+1=fi(hji,cji,hj0)
- 暂时重现:将网络变成一个RNN:每个时间步t使用相同的 f t f^t ft 同时从 q ( h j t ) q(h{^t_j}) q(hjt)中采样动作
模型总结 * 最右边的图是模型的整体结构,名为ϕ,代表了整个MAS一次输入状态到获取动作的全过程,一次整个ϕ 模型的前向传播类似于仿真中的一个time step,相当于强化学习中的一次根据状态决策动作的过程,也就是一次执行策略的过程。模型输入的是每个agent的状态,输出是每个智能体的动作action,和策略一样很好理解,J就是agent的个数。整个ϕ 模型包括了2个阶段的通讯过程(2是定义的参数,代表做一次决策MAS系统经历两步交互),每一个交互阶段的过程如中间图所示,其中 f i f^i fi 代表ϕ 中的第i层模型,也是第i阶段的交互模型层。图中四个灰色方块(一个f)代表了四个智能体。在 f i f^i fi 到 f i + 1 f^{i+1} fi+1 过程中, f i f^i fi的一部分(蓝色)直接输入给每个agent对应的 f i + 1 f^{i+1} fi+1 ,而另一部分(红色)则和其他agent的 f i f^i fi 一起求和取平均后再无差别的送给每个 f i + 1 f^{i+1} fi+1 。下面看每个小灰方块里的内容,对应最左边的图,实际上这就是一个两层的神经网络,输入是状态向量和交互向量的组合(红色和蓝色向量直接拼接起来),用于迭代每一次的交互过程,输出就是下一个交互交互阶段的状态向量 [ 1 ] ^{[1]} [1]。
总结:
参考文章
[1] 普通攻击往后拉.[经典论文分享]CommNet 多智能体通讯网络模型.https://blog.csdn.net/weixin_43483381/article/details/112800873
利用反向传播学习多智能体通信相关推荐
- 多智能体通信:基于通信的多智能体强化学习研究综述
题目:A Survey of Multi-Agent Reinforcement Learning with Communication 出处:arXiv 2022 摘要:通信是协调多个智能体行为的有 ...
- 技术图文:如何利用 C# 实现 误差反向传播 学习规则?
背景 我们在 如何利用 C# 对神经网络模型进行抽象? 中完成了神经网络的抽象结构: 三个接口:激活函数.有监督学习.无监督学习 三个抽象类:神经元.网络层.网络拓扑 我们在 如何利用 C# 实现神经 ...
- 带有时间信息的简单且稳健的多智能体通信
1.文章信息 <Succinctand Robust Multi-Agent Communication With Temporal Message Control>这是哈弗大学发表在计算 ...
- 强化学习—— 多智能体强化学习
强化学习-- 多智能体强化学习 1. 多智能体关系分类 1.1 合作关系(Fully Cooperative) 1.2 竞争关系(Fully Competitive) 1.3 混合关系(Mixed C ...
- AI 大战 AI,一个深度强化学习多智能体竞赛系统
小伙伴们快看过来!这是一款全新打造的 ⚔️ AI vs. AI ⚔️--深度强化学习多智能体竞赛系统. 这个工具托管在 Space 上,允许我们创建多智能体竞赛.它包含三个元素: 一个带匹配算法的 S ...
- DeepMind 综述深度强化学习:智能体和人类相似度竟然如此高!
来源:AI科技评论 近年来,深度强化学习(Deep reinforcement learning)方法在人工智能方面取得了瞩目的成就,从 Atari 游戏.到围棋.再到无限制扑克等领域,AI 的表现都 ...
- 不用地图如何导航?DeepMind提出新型双路径强化学习「智能体」架构
来源:deepmind.arXiv 作者:Piotr Mirowski.Matthew Koichi Grimes.Mateusz Malinowski.Karl Moritz Hermann.Kei ...
- 中科院自动化所利用光学定位系统实现多智能体编队避障
协同控制提高智能体系统鲁棒性,编队避障是重点 随着工业技术的发展,任务复杂程度和规模逐渐增加,单个智能体获取信息及解决问题的能力有限,在多数情况下无法满足任务要求.而多智能体系统强调单体之间的合作与协 ...
- 【强化学习】不用地图如何导航?DeepMind提出新型双路径强化学习「智能体」架构
来源:deepmind.arXiv 作者:Piotr Mirowski.Matthew Koichi Grimes.Mateusz Malinowski.Karl Moritz Hermann.Kei ...
最新文章
- Vue.js 第二天: 列表渲染
- Linux同步自己的配置,Linux学习心得之——Rsync同步配置
- javascript document对象 第21节
- 开发高性能的WebService应用 zhuan
- DBA(二):percona软件、innobackupex备份与恢复
- 10分钟免费开启全站https
- easybcd 支持 windows 10 和 ubuntu 14.04 双系统启动
- 视频编解码:第一章 编解码基础
- Flowable 数据库表结构 ACT_HI_IDENTITYLINK
- ogg启动报错libnnz11.so: cannot open shared object file
- 练手级计算机,快来打怪
- Leetcode 410.分割数组的最大值(最优解是二分法)
- 楼主,不知道为什么这么流行
- php无框架开发web项目,web.framework
- Python编程从入门到实践学习内容包含哪些?
- VM ware 12安装教程
- cydia下载地址_Cydia下载完整安装包_cydia软件源官方下载-PChome下载中心
- 市场项目交接文档初稿
- Docker可视化工具——Portainer全解
- oracle创建交叉表,SQL交叉表常用实例(转载网络)