多智能体强化学习论文导读

Adaptive Value Decomposition with Greedy Marginal Contribution Computation for Cooperative Multi-Agent Reinforcement Learning

Dec-POMDP

本文的研究对象是 decentralized partially observable Markov decision process (Dec-POMDP), 我们首先来看一下它和经典的MDP有什么不同?

(1) 奖励设定不同, 这里没有给到每一个agent的奖励, 只有一个整体奖励(team reward) r t o t ( s , u ) r_{tot}(\bm{s}, \bm{u}) rtot(s,u).
(2) 每个agent i i i 观测到的不是它自己的状态 s i s_{i} si, 它的观测要根据具体的设定来确定, 为表示区分常用 o i o_{i} oi 来表示.
(3) 新增了一个叫做 view range 的概念, 每个 agent 都有一个 view range, 在这个范围里面的其他 agent 对它来说是有关联的, 也就是它们之间会相互影响, 且它的观测信息里包含它们的信息, 超出这个范围的 agent 视为无关, 完全独立, 其状态也不可见.

一些基本的符号: N N N: agent数量.

本文做了如下的一些假设:

reward 机制

考虑 agent i i i 的奖励, 定义 agent i i i 视野范围内的 agent 集合为它的团队(team), 记其数量为 M i M_{i} Mi, 作者认为 i i i 自己的奖励 r t e a m i r_{team}^{i} rteami 与 joint state, joint action 有关, 而根据设定(3), 只有 view range 里的 agent 对它有影响, 因此只需包含 view range 里的 agent 的状态和动作, 根据设定, view range 里其他 agent 的状态信息在 o i o_{i} oi 中包含, 在此基础上加上其它 agent 采取的动作 u i − u_{i}^{-} ui, 以及agent i i i 本身的动作 u i u_i ui, 即可得到 joint action, 所有 agent 获得的奖励之和是 team reward r t o t r_{tot} rtot, 即

r t o t ( s , u ) = ∑ i = 1 N r t e a m i ( o i , u i − , u i ) r_{tot}(\bm{s}, \bm{u})=\sum_{i=1}^{N}r_{team}^{i}(o_{i}, u_{i}^{-}, u_{i}) rtot(s,u)=i=1Nrteami(oi,ui,ui)
对于 r t e a m i r_{team}^{i} rteami 的具体形式, 作者也做了如下的论断: 每一个 agent 都有一个 team, 同时它还可能在其他 agent的 team 里面, 作者认为 Q t o t Q_{tot} Qtot 的构成形式是, 每个 agent 的 team 都有一个 reward, 加和得到 Q t o t Q_{tot} Qtot, 在一个 team 里面, team reward 又均匀分配给每个 agent. 每个 agent 最终得到的 reward 就是它从它所参与到的team 的 reward 里面分到的 reward 累加得到的. 打个比方, 有 10 个人, 每个人都有一个公司, 同时也在别人的公司里参股, 到年底分红时, (认为分红是均分), 每个人得到的钱是它创办/参股的公司的分红加和. 用符号语言描述如下:

r t o t ( s , u ) = ∑ i = 1 N r ^ 1 ( o i , u i ) + ∑ 1 ≤ i < j ≤ N r ^ 2 ( o i , o j , u i , u j ) + . . . + r ^ N ( o 1 , . . . , o N , u 1 , . . . , u N ) r_{tot}(\mathbf{s},\mathbf{u}) = \sum\limits_{i=1}^{N}\hat{r}_{1}(o_{i}, u_{i}) + \sum\limits_{1\leq i<j\leq N} \hat{r}_{2}(o_{i},o_{j}, u_{i}, u_{j})+...+ \hat{r}_{N}(o_{1},..., o_{N}, u_{1}, ..., u_{N}) rtot(s,u)=i=1Nr^1(oi,ui)+1i<jNr^2(oi,oj,ui,uj)+...+r^N(o1,...,oN,u1,...,uN)

其中 r ^ n ( . . . ) \hat{r}_{n}(...) r^n(...) 表示由这 n n n 个 agent 组成的所有 team 的 reward 之和, 如果这个team 不存在这一项就是 0 0 0, r ^ 2 ( o i , o j , u i , u j ) \hat{r}_{2}(o_{i},o_{j}, u_{i}, u_{j}) r^2(oi,oj,ui,uj) 是指 i i i, j j j 组成的 team (例如 i i i 为中心, 包含 j j j 的team 和 j j j 为中心, 包含 i i i 的 team) 的 reward.

每一个 agent 的 reward 如下:

r t e a m i ( o i , u i − , u i ) = r ^ 1 ( o i , u i ) + 1 2 ∑ 1 ≤ j ≤ N , j ≠ i r ^ 2 ( o i , o j , u i , u j ) + . . . + 1 N r ^ N ( o 1 , . . . , o N , u 1 , . . . , u N ) r_{team}^{i}(o_{i}, u_{i}^{-}, u_{i}) = \hat{r}_{1}(o_{i}, u_{i}) + \frac{1}{2}\sum\limits_{1 \leq j\leq N, j\neq i} \hat{r}_{2}(o_{i},o_{j}, u_{i}, u_{j})+...+ \frac{1}{N}\hat{r}_{N}(o_{1},..., o_{N}, u_{1}, ..., u_{N}) rteami(oi,ui,ui)=r^1(oi,ui)+211jN,j=ir^2(oi,oj,ui,uj)+...+N1r^N(o1,...,oN,u1,...,uN)

价值函数

team reward 对应得到的 Q 函数: Q t o t π ( s , u ) Q_{tot}^{\bm \pi}(\bm{s}, \bm{u}) Qtotπ(s,u),
Q t o t π ( s , u ) = E τ ∼ π ∣ s 0 = s , u 0 = u { ∑ t = 0 ∞ γ t r t o t } = E τ ∼ π ∣ s 0 = s , u 0 = u { ∑ t = 0 ∞ γ t ∑ i = 1 N r t e a m i } = ∑ i = 1 N E τ ∼ π ∣ s 0 = s , u 0 = u { ∑ t = 0 ∞ γ t r t e a m i } Q_{tot}^{\bm\pi}(\bm{s}, \bm{u})=\mathbb{E}_{\bm\tau\sim \bm\pi|_{\bm{s_{0}}=\bm{s}, \bm{u_{0}}=\bm{u}}}\{\sum_{t=0}^{\infty}\gamma^{t}r_{tot}\}=\mathbb{E}_{_{\bm\tau\sim \bm\pi|_{\bm{s_{0}}=\bm{s}, \bm{u_{0}}=\bm{u}}}}\{\sum_{t=0}^{\infty}\gamma^{t}\sum_{i=1}^{N}r_{team}^{i}\} \\=\sum_{i=1}^{N}\mathbb{E}_{_{\bm\tau\sim \bm\pi|_{\bm{s_{0}}=\bm{s}, \bm{u_{0}}=\bm{u}}}}\{\sum_{t=0}^{\infty}\gamma^{t}r_{team}^{i}\} Qtotπ(s,u)=Eτπs0=s,u0=u{t=0γtrtot}=Eτπs0=s,u0=u{t=0γti=1Nrteami}=i=1NEτπs0=s,u0=u{t=0γtrteami}
定义 E τ ∼ π ∣ s 0 = s , u 0 = u { ∑ t = 0 ∞ γ t r t e a m i } = Q i π ( s i , u i − , u i ) \mathbb{E}_{_{\bm\tau\sim \bm\pi|_{\bm{s_{0}}=\bm{s}, \bm{u_{0}}=\bm{u}}}}\{\sum_{t=0}^{\infty}\gamma^{t}r_{team}^{i}\}=Q^{\bm{\pi}}_{i}(s_{i}, u_{i}^{-}, u_{i}) Eτπs0=s,u0=u{t=0γtrteami}=Qiπ(si,ui,ui), 这里 Q i π ( s i , u i − , u i ) Q^{\bm{\pi}}_{i}(s_{i}, u_{i}^{-}, u_{i}) Qiπ(si,ui,ui) 被称作agent i i i 的 individual Q 函数,则 Q t o t ( s , u ) Q_{tot}(\bm{s}, \bm{u}) Qtot(s,u) 可以分解成这种形式:

Q t o t π ( s , u ) = ∑ i = 1 N Q i π ( s i , u i − , u i ) Q_{tot}^{\bm\pi}(\bm{s}, \bm{u})=\sum_{i=1}^{N}Q^{\bm{\pi}}_{i}(s_{i}, u_{i}^{-}, u_{i}) Qtotπ(s,u)=i=1NQiπ(si,ui,ui)
还可以得到如下的结论: u ∗ = arg max ⁡ u Q t o t ( s , u ) \bm{u}^{*}=\argmax_{\bm u}Q_{tot}(\bm{s}, \bm{u}) u=argmaxuQtot(s,u) 满足

u i ∗ = arg max ⁡ u i Q i π ( s i , u i ∗ − , u i ) u_{i}^{*}=\argmax_{u_{i}} Q^{\bm{\pi}}_{i}(s_{i}, u_{i}^{*-}, u_{i}) ui=uiargmaxQiπ(si,ui∗−,ui)

也就是说最佳的 joint action 一定是一个纳什均衡, 每一个 agent 站在自己的角度来看待自己的动作都是最优的.

策略

本文没有采用 actor network 来近似 policy, policy 的近似形式如下: 刚刚定义的 Q i π ( s i , u i − , u i ) Q^{\bm{\pi}}_{i}(s_{i}, u_{i}^{-}, u_{i}) Qiπ(si,ui,ui) 被称作 centralized Q 函数, 下文中的下标中标注 c c c, 作者还为每个 agent 定义了一个函数 decentralized Q: Q i ( s i , u i ) Q_{i}(s_{i}, u_{i}) Qi(si,ui), 下文中的下标中标注 p p p, 且认为策略是对于这个 Q 函数 greedy 的:
π ( s i ) = arg max ⁡ u i Q p , i ( s i , u i ) \pi(s_{i})=\argmax_{u_{i}} {Q_{p,i}(s_{i}, u_{i})} π(si)=uiargmaxQp,i(si,ui)

Q value function 的近似

Q i Q_{i} Qi 近似地取成如下形式: Q p , i ( s i , u i ) ≈ Q p , i ( τ i , u i ) Q_{p,i}(s_{i}, u_{i})\approx Q_{p,i}(\tau_{i}, u_{i}) Qp,i(si,ui)Qp,i(τi,ui), 其中 τ i , t = { o i , 1 , u i , 1 , . . . , o i , t } \tau_{i, t}=\{o_{i,1}, u_{i,1}, ..., o_{i,t}\} τi,t={oi,1,ui,1,...,oi,t}, 称为 history. Q c , i π ( s i , u i − , u i ) Q^{\bm{\pi}}_{c,i}(s_{i}, u_{i}^{-}, u_{i}) Qc,iπ(si,ui,ui) 同理.

Q p Q_p Qp 的 target

M i = 0 M_i = 0 Mi=0 时, Q c , i π ( s i , u i − , u i ) Q^{\bm{\pi}}_{c,i}(s_{i}, u_{i}^{-}, u_{i}) Qc,iπ(si,ui,ui) 退化为只与 s i , u i s_i, u_i si,ui 有关, 因此文中把 Q c , i π ( s i , u i − , u i ) Q^{\bm{\pi}}_{c,i}(s_{i}, u_{i}^{-}, u_{i}) Qc,iπ(si,ui,ui) 表示为

Q c , i π ( s i , u i − , u i ) = { Q c o l l , i π ( s i , u i − , u i ) , M i > 0 Q a l o n e , i π ( s i , u i ) , M i = 0 Q_{c,i}^{\bm \pi}(s_{i}, u_{i}^{-}, u_{i}) = \begin{cases} & Q_{coll, i}^{\bm \pi}(s_{i}, u_{i}^{-}, u_{i}),& M_{i} \gt 0 \\ & Q_{alone,i}^{\bm \pi}(s_{i}, u_{i}),&M_{i} = 0 \end{cases} Qc,iπ(si,ui,ui)={Qcoll,iπ(si,ui,ui),Qalone,iπ(si,ui),Mi>0Mi=0
coll 是 collaborate 的缩写.

⋆ \star Q p Q_{p} Qp 的 target 如下:

L p ( μ ) = { E [ Q p , i ( τ i , u i ) − ϕ i ∗ ( τ i , u i ) ] 2 , M i > 0 E [ Q p , i ( τ i , u i ) − Q a l o n e , i π ( τ i , u i ) ] , M i = 0 L_{p}(\mu) = \begin{cases} & \mathbb{E}[Q_{p,i}(\tau_{i}, u_{i})-\phi_{i}^{*}(\tau_{i}, u_{i})]^2, & M_{i} \gt 0 \\ & \mathbb{E}[Q_{p,i}(\tau_{i}, u_{i})-Q_{alone,i}^{\bm \pi}(\tau_{i},u_{i})], & M_{i}=0 \end{cases} Lp(μ)={E[Qp,i(τi,ui)ϕi(τi,ui)]2,E[Qp,i(τi,ui)Qalone,iπ(τi,ui)],Mi>0Mi=0

其中 ϕ i ∗ ( τ i , u i ) = Q c o l l , i π ( τ i , u i ∗ − , u i ) − Q c o l l , i π ( τ i , u i ∗ − , u i s e l f i s h ) \phi_{i}^{*}(\tau_{i}, u_{i})=Q_{coll, i}^{\bm \pi}(\tau_{i}, u_{i}^{*-}, u_{i})-Q_{coll, i}^{\bm \pi}(\tau_{i}, u_{i}^{*-}, u_{i}^{selfish}) ϕi(τi,ui)=Qcoll,iπ(τi,ui∗−,ui)Qcoll,iπ(τi,ui∗−,uiselfish)
( u i ∗ − , u i ∗ ) = arg max ⁡ u i − , u i ( Q c o l l i ( τ i , u i − , u i ) ) (u_{i}^{*-}, u_{i}^{*})=\argmax_{u_{i}^{-}, u_{i}}(Q_{coll}^{i}(\tau_{i}, u_{i}^{-}, u_{i})) (ui∗−,ui)=argmaxui,ui(Qcolli(τi,ui,ui))
ϕ i ∗ ( τ i , u i ) \phi_{i}^{*}(\tau_{i}, u_{i}) ϕi(τi,ui) 的意思是动作 u i u_{i} ui 相较于完全 selfish 的动作的 advantage, 作者认为完全 selfish 的动作通常是最差的, 只有趋于合作才能提高 reward.
其他 agent 的动作为何选用 u i ∗ − u_{i}^{*-} ui∗−? 文中解释: we encourage the agent to learn each action’s value based on the optimistic belief that the possibility of other agents to take non-cooperative action is zero so that all other agents would cooperate with itself. As the main problem in the non-monotonic environment is that agents tend to take lazy actions fearing other agents not cooperating, this optimistic belief can facilitate exploration by increasing the probability of sampling cooperative actions and promises that agents will jump off the suboptimal policy to converge to the optimal cooperative policy. 简言之, 作者就是防止 agent 因为害怕其它 agent 不合作而采用不合作的动作, 所以在为 agent 选择动作的时候强行施加了一个 optimistic assumption, 让 agent 始终认为其他 agent 会和它合作.

selfish 的动作怎么选? 文中提出令 u i s e l f i s h = arg max ⁡ u i Q a l o n e , i π ( τ i , u i ) u_{i}^{selfish}=\argmax_{u_{i}}Q_{alone,i}^{\bm\pi}(\tau_{i}, u_{i}) uiselfish=argmaxuiQalone,iπ(τi,ui). 当 M i = 0 M_{i}=0 Mi=0 时, 说明它的 view range 里只有它自己, 此时的 Q a l o n e , i π Q_{alone,i}^{\bm \pi} Qalone,iπ 可以认为是 selfish 的, 因此 selfish 的动作可以这么取.

采用 attention 机制对其他agent的信息进行 encode

为介绍原理, 我们引入论文 Actor-Attention-Critic for Multi-Agent Reinforcement Learning 中相关部分的介绍:
加入 agent i i i 收到了一组其他 agent 的观测和动作信息: observation o = { o i } \bm{o}=\{o_{i}\} o={oi}, i = 1 , . . . , N i=1,..., N i=1,...,N 和 action a = { a i } \bm{a}=\{a_{i}\} a={ai}, i = 1 , . . . , N i=1,..., N i=1,...,N, attention 机制是这样对其进行 encode 的:
(1) 对每个 agent 的 observation 和 action 进行编码, 采用一个 one-layer MLP 作为 embedding function, 记为 e k = g ( o k , a k ) e_{k}=g(o_{k},a_{k}) ek=g(ok,ak);
(2) 计算每个 agent j ≠ i j\neq i j=i 的信息重要程度, 以一个权重系数 α j \alpha_{j} αj 表示, 称为 “attention 系数”:
α j ∝ exp ⁡ ( e j T W k e y T W q u e r y e i ) α_j \propto \exp(e_{j}^T W_{key}^TW_{query}e_i) αjexp(ejTWkeyTWqueryei)
这里 W k e y W_{key} Wkey W q u e r y W_{query} Wquery 都是一个长宽等于 embedding 长度的方阵, 是可学习的变量组成的, 分别对 e j e_{j} ej e i e_{i} ei 的信息进行二次提取, 提取后的信息称为 key 和 query. 其设计思想是这样的, e j T W k e y T W q u e r y e i e_{j}^T W_{key}^TW_{query}e_i ejTWkeyTWqueryei 实际上是对二次提取后的 embedding 信息进行一个内积, 计算其相近的程度, 这里 exp ⁡ \exp exp 函数防止梯度消失. 这里认为 embedding 和 e i e_{i} ei 的 embedding 相似程度高的 agent 是重要的 agent, 因此又以其作为权重系数.
(3) 计算其他 agent 的信息 encode 的结果:
x i = ∑ j ≠ i α j h ( V g ( o i , a i ) ) x_{i} = \sum\limits_{j\neq i}\alpha_{j}h(Vg(o_{i}, a_{i})) xi=j=iαjh(Vg(oi,ai))
其中 V V V 是一个 shared matrix, 也是可学习的参数组成的, h h h 是 element-wise nonlinearity, 也就是激活函数, h ( V g ( o i , a i ) ) h(Vg(o_{i}, a_{i})) h(Vg(oi,ai)) 记作 v j v_{j} vj.

算法流程

在这里插入图片描述

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值