针对混合合作竞争环境下的多智能体演员-评论家网络
摘要:
- Q-learning受到环境non-stationarity的影响,策略梯度则受到随着智能体数量增加而增加。
- 本文提出:
- 一种适应演员-评论家网络方法,该方法考虑了其他agent的行动策略,并能够成功地学习需要复杂multi-agent 协调的策略。
- 引入了一种训练方案,利用每个agent的策略集合,从而产生更健壮的multi-agent 策略。
介绍:
-
传统的强化学习方法,如Q-Learning或策略梯度,不太适合多智能体环境。原因在于:
1.随着训练的进行,每个agent的策略都在变化,从任何单个agent的角度来看,环境变得不稳定
2.当需要多个agent协调时,策略梯度方法通常表现出非常高的变化。(一般可以使用基于模型的策略优化,它可以通过反向传播学习最优策略:这需要一个环境动态的可微分模型和有关agent之间相互作用的假设。但是这个解决方案应用于竞争环境还是有困难。)
-
主要贡献
-
提出通用多智能体学习算法:
1.学习策略时只使用在运行时的本地信息(比如自己的观测值)
2.不去假设环境动态的可微分模型,也不去假设agent之间通信方法有任何特定结构 →对应于方法中的“参照其他agent的策略”
3.不仅适用于合作还适用于竞争以及合作-竞争的混合环境
-
采用集中训练和分散执行的框架,允许策略使用额外的信息来简化训练,这些信息不在测试时使用
提出适应演员-评论家网络方法:评论家增加关于其他agent策略的额外信息,而演员只能访问本地信息。训练后,在执行阶段只使用本地演员,以分散的方式执行
-
其他贡献
1.展示表明agent可以在线学习其他agent的近似模型,并在自己的策略学习过程中有效地使用它们
2.介绍一种方法:通过训练具有集合策略的agent来提高多agent策略的稳定性,这需要合作和竞争的策略进行鲁棒交互
-
基础知识:
-
困难
- 由于agent在学习过程中会独立地更新策略,因此从任何一个agent的角度来看,环境都是非平稳的。
- 经验回放缓冲区不能在这种环境中使用,因为 P ( s ′ ∣ s , a , π 1 , … , π N ) ≠ P ( s ′ ∣ s , a , π 1 ′ , … , π N ′ ) P(s'|s,a,π_1,…,π_N)≠P(s'|s,a,π'_1,…,π'_N) P(s′∣s,a,π1,…,πN)=P(s′∣s,a,π1′,…,πN′)
-
策略梯度算法:
,其中 p π p^π pπ为状态分布 -
将策略梯度框架推广到确定性策略(DPG)算法 μ θ μ_θ μθ(S→A):
,该算法要求动作空间和策略是连续的
方法
-
多智能体演员-评论家网络
-
概述
-
评论家被其他agent的策略的额外信息所增强
-
有N个agent,其策略参数为θ={ θ 1 , … , θ N θ_1,…,θ_N θ1,…,θN} 令π={ π 1 , … , π N π_1,…,π_N π1,…,πN}是所有agent策略的集合
agent i 的期望收益梯度:
其中 Q i π ( x , a 1 , … , a N ) Q{_i^π}(x,a_1,…,a_N) Qiπ(x,a1,…,aN)是集中的动作值函数,将所有agent的动作作为输入,加上一些状态信息x,输出agent i的q值。最简单的情况下,x由所有agent的观测值组成 x=( o 1 , … , o N o_1,…,o_N o1,…,oN)因为每个 Q i π Q{_i^π} Qiπ是独立学习的,所以agent可以有任意的奖励结构
-
拓展到确定性策略上,考虑N个连续性策略 μ i μ_i μi,梯度变成:
,此时replay buffer为 ( x , x ′ , a 1 , … , a N , r 1 , … , r N ) (x,x',a_1,…,a_N,r_1,…,r_N) (x,x′,a1,…,aN,r1,…,rN),损失计算变为:
其中 u ′ = { u θ ’ 1 , … , u θ ’ N } u'=\{u_{θ’_1},…,u_{θ’_N}\} u′={uθ’1,…,uθ’N}是具有延迟参数 θ i ′ θ'_i θi′的目标策略集合
-
-
参照其他agent的策略:为了消除知道其他agent策略的假设,避免环境持续变化
-
每个agent i 维持一个对agent j 真实策略 μ j μ_j μj的近似值 μ ˆ φ i j μˆ_{φ{_i^j}} μˆφij,其中φ是近似值参数。这个近似策略是通过学习最大化agent j动作的对数概率得来,并且使用熵正则化器
,其中H是策略分布的熵。对于近似策略,y变为了在更新 Q i μ Q{_i^μ} Qiμ之前,从replay buffer中得到 每个agent j的最新样本,然后执行单个梯度步骤更新 φ i j φ{_i^j} φij;将每个agent动作的对数概率直接输入到Q中,而不采样。
-
-
具有策略集合的agent:为了获得多代理策略,这种策略对于竞争关系agent的策略变化更具鲁棒性
- 训练K个不同的子策略,在每一轮随机为每个agent选择一个特定的子策略来执行。假设策略
μ
i
μ_i
μi是有不同子策略k(记为
μ
θ
i
(
k
)
μ_{θ{_i^{(k)}}}
μθi(k)
μ
i
(
k
)
μ{_i^{(k)}}
μi(k))的集合,对于agent i,我们将使集成目标最大化:
,然后为每个agent i的每个子策略 μ i ( k ) μ{_i^{(k)}} μi(k)放置一个replay buffer D i ( k ) D{_i^{(k)}} Di(k),推导出集成目标梯度:
- 训练K个不同的子策略,在每一轮随机为每个agent选择一个特定的子策略来执行。假设策略
μ
i
μ_i
μi是有不同子策略k(记为
μ
θ
i
(
k
)
μ_{θ{_i^{(k)}}}
μθi(k)
μ
i
(
k
)
μ{_i^{(k)}}
μi(k))的集合,对于agent i,我们将使集成目标最大化:
实验
- 六种环境:
- 合作通信:分为speaker和listener,在每轮中listener必须要走到一个特定颜色的地标,根据距离这个地标的距离获得奖励,但他不知道去哪个地标。speaker能得到具体的地标,可以在每一步为listener指明具体地标。“speaker必须学会根据listener的动作输出地标的颜色”——因为只有这样才能使得listener获得最大奖励,可能一开始speaker说的不对,但是根据listener的动作改变自己的说法。
- 合作导航:多个agent要到达一组特定地点上,每个agent可观察到其他agent和地点的相对位置,根据每个地点的接近程度获得集体奖励(所有的agent必须覆盖尽量多的地点 ),agent相撞时会受到惩罚。
- 抢占游戏:场景由L个地点组成,其中一个为目标地点。N个合作的agent知道目标地点并根据其与目标的距离获得奖励,而另外M个对抗agent必须阻止合作agent到达目标。可以将agent从地点上赶走,暂时占领它,对抗agent也会根据他们到目标地标的距离获得奖励,但并不知道正确的目标,这必须从合作agent的运动中推断出来。
- 分身欺骗:有N个合作agent和N个地点,还有一个对抗对手,其中一个为目标地点。合作agent的奖励为任何一个agent到目标的最小距离(所以只有一个代理需要到达目标地点),但对手与目标的距离作为惩罚。一个对抗对手也希望到达目标地点,但对手不知道哪一个地点是正确的。因此,合作agent要学会分散并覆盖所有地标以欺骗对手。
- 捕食者-猎物游戏:N个速度较慢的合作agent必须在随机环境中追逐速度较快的对手,环境中有障碍挡住前进的道路。每次合作agent与对手发生碰撞时,合作agent都会得到奖励,而对手则会受到惩罚。
- 隐蔽通信(对抗性通信环境):其中说话agent(“Alice”)必须将消息传达给侦听agent(“Bob”),侦听agent必须重建消息。一个对抗性agent(“Eve”)也在观察并想要重建消息——Alice和Bob会因为Eve的重建而受到惩罚,因此Alice必须使用一个只有Alice和Bob知道的随机生成的密钥来编码消息。
- 实验结果
- 优化网络:相比于DDPG所有环境中均有所提升
- 参照其他agent的策略:尽管不能完美地拟合其他agent的策略,但能够获得与使用真实策略相同的成功率,而不会显著减缓收敛速度
- 策略集合:具有策略集合的agent比具有单一策略的agent更强大