多智能体强化学习_多智能体强化学习的几种Best Practice

(草稿阶段,完成度40%)

这里分享一下A Survey and Critique of Multiagent Deep Reinforcement Learning这篇综述里面介绍的多智能体强化学习Best Practice。这部分内容大部分来自第四章,但是我根据自己的理解加上了其他的内容。

1.改良Experience replay buffer

1.1 传统的Single-agent场景之下的Replay buffer


Replay Buffer[90, 89]自从被提出后就成了Single-Agent强化学习的常规操作,特别是DQN一炮走红之后 [72] 。不过,Replay Buffer有着很强的理论假设,用原作者的话说是——

The environment should not change over time because this makes past experiences irrelevantor even harmful. (环境不应随时间而改变,因为这会使过去的experience replay变得无关紧要甚至有害)

Replay buffer假设环境是stationary的,如果当前的环境信息不同于过去的环境信息,那么就无法从过去环境的replay中学到有价值的经验。(画外音:大人,时代变了……别刻舟求剑了)
在multi-agent场景下,每个agent都可以把其他的agent当作环境的一部分。因为其他的agent不断地学习进化,所以agent所处的环境也是在不断变换的,也就是所谓的non-stationary。
因为multi-agent场景不符合replay buffer的理论假设,所以有的人就直接放弃治疗了——例如2016年发表的大名鼎鼎的RIAL和DIAL中就没有使用replay buffer。(原文题目 Learning to communicate with deep multi-agent reinforcement learning)
另一批人怀着还能抢救一下的态度,提出了许多改良Replay buffer的思路,下面简单介绍一下——1.2 Multi-agent场景之下的改良版Replay buffer


如果说两个环境差别太大会导致无法学习,那么是不是可以认为两个差别较小的环境之间可以进行replay buffer共享呢?大多数对Replay buffer的改良思路都是基于增加时序信息,以挑选那些具有一定参考价值的buffer进行学习(disambiguate the age of the sampled data from the replay memory)
目前有两种具体的实现方式:

  1. 重要性采样(Multi-agent Importance Sampling),把联合动作概率(the joint action probability)纳入采样的过程。
    1. 2000年发表的[218] Eligibility traces for off-policy policy evaluation
  2. 指纹标记(Fingerprints),所谓的指纹就是一种可以标识sampled data新旧程度的value function。具体说就是把对其他agent policy的estimate添加到replay buffer中。
    1. 2017年发表的[168] Stabilising Experience Replay for Deep Multi-Agent Reinforcement Learning,提出了Fingerprints思想。

有一些Value-based方法使用了上面的思路

  1. 2017年发表的[166] Deep Decentralized Multi-task Multi-Agent Reinforcement Learning under Partial Observability,即DEC-HDRQNs。
  2. 2018年发表的[35] Lenient Multi-Agent Deep Reinforcement Learning,即LDQN。LDQN在处理replay buffer方面与Fingerprint比较相似——LDQN把leniency value加到replay buffer中作为条件判断。(关于Lenient的概念会在后面介绍)
  3. 2018年发表的[178] Weighted double deep multiagent reinforcement learning in stochastic cooperative environments,即WDDQN。WDDQN中也使用了lenient reward。

有一些Policy-gradient方法也使用了上面的思路,例如MADDPG
关于Lenient的概念可以参考2010年发表的Lenient frequency adjusted Q-learning。1.3 其他问题
还有许多学者思考如何把DRL思路融合进Replay buffer中,例如

  1. 2016年发表的[287] Combating Reinforcement Learning's Sisyphean Curse with Intrinsic Fear.
  2. 2016年发表的[111] Prioritized Experience Replay,
  3. 2017年发表的[286] Hindsight experience replay.
  4. 2018年发表的[96] Selective experience replay for lifelong learning,
  5. 2018年发表的[288] Experience selection in deep reinforcement learning for control.

2. 中心化学习与非中心化执行

许多multi-agent系统采用了极端中心化或者极端去中心化的范式,而更多的算法使用了Centralized learning with decentralized execution这种混合范式。我把这种思路理解成“集体学习、因地制宜”。
这类算法的优点是在learning阶段使用许多附加信息(例如global state、action和reward),然后在execution阶段移除上述附加信息。
首先可以看看decentralized partially observable Markov decision processes (DEC-POMDPs),参考文献是 [290] A concise introduction to decentralized POMDPs. 2016
最近几年这些混合方式的代表有——

  1. 2017年的[63] Multi-Agent Actor-Critic for Mixed Cooperative-Competitive Environments,这是大名鼎鼎的MADDPG,开源代码有 https://github.com/openai/maddpg、https://github.com/google/maddpg-replication。
  2. 2017年的[167] Counterfactual Multi-Agent Policy Gradients,这是大名鼎鼎的COMA,开源代码有 https://github.com/oxwhirl/pymarl
  3. 2017年的[168] Stabilising Experience Replay for Deep Multi-Agent Reinforcement Learning,开源代码有 https://paperswithcode.com/paper/stabilising-experience-replay-for-deep-multi
  4. 2017年的[172] A Unified Game-Theoretic Approach to Multiagent Reinforcement Learning,开源代码有 belepi93/lasertag-v0
  5. 2018年的[35] Lenient Multi-Agent Deep Reinforcement Learning,开源代码有 https://paperswithcode.com/paper/lenient-multi-agent-deep-reinforcement
  6. 2018年的[181] QMIX - MonotonicValue Function Factorisation for Deep Multi-Agent Reinforcement Learning,这是大名鼎鼎的QMIX,开源代码有 starry-sky6688/StarCraft (QMIX + VDN + COMA + QTRAN + CommNet )

完全去中心化的代表是[166] Deep Decentralized Multi-task Multi-Agent Reinforcement Learning under Partial Observability. 2017
这里要注意,在现实世界场景中(例如机器人),这种算法的实用性还没得到证明。[152]

3. 参数共享

参数共享(Parameter Sharing)也被广泛用在许多MDRL应用中。有两篇论文独立提出Parameter Sharing的思想——

  1. Foerster发在NIPS2016上的RIAL和DIAL算法,论文题目是Learning to communicate with deep multi-agent reinforcement learning,开源代码有 minqi/learning-to-communicate-pytorch 和 dial.ipynb。
  2. Gupta发在AAMAS2017上,题目是Cooperative Multi-agent Control using deep reinforcement learning,开源代码有 https://github.com/sisl/MADRL。

Parameter Sharing被应用在许多其他工作中——

  1. 2016年的[163] Learning Multiagent Communication with Backpropagation,开源代码有 KornbergFresnel/CommNet
  2. 2017年的[164] Multiagent Bidirectionally-Coordinated Netsfor Learning to Play StarCraft Combat Games,开源代码有 Coac/CommNet-BiCnet
  3. 2017年的[168] Stabilising ExperienceReplay for Deep Multi-Agent Reinforcement Learning, 开源代码有 Papers With Code : Stabilising Experience Replay for Deep Multi-Agent Reinforcement Learning
  4. 2018年的[180] Value-Decomposition Networks For Cooperative Multi-Agent Learning BasedOn Team Reward,这是大名鼎鼎的VDN,开源代码有 oxwhirl/pymarl (内含有QMIX + COMA + VDN + IQL + QTRAN)
  5. 2018年的[181] QMIX - MonotonicValue Function Factorisation for Deep Multi-Agent Reinforcement Learning,这是大名鼎鼎的QMIX(是针对VDN的改进版),开源代码有 starry-sky6688/StarCraft (内含有QMIX + VDN + COMA + QTRAN + CommNet )

这里需要注意的是,虽然agent之间会传递参数,但是考虑到agent在partially observable scenarios中会收到不同的观察信息,所以agent的最终动作必然存在差异。

4. 循环神经网络

RNN在DRL领域中比较著名的例子是DRQN [85] ,这篇论文希望可以用RNN内置的memory模块来学习partially observable environments的某些信息。
Then, Feudal Networks [229] proposed a hierarchical approach [230], multiple LSTM networks with different time-scales, i.e., the observation input schedule is different for each LSTM network, to create a temporal hierarchy so that it can better address the long-term credit assignment challenge for RL problems.
不仅仅是Single-agent环境,RNN也可以用在multi-agent环境中,特别是那些需要partially observability的任务。
2018年发表的[158] Emergent Complexity via Multi-Agent Competition,开源代码有 https://github.com/openai/multiagent-competition
[170] Modeling Others using Oneself in Multi-Agent Reinforcement Learning. 2018
[171] Deep Policy Inference Q-Network for Multi-Agent Systems. 2018
[174] Machine Theory of Mind. 2018
祖师爷的RIAL和DIAL也使用了RNN,BiCNet、VDN和QMIX也属于这一类。

特别指出:FTW [179] 和 DRPIRQN [171]
2018发表的[171] Deep Policy Inference Q-Network for Multi-Agent Systems,大名鼎鼎的FTW,
2019发表的[179] Human-level performance in 3D multiplayer games with population-based reinforcement learning,发表在Science上大名鼎鼎的DRPIRQN,
实验计算方面:
Melis et al. [327] compared a series of works with increasing innovations in network architectures and the vanilla LSTMs [86] (originally proposed in 1997).The results showed that, when properly tuned, LSTMs outperformed the more recent models

5.处理过拟合问题

不仅仅在监督学习中存在overfitting,在强化学习中同样也存在着overfitting。一直以来,强化学习的泛化能力就被诟病 [296], multi-agent RL中的问题更甚 [254]。
[296] Protecting against evaluation overfitting in empirical reinforcement learning 2011
[254] Accelerating best response calculation in large extensive games 2011
为了处理过拟合问题,有两种处理方法:
一、有些学者用了ensemble的方法。
[63] MADDPG
[169] Opponent modeling in deep reinforcement learning . 2016
hhexiy/opponent (Lua-Torch)
[172] A Unified Game-Theoretic Approach to Multiagent Reinforcement Learning 2017
belepi93/lasertag-v0
二、有些人用鲁棒算法来做
[183] Robust multi-agent reinforcement learning via minimaxdeep deterministic policy gradient. AAAI2019

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值