[NIPS2017] A Unified Game-Theoretic Approach to Multiagent Reinforcement Learning

前言

为了实现通用智能,agent需要学会在共享的环境中与彼此交互,这就是MARL的挑战。最简单的形式是independent reinforcement learning (InRL),忽略其他agent,将交互当做(局部)环境的一部分,但在训练时往往会过拟合到其他人的策略,导致执行时不能有效泛化,观察越局部越严重。当然还包括局部环境非稳态和非马尔科夫性导致的难以保证收敛。作者引入了一个新的指标——joint-policy correlation(JPC),来量化这个影响。作者描述了一种针对一般MARL的算法——基于DRL产生的策略混合的近似最优反应,和为策略选择计算meta-strategies的经验博弈论分析——以及一种可扩展实现,使用解耦的meta-solvers来降低内存需求。CTDE的结构,主要是有集中的收益表。

https://arxiv.org/abs/1711.00832

Background and Related Work

一般式博弈是一个元组 ( Π , U , n ) (\Pi,U,n) (Π,U,n),其中 n n n是玩家的数量, Π \Pi Π是策略集, U U U是效用的收益表。扩展式博弈将这种形式扩展到多步顺序情况。

玩家通过从 Π i \Pi_i Πi中选择策略,或者根据分布 σ i \sigma_i σi采样策略最大化期望效用。 σ i \sigma_i σi的质量跟策略有关,因此不能被单独找到或评估。每个有限扩展式博弈都有等价的一般式博弈,但是指数级的更大,导致算法不得不直接解决序贯形式的。

有几种计算策略的算法。 在零和博弈中,可以使用例如 线性规划、fictitious play、replicator dynamics或悔恨最小化。其中一些技术已经扩展到扩展(顺序)形式,状态空间的大小呈指数增长。然而,这些扩展几乎只处理两人的情况,但有一些明显的例外。Fictitious play也收敛于包括合作(相同收益)游戏在内的潜在游戏。

double oracle (DO)算法解决一组两人、一般式的子博弈,在时间t由子集 Π t ⊂ Π \Pi_t\subset\Pi ΠtΠ得出。一个子博弈 G t G_t Gt的收益矩阵只包含对应于 Π t \Pi_t Πt中策略的项。在每个时间步 t t t,一个均衡 σ ∗ , t \sigma^{*,t} σ,t从子博弈 G t G_t Gt中得到,并且为了得到 G t + 1 G_{t+1} Gt+1,每个玩家添加一个来自完整空间 Π i \Pi_i Πi的BR π i t + 1 \pi_i^{t+1} πit+1,所以对于所有的玩家 i i i Π i t + 1 = Π i t ∪ { π i t + 1 } \Pi_i^{t+1}=\Pi_i^t\cup\{\pi_i^{t+1}\} Πit+1=Πit{ πit+1}。在零和博弈中,需要 ∣ Π t ∣ |\Pi_t| Πt的多项式时间找到均衡,在一般和博弈中是PPAD-complete的(它们不是判定问题,纳什均衡点的存在性是有纳什定理直接保证的;它们也不是优化问题,因为没有一个优化的目标。从本质上讲,它们是一类不动点的计算问题,所以从传统的NP-Complete角度来研究他们的计算复杂度并不合适。但是否存在第二个均衡的问题是NP-Complete的)。
在这里插入图片描述

很明显,两人博弈中DO保证收到均衡,但是最差情况需要枚举整个策略空间,比如石头剪刀布。然而,有证据表明,许多博弈的支持大小会随着episode长度、隐藏信息揭示的多少和/或对收益的影响而缩小。已经开发了扩展式博弈的扩展,但由于维度灾难,大型状态空间仍然存在问题。

经验博弈论分析 (EGTA) 是对通过复杂博弈中的模拟获得的meta-strategies的研究。一个规模比完整博弈小得多的经验博弈是通过发现策略和对策略进行元推理以导航策略空间来构建的。当明确列举博弈策略的成本高得令人望而却步时,这是必要的。估计每个联合策略的期望效用并将其记录在经验收益表中。分析经验博弈,并继续模拟过程。EGTA 已被用于交易代理竞赛 (TAC) 和自动竞价拍卖。

作者的目标是通过学习发现新的策略,不是计算精确的BR,而是使用强化学习计算近似的BR,这在计算上更可行,fictitious play可以处理近似。考虑到有限理性的自然约束,它在生物学上也更合理。 在行为博弈论中,重点是预测人类采取的行动,并有意限制反应以提高预测能力。

Policy-Space Response Oracles

PSRO是 Double Oracle 的自然泛化,其中元博弈的选择是策略而不是行动。它还概括了fictitious play。与以前的工作不同,可以插入任何meta-solver来计算新的meta-strategy。在实践中,参数化策略(函数逼近器)用于在不需要任何领域知识的情况下在状态空间中进行泛化。
在这里插入图片描述
元博弈被表示为经验博弈,从单个策略(均匀分布)开始,每个epoch通过增加新的策略(oracle)增长,策略是其余玩家的meta-strategy的近似最优反应。在情节式的局部可观察多智能体环境,当其他玩家固定了,环境就变成马尔科夫性了,计算一个最优反应变成求解某种形式的MDP,因此任意RL算法都能用。在每个episode,一个玩家被设为oracle(learning)模式训练策略 π i ′ \pi_i' πi,一个固定的策略从对手的meta-strategy中采样( π − i ∼ σ − i \pi_{-i}\sim\sigma_{-i} πiσi)。每个epoch的结尾,新的oracle被加入他们的策略集 Π i \Pi_i Πi,新策略组合的期望效用通过仿真来计算,加入经验tensor U Π U^{\Pi} UΠ,时间复杂度 ∣ Π ∣ |\Pi| Π的指数级。

定义 Π T = Π T − 1 ∪ π ′ \Pi^T=\Pi^{T-1}\cup\pi' ΠT=ΠT1π作为包含当前正在学习的oracle的策略空间,

  • 迭代的最优反应是 σ − i = ( 0 , 0 , ⋯   , 1 , 0 ) \sigma_{-i}=(0,0,\cdots,1,0) σi=(0,0,,1,0)
  • InRL是 σ − i = ( 0 , 0 , ⋯   , 0 , 1 ) \sigma_{-i}=(0,0,\cdots,0,1) σi=(0,0,,0,1)
  • fictitious play是 σ − i = ( 1 / K , 1 / K , ⋯   , 1 / K , 0 ) \sigma_{-i}=(1/K,1/K,\cdots,1/K,0) σi=(1/K,1/K,,1/K,0)
  • DO是 n = 2 n=2 n=2 σ T \sigma^{T} σT是元博弈 ( Π T − 1 , U Π T − 1 ) (\Pi^{T-1},U^{\Pi^{T-1}}) (ΠT1,UΠT1)的纳什均衡

一个令人兴奋的问题是在这个已知空间之外的(非固定的)元求解器会发生什么?fictitious play与其所响应的策略无关;因此,它只能通过重复生成相同的最佳响应来锐化meta-strategy分布。另一方面,对由 Double Oracle 计算的均衡策略的响应将 (i) 在 n 玩家或一般和情况下过拟合特定均衡,以及 (ii) 无法推广到任何零和情况下的均衡策略未达到的空间部分。在计算在任何情况下都应该运行良好的一般策略时,这两种方法都是不可取的。作者试图通过折衷来平衡这些过拟合的问题:完全支持的meta-strategy,强制(mix in)策略选择的 γ \gamma γ探索。

Meta-Strategy Solvers

其输入经验博弈 ( Π , U Π ) (\Pi,U^{\Pi}) (Π,UΠ),输出每个玩家 i i i的meta-strategy σ i \sigma_i σi。作者尝试了三种:regret-matching, Hedge, 和 projected replicator dynamics。这些特定的元求解器为每个策略(“arm”)累积值,和一个根据所有玩家的meta-strategy的合计值。 u i ( σ ) u_i (\sigma) ui(σ)是给定所有玩家meta-strategy的玩家 i i i的期望值, U Π U^{\Pi} UΠ是当前经验收益tensor(通过多个tensor点积计算), u i ( π i , k , σ − i ) u_i(\pi_{i,k},\sigma_{-i}) ui(πi,k,σi)是玩家 i i i执行kth策略其他玩家执行meta-strategy的期望效用。使用探索参数 γ \gamma γ,导致下界为 γ K + 1 \frac{\gamma}{K+1} K+1γ的选择任意 π i , k \pi_{i,k} πi,k的概率。类似bandit算法,下面会提到。

具体的内容这里不做讨论,可以参考附录A。

Deep Cognitive Hierarchies

虽然 PSRO 的泛化性明显且有吸引力,但 RL 步骤可能需要很长时间才能收敛到良好的反应。在复杂的环境中,很多在一个 epoch 中学到的基本行为在从头开始时可能需要重新学习;此外,可能需要运行多个 epoch 以获得可以通过更深层次的突发事件进行递归推理的 oracle 策略(it may be desirable to run many epochs to get oracle policies that can recursively reason through deeper levels of contingencies)。

为了克服这些问题,作者引入了一种实用的并行形式的 PSRO。作者提前选择了固定数量的levels,而不是无限数量的 epoch。然后,对于 n 人游戏,并行启动 nK 个进程(level 0 agent是均匀随机的):每个为玩家 i i i和level k k k训练一个单独的oracle策略 π i , k \pi_{i,k} πi,k,并更新自己的meta-strategy σ i , k \sigma_{i,k} σi,k,定期将每个保存到中央磁盘。每个进程还维护当前和更低级别的所有其他oracle策略 π j , k ′ ≤ k \pi_{j,k'\le k} πj,kk的副本,以及当前级别的meta-strategy σ − i , k \sigma_{-i,k} σi,k的副本,这些副本从中央磁盘定期刷新。我们通过在线更新meta-strategy来规避显式存储 U Π U^{\Pi} UΠ。作者将其称为深度认知层次结构 (DCH),参考了 Camerer、Ho 和 Chong 用深度强化学习增强的模型。
在这里插入图片描述
在这里插入图片描述
由于每个进程使用稍微过时的其他进程的策略和meta-strategy,DCH近似PSRO。具体来说,它牺牲了与 PSRO 对应的准确性,以换取实际效率,尤其是可扩展性。DCH 的另一个好处是总空间复杂度的渐近减少。PSRO中,n个玩家K个策略需要存储经验收益tensor K n K^n Kn,DCH中的每个进程存储 n K nK nK个策略,n个meta-strategy,所以是 O ( n K ( n K + n K ) ) = O ( n 2 K 2 ) O(nK(nK+nK))=O(n^2K^2) O(nK(nK+nK))=O(n2K2)。或许是由于使用了解耦的meta-solver,在线计算策略,不需要收益tensor。

Decoupled Meta-Strategy Solvers

在在线学习领域,专家算法(“完全信息”条件)在每一轮都会收到有关每个arm的信息。在bandit(“部分信息”)情况下,仅对被拉动的arm给出反馈。解耦的元求解器本质上是应用于博弈的基于样本的对抗性bandit。由于folk定理,经验strategy在某些类型的博弈(即零和、potential博弈)中收敛到纳什均衡。

作者尝试了三种:解耦regret-matching、Exp3 (decoupled Hedge)和解耦 PRD。 γ \gamma γ概率混入均匀strategy,这个探索对于确保估计无偏是必要的。对于解耦 PRD,为整体平均值维护移动平均值作为每个arm(策略)的值(we maintain running averages for the overall average value an value of each arm (policy))。与 PSRO 不同的是,在 DCH 的情况下,一次获取一个样本,并根据在线估计定期更新元策略。

Experiments

猜你喜欢

转载自blog.csdn.net/qq_38163755/article/details/121388872