[NIPS 2019] Multi-Agent Common Knowledge Reinforcement Learning笔记

前言

这篇文章在2020.1.11在arxiv上更新了,添加了附录,跟我的一些想法不谋而合,因此拿出来仔细研读一下。

代码

agent之间的common knowledge使得复杂的分布式协作成为可能。这里作者提出了multiagent common knowledge reinforcement learning (MACKRL),一个新奇的stochastic actor-critic算法,学习层次的策略树。层次结构中的较高级别根据agent的common knowledge来协调agent的组(group),或者委派给具有较小子组但可能更丰富common knowledge的较低级别。整个策略树可以以完全分散的方式执行。由于最低的策略树级别包含每个agent的独立策略,MACKRL简化为独立学习的分散策略。

Introduction

联合动作学习(JAL)学习集中式策略,根据全局状态或联合观察选择联合动作。这就需要agent要么可以获得全局状态,要么有一个即时的通信通道,并且有足够的带宽使得他们能整合他们独立的观察。问题是通常不符合实际,另一个就是联合动作空间随agent数量指数增长。

独立学习(IL)学习完全分布式的,但是会因为其他agent成为环境的一部分而带来非平稳性的问题。

这些困难促进了分布式策略集中式训练的产生。即训练时共享参数,观察,梯度等,训练结果是一组分布式策略。但是策略必须完全分布式严重限制了agent协调他们行为的能力。通常agent被迫忽略一些在他们的独立观察中的原则上能帮助最大化奖赏,但会导致行为难以被同伴预测的信息。这在IL中是很突出的问题。

本文的 common knowledge 指强共识,即包含一系列一个组里agent都知道的事实,并且每个agent知道所有人都知道,每个agent知道所有人都知道所有人都知道这个,等等。如果agent能推断出其他每个agent的部分观察,没有通信也会有common knowledge。
在这里插入图片描述
没有 common knowledge 的话,复杂的分布式协作只能依赖隐式的通信,比如观察其他 agent 的动作和影响。但这往往很难学,因为通常需要多步去执行,限制了执行时控制的敏捷性。基于 common knowledge 的是同步的,不需要学习通讯协议。

MACKRL使用层次策略树来动态地选择合适的协作层级,通过让协作策略基于 groups of agents 的 common knowledge,MACKRL占据了 IL 和 JAL 之间的一个独特的中立位置,并且超越两者,然而保持完全分布式。并且还能利用 probabilistic common knowledge,从agent在 common knowledge 上的 belisfs 推导出,从有噪声的观察中得到。噪声越多,表现越差。

Problem setting

n个agent a ∈ A a\in A aA,协作任务建模为分布式POMDP,环境状态 s ∈ S s\in S sS,每个时间步agent a收到一个观察 z a ∈ Z z^a \in Z zaZ,选择动作 u e n v a ∈ U e n v a u_{env}^a \in U_{env}^a uenvaUenva,这代表最后执行的动作。联合动作 u e n v \bm{u}_{env} uenv,状态转移 P ( s ′ ∣ s , u e n v ) P(s'|s,\bm{u}_{env}) P(ss,uenv),奖赏 r ( s , u e n v ) r(s,\bm{u}_{env}) r(s,uenv),目标是最大化折扣累加奖赏 R t = ∑ l = 0 H γ l r ( s t + l , u t + l , e n v ) R_t=\sum_{l=0}^H \gamma^l r(s_{t+l}, \bm{u}_{t+l,env}) Rt=l=0Hγlr(st+l,ut+l,env),episode长度为 H。每个 agent 的策略仅基于自己的动作观察历史。集中式学习分布式策略。

Common knowledge

任何在执行或训练之前被所有agent知道的数据 ξ \xi ξ,比如共享的随机种子,都是common knowledge。关键的是,每个组里的agent都可以从他自己的历史 τ t a \tau_t^a τta 和共同知道的数据 ξ \xi ξ 中推断出同样的common knowledge历史 τ t G \tau_t^G τtG,也就是说 τ t G : = I G ( τ t a , ξ ) = I G ( τ t a ‾ , ξ ) ∀ a , a ‾ ∈ G \tau_t^G := I^G(\tau_t^a,\xi)= I^G(\tau_t^{\overline{a}},\xi) \forall a,\overline{a}\in G τtG:=IG(τta,ξ)=IG(τta,

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值