G2ANet
《Multi-Agent Game Abstraction via Graph Attention Neural Network》
关键词:大规模,博弈抽象,2级(硬+软皆有)注意力机制,图神经网络
通过简化策略学习过程解决了大规模智能体的问题。
贡献
1.用完全图来建模(构建)智能体之间的关系。因为大规模的智能体场景中不是每个智能体都相互作用的,我们需要确定关系(交互还是不交互?),就像足球后卫后卫不需要总是盯着对方守门员一样。(硬权重决定了智能体之间的关系)
2.提出基于2级(硬+软)注意力网络的博弈抽象机制,这可以表明两个智能体之间是否存在相互作用,以及相互作用的重要性。也是硬+软注意力机制所分别做的工作。
3.将这个检测机制集成到基于图神经网络的多智能体强化学习中,进行博弈抽象。
4.将G2Net分别与一个策略网络和一个Q网络结合,以此提出了两种新的学习算法GA-Comm(基于通信)和GA-AC(基于AC)。
背景
博弈抽象的主要思想是将多智能体强化学习(马尔可夫博弈)的问题模型简化为一个较小的博弈,从而降低求解(或学习)博弈均衡策略的复杂性。
注意力机制
两个主要类型:软注意力(就理解为soft max 的吧!),硬注意力
软注意力计算元素的重要性分布。特别是软注意力机制是完全可微的,因此可以很容易地通过端到端的反向传播来训练。Softmax函数是一种常见的激活函数。然而,这个函数通常将非零概率分配给不相关的元素,这削弱了对真正重要元素的关注。
硬注意力从输入元素中选择一个子集,这迫使模型只关注重要元素,完全丢弃其他元素。然而,硬软注意力机制是选择基于抽样的元素,因此是不可微的。因此,它不能直接通过端到端的反向传播来学习注意力的权重。
方法
1.基于二级注意力机制的博弈抽象
提出基于2级注意力机制的博弈抽象方法。再基于此机制,提出GA-Comm和GA-AC算法。
考虑一个局部可观测环境。局部观测 o i t o^t_i oit被MLP编码成特征向量 h i t h^t_i hit。 然后,利用特征向量 h i t h^t_i hit通过注意力机制来学习智能体之间的关系(说的直接一点就是硬权重)。
首先用硬注意力机制来学习能够确定智能体之间是否有交互关系的硬权重。这篇论文是用LSTM来实现的,在每个时间步输出智能体i,j的的权重(0或者1)。 对于第i个智能体,将智能体i,j的嵌入向量合并为一个特征 ( h i , h j ) (h_i,h_j) (hi,hj),并将该特征输入进LSTM模型:
h i , j = f ( L S T M ( h i , h j ) ) (1) h_{i,j} = f(LSTM(h_i, h_j))\tag{1} hi,j=f(LSTM(hi,hj))(1)
其中 f f f是一个全连接层用来嵌入(解码)的。然而,传统的LSTM网络的输出只依赖于当前时间和前一时间的输入,而忽略了后期时间的输入信息。 也就是说,输入(智能体)的顺序在这个过程中扮演了重要角色并且输出重量值不能利用所有智能体的信息。这是短视且不合理的。所以用到了Bi-LSTM模型来解决此问题。
此外,在背景部分交代过,硬注意力机制因为采样过程,不能反向传播梯度。所以尝试利用gumbel-softmax函数来解决。
W h i , j = g u m ( f ( L S T M ( h i , h j ) ) ) (2) W^{i,j}_h = gum(f(LSTM(h_i, h_j)))\tag{2} Whi,j=gum(f(LSTM(hi,hj)))(2)
通过硬注意力机制,我们可以得到第i个智能体的子图 G i G_i Gi,在这个子图中第i个智能体刚好和需要协调的智能体连接。
然后,使用软注意力机制来学习子图 G i G_i Gi每条边的权重。使用查询键系统(键-值对),软注意力权重 W s i , j W^{i,j}_s Wsi,j将嵌入 e j e_j ej与 e i e_i ei进行比较,并将这两个嵌入之间的匹配值传递到softmax函数中:
W s i , j ∝ e x p ( e j T W k T W q e i W h i , j ) (3) W^{i,j}_s ∝ exp(e^T_j W^T_k W_qe_iW^{i,j}_h)\tag{3} Wsi,j∝exp(e