update contents in rl chapter

This commit is contained in:
quantumiracle
2022-05-21 12:21:58 -04:00
parent ec55509b75
commit 19b633fbff
8 changed files with 62 additions and 6 deletions

View File

@@ -12,7 +12,7 @@
由上述介绍和定义可以发现多智能体强化学习是一个比单智能体强化学习更加复杂的问题。而实际上多个智能体的存在对于每个智能体的决策而言绝对不是简单的把每个单智能体决策累加的难度实际情况要比单智能体决策问题复杂很多。多智能体系统的研究实际上是门古老的学科它与博弈论Game Theory密切相关在深度强化学习盛行以前早已有大量研究和许多理论上未解的难题。其中一个典型的问题是纳什均衡在双人非零和博弈下没有多项式时间内可解的方法实际上这是一个PPADPolynomial Parity Argument, Directed version类的问题。见论文Settling the Complexity of Computing Two-Player Nash Equilibria. Xi Chen, et al.)由于篇幅限制,我们这里无法对多智能体问题做深入探讨,我们可以用一个简单例子来介绍为什么多智能体强化学习问题无法简单地用单智能体强化学习算法来解。
:剪刀石头布奖励值
:剪刀-石头-布奖励值
| | 剪刀 | 石头 | 布 |
| --- | ------- | ------- | ------- |
@@ -21,6 +21,19 @@
| 布 | (-1,+1) | (+1,-1) | (0,0) |
:label:`tab_ch12_ch12_marl`
我们考虑一个大家都熟悉的游戏就“剪刀石头、布”,考虑两个玩家玩这个游戏的输赢情况,剪刀<石头<布<剪刀...”,这里的“<”即前一个纯策略被后一个纯策略完全压制,我们给予奖励值-1、+1到这两个玩家当他们选择相同的纯策略时奖励值均为0。于是我们得到一个奖励值表如 :numref:`tab_ch12_ch12_marl`所示横轴为玩家1纵轴为玩家2表内的数组为玩家1和玩家2各自在相应动作下得到的奖励值。由于这个矩阵的反对称性这个问题的纳什均衡策略对两个玩家相同均为$(\frac{1}{3}, \frac{1}{3}, \frac{1}{3})$的策略分布,即有各$\frac{1}{3}$的概率出剪刀、石头或布。如果我们把得到这个纳什均衡策略作为多智能体学习的目标那么我们可以简单分析得到这个均衡策略无法通过简单的单智能体算法得到。考虑我们随机初始化两个玩家为任意两个纯策略比如玩家1出剪刀玩家2出石头。这时假设玩家2策略固定可以把玩家2看做固定环境的一部分于是可以使用任意单智能体强化学习算法对玩家1进行训练使其最大化自己的奖励值。于是玩家1会收敛到布的纯策略。这时再把玩家1固定训练玩家2玩家2又收敛到剪刀的纯策略。于是循环往复整个训练过程始终无法收敛玩家1和2各自在3个策略中循环却无法得到正确的纳什均衡策略。
我们考虑一个大家都熟悉的游戏 剪刀-石头-布,考虑两个玩家玩这个游戏的输赢情况,我们知道有这样的输赢关系:剪刀<石头<布<剪刀...这里的“<”即前一个纯策略被后一个纯策略完全压制,我们给予奖励值-1、+1到这两个玩家当他们选择相同的纯策略时奖励值均为0。于是我们得到一个奖励值表如 :numref:`tab_ch12_ch12_marl`所示横轴为玩家1纵轴为玩家2表内的数组为玩家1和玩家2各自在相应动作下得到的奖励值。由于这个矩阵的反对称性这个问题的纳什均衡策略对两个玩家相同均为$(\frac{1}{3}, \frac{1}{3}, \frac{1}{3})$的策略分布,即有各$\frac{1}{3}$的概率出剪刀、石头或布。如果我们把得到这个纳什均衡策略作为多智能体学习的目标那么我们可以简单分析得到这个均衡策略无法通过简单的单智能体算法得到。考虑我们随机初始化两个玩家为任意两个纯策略比如玩家1出剪刀玩家2出石头。这时假设玩家2策略固定可以把玩家2看做固定环境的一部分于是可以使用任意单智能体强化学习算法对玩家1进行训练使其最大化自己的奖励值。于是玩家1会收敛到布的纯策略。这时再把玩家1固定训练玩家2玩家2又收敛到剪刀的纯策略。于是循环往复整个训练过程始终无法收敛玩家1和2各自在3个策略中循环却无法得到正确的纳什均衡策略。
我们在上面这个例子中采用的学习方法其实是多智能体强化学习中最基础的一种叫自学习Selfplay。我们可以看到自学习在特定的任务设置下可能无法收敛到我们想要的最终目标。正是由于多智能体学习过程中有类似循环结构的出现我们需要更复杂的训练方法和专门针对多智能体的学习方式来达到我们想要的目标。一般来讲多智能体强化学习是比单智能体强化学习更复杂的一类对于自学习的方法而言单智能体强化学习的过程可以看做一个多智能体强化学习的子任务。从前面这一小游戏的角度来理解当玩家1策略固定时玩家1加游戏环境构成玩家2的实际学习环境由于这个环境是固定的玩家2可以通过单智能体强化学习来达到自身奖励值最大化这时再固定玩家2的策略玩家1又可以进行单智能体强化学习......这样单智能体强化学习是多智能体任务的子任务。其他算法如虚构自学习Fictitious Self-play需要在每个单智能体强化学习的步骤中对对手历史策略的平均策略求得最优应对策略而对手的训练也是如此进行循环能够在上面剪刀-石头-布一类的游戏中保证收敛到纳什均衡策略。
![自学习算法示意图。](../img/ch12/ch12-marl-sp.png)
:width:`600px`
:label:`ch12/ch12-marl-sp`
我们在上面这个例子中采用的学习方法其实是多智能体强化学习中最基础的一种叫自学习Selfplay如 :numref:`ch12/ch12-marl-sp`所示。自学习的方法即固定当前对首次策略按照单智能体优化的方法最大化一侧智能体的表现这一过程称为最佳反应策略Best Response Strategy。之后再将这一最佳反应策略作为该智能体的固定策略再来优化另一边的智能体策略如此循环。我们可以看到自学习在特定的任务设置下可能无法收敛到我们想要的最终目标。正是由于多智能体学习过程中有类似循环结构的出现我们需要更复杂的训练方法和专门针对多智能体的学习方式来达到我们想要的目标。一般来讲多智能体强化学习是比单智能体强化学习更复杂的一类对于自学习的方法而言单智能体强化学习的过程可以看做一个多智能体强化学习的子任务。从前面这一小游戏的角度来理解当玩家1策略固定时玩家1加游戏环境构成玩家2的实际学习环境由于这个环境是固定的玩家2可以通过单智能体强化学习来达到自身奖励值最大化这时再固定玩家2的策略玩家1又可以进行单智能体强化学习......这样单智能体强化学习是多智能体任务的子任务。其他算法如虚构自学习Fictitious Self-play :numref:`ch12/ch12-marl-fsp`,需要在每个单智能体强化学习的步骤中,对对手历史策略的平均策略求得最优应对策略,而对手的训练也是如此,进行循环,能够在上面剪刀-石头-布一类的游戏中保证收敛到纳什均衡策略。
![虚构自学习算法示意图。](../img/ch12/ch12-marl-fsp.png)
:width:`600px`
:label:`ch12/ch12-marl-fsp`

View File

@@ -10,9 +10,18 @@
我们将对构建多智能体强化学习系统中的困难分为以下几点进行讨论:
* **智能体个数带来的复杂度**从单智能体系统到多智能体系统最直接的变化就是智能体个数从1变为大于1个。对于一个各个智能体独立的$N$智能体系统而言,这种变化带来的策略空间表示复杂度是指数增加的,即$\tilde{O}(e^N)$。举个简单的例子,对于一个离散空间的单智能体系统,假设其状态空间大小为$S$, 动作空间大小为$A$,游戏步长为$H$,那么这个离散策略空间的大小为$O(HSA)$;而直接将该游戏扩展为$N$玩家游戏后,所有玩家策略的联合分布空间大小为$O(HSA^N)$。这是因为每个独立玩家的策略空间构成联合策略空间是乘积关系$\mathcal{A}=\mathcal{A}_1\times\dots\mathcal{A}_N$。而这将直接导致算法搜索复杂度提升。
* **智能体个数带来的复杂度**从单智能体系统到多智能体系统最直接的变化就是智能体个数从1变为大于1个。对于一个各个智能体独立的$N$智能体系统而言,这种变化带来的策略空间表示复杂度是指数增加的,即$\tilde{O}(e^N)$。举个简单的例子,对于一个离散空间的单智能体系统,假设其状态空间大小为$S$, 动作空间大小为$A$,游戏步长为$H$,那么这个离散策略空间的大小为$O(HSA)$;而直接将该游戏扩展为$N$玩家游戏后,在最一般的情况下,即所有玩家有对称的动作空间动作空间大小为$A$且不共享任何结构信息,所有玩家策略的联合分布空间大小为$O(HSA^N)$。这是因为每个独立玩家的策略空间构成联合策略空间是乘积关系$\mathcal{A}=\mathcal{A}_1\times\dots\mathcal{A}_N$。而这将直接导致算法搜索复杂度提升。
* **游戏类型带来的复杂度**:从博弈论的角度,多智能系统所产生的游戏类型是复杂的。从最直接的分类角度,有竞争型、合作型、混合型。在竞争型游戏中,最典型的研究模型是二人零和博弈,如前一小结中提到的剪刀-石头-布的游戏。这类游戏中的纳什均衡策略一般为混合型策略即无法通过单一纯策略达到均衡条件。纯策略纳什均衡存在于少数零和游戏中。合作型游戏即多个智能体需要通过合作来提升整体奖励。在这类问题研究中一般采用基于值分解的思路将所有智能体得到的奖励值分配到单个智能体作为其奖励值。这一类的算法有VDN :cite:`sunehag2017value`, COMA :cite:`foerster2018counterfactual`, QMIX :cite:`rashid2018qmix`等。在混合型游戏中部分智能体之间为合作关系部分智能体或智能体的集合间为竞争关系。一般的非零和博弈且非纯合作型游戏为混合型游戏举个简单的例子如囚徒困境Prisoner's Dilemma 其奖励值表如 :numref:`tab_ch12_ch12_marl_prison`所示。囚徒困境的两个玩家各有两个动作沉默和背叛。可以用警察审查两名罪犯来理解奖励值的绝对值即他们将被判处的年数。纯所有玩家的奖励值之和非常数故其为非零和博弈型游戏。因此这一游戏不能被认为是纯竞争型或纯合作型游戏因为当他们中的一方选择沉默一方选择背叛时二者没有有效合作而一方拿到了0的奖励另一方为-3。而两者都选择沉默时是一种合作策略各自拿到-1的奖励值。尽管这一策略看起来优于其他策略但是这并不是这个游戏的纳什均衡策略因为纳什均衡策略假设玩家间策略需要单独制定无法形成联合策略分布。这实际上切断了玩家间的信息沟通和潜在合作的可能。因此囚徒困境的纳什均衡策略是两个玩家都选择背叛对方。诸如此类的博弈论游戏类型导致单智能体强化学习不能被直接用来优化多智能体系统中的各个智能体的策略。单智能体强化学习一般是找极值的过程而多智能体系统求解纳什均衡策略往往是找极大极小值即鞍点的过程从优化的角度看这也是不同的。复杂的关系需要更普适的系统进行表达这也对多智能体系统的构建提出了挑战。多智能体游戏类型也有许多其他的分类角度如单轮进行的游戏、多轮进行的游戏、多智能体同时决策的、多智能体序贯决策等等每一类不同的游戏都有相应不同的算法。而现有的多智能体系统往往针对单一类型游戏或者单一算法缺少普适性多智能体强化学习系统尤其是分布式的系统。
:囚徒困境奖励值
| | 沉默 | 背叛 |
| --- | ------- | ------- |
| 沉默 | (-1,-1) | (-3,0) |
| 背叛 | (0,-3) | (-2,-2) |
:label:`tab_ch12_ch12_marl_prison`
* **游戏类型带来的复杂度**:从博弈论的角度,多智能系统所产生的游戏类型是复杂的。从最直接的分类角度,有竞争型、合作型、混合型。在混合型游戏中,部分智能体之间为合作关系,部分智能体或智能体的集合间为竞争关系。复杂的关系需要更普适的系统进行表达,这也对多智能体系统的构建提出了挑战。多智能体游戏类型也有许多其他的分类角度,如单轮进行的游戏、多轮进行的游戏、多智能体同时决策的、多智能体序贯决策等等,每一类不同的游戏都有相应不同的算法。而现有的多智能体系统往往针对单一类型游戏或者单一算法,缺少普适性多智能体强化学习系统,尤其是分布式的系统。
* **算法的异构**从前面介绍的几个简单的多智能体算法如自学习、虚构自学习等可以看出多智能体算法有时由许多轮单智能体强化学习过程组成。而对不同的游戏类型算法的类型也不相同。比如对合作型游戏许多算法是基于奖励分配Credit Assignment的思想如何将多个智能体获得的共同奖励合理分配给单个智能体是这类算法的核心。而这里面按照具体算法执行方式也可以分为集成训练统一执行的Centralized Training Centralized Execution、集成训练分别执行的Centralized Training Decentralized Execution、分别训练并分别执行Decentralized Training Decentralized Execution的几类来描述不同智能体训练过程和执行过程的统一性。对于竞争型游戏往往采用各种计算纳什均衡的近似方法如前面提到的虚构自学习、Double Oracle、Mirror Descent等等将获取单个最优策略的单智能体强化学习过程看做一个“动作”而对这些“动作”组成的元问题上进行纳什均衡近似。现有的算法在类似问题上有很大的差异性使得构建一个统一的多智能体强化学习系统比较困难。

View File

@@ -1,6 +1,6 @@
## 强化学习介绍
近年来强化学习作为机器学习的一个分支受到越来越多的关注。从2013年起DeepMind公司的研究人员就提出深度Q学习Deep Q-learning用于学习7个不同的电子游戏中对象的操作。自此以后以DeepMind为首的科研机构推出了像AlphaGo下围棋这类的引人瞩目的强化学习成果并在2016年与世界顶级围棋高手李世石的对战中取得胜利。自那以后强化学习领域连续取得了一系列成就如星际争霸游戏智能体AlphaStar、Dota 2游戏智能体OpenAI Five、多人零和博弈德州扑克的Pluribus、机器狗运动控制算法等。在这一系列科研成就的背后是整个强化学习领域算法在这些年内快速迭代进步的结果基于模拟器产生的大量数据使得对数据“饥饿”Data Hungry的深度神经网络能够表现出很好的拟合效果从而将强化学习算法的能力充分发挥出来在以上领域中达到或者超过人类专家的学习表现。目前强化学习已经从电子游戏逐步走向更广阔的应用场景如机器人控制、机械手灵巧操作、能源系统调度、网络负载分配、股票期货交易等一系列更加现实和富有意义的领域对传统控制方法和启发式决策理论发起冲击。
近年来强化学习作为机器学习的一个分支受到越来越多的关注。从2013年起DeepMind公司的研究人员就提出深度Q学习 :cite:`mnih2013playing`Deep Q-learning用于学习7个不同的电子游戏中对象的操作。自此以后以DeepMind为首的科研机构推出了像AlphaGo下围棋这类的引人瞩目的强化学习成果并在2016年与世界顶级围棋高手李世石的对战中取得胜利。自那以后强化学习领域连续取得了一系列成就如星际争霸游戏智能体AlphaStar、Dota 2游戏智能体OpenAI Five、多人零和博弈德州扑克的Pluribus、机器狗运动控制算法等。在这一系列科研成就的背后是整个强化学习领域算法在这些年内快速迭代进步的结果基于模拟器产生的大量数据使得对数据“饥饿”Data Hungry的深度神经网络能够表现出很好的拟合效果从而将强化学习算法的能力充分发挥出来在以上领域中达到或者超过人类专家的学习表现。目前强化学习已经从电子游戏逐步走向更广阔的应用场景如机器人控制、机械手灵巧操作、能源系统调度、网络负载分配、股票期货交易等一系列更加现实和富有意义的领域对传统控制方法和启发式决策理论发起冲击。
![强化学习框架](../img/ch12/ch12-rl.png)

BIN
img/ch12/ch12-marl-fsp.pdf Normal file

Binary file not shown.

BIN
img/ch12/ch12-marl-fsp.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 45 KiB

BIN
img/ch12/ch12-marl-sp.pdf Normal file

Binary file not shown.

BIN
img/ch12/ch12-marl-sp.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

View File

@@ -20,6 +20,40 @@
publisher={MIT Press}
}
@article{mnih2013playing,
title={Playing atari with deep reinforcement learning},
author={Mnih, Volodymyr and Kavukcuoglu, Koray and Silver, David and Graves, Alex and Antonoglou, Ioannis and Wierstra, Daan and Riedmiller, Martin},
journal={arXiv preprint arXiv:1312.5602},
year={2013}
}
@article{sunehag2017value,
title={Value-decomposition networks for cooperative multi-agent learning},
author={Sunehag, Peter and Lever, Guy and Gruslys, Audrunas and Czarnecki, Wojciech Marian and Zambaldi, Vinicius and Jaderberg, Max and Lanctot, Marc and Sonnerat, Nicolas and Leibo, Joel Z and Tuyls, Karl and others},
journal={arXiv preprint arXiv:1706.05296},
year={2017}
}
@inproceedings{rashid2018qmix,
title={Qmix: Monotonic value function factorisation for deep multi-agent reinforcement learning},
author={Rashid, Tabish and Samvelyan, Mikayel and Schroeder, Christian and Farquhar, Gregory and Foerster, Jakob and Whiteson, Shimon},
booktitle={International Conference on Machine Learning},
pages={4295--4304},
year={2018},
organization={PMLR}
}
@inproceedings{foerster2018counterfactual,
title={Counterfactual multi-agent policy gradients},
author={Foerster, Jakob and Farquhar, Gregory and Afouras, Triantafyllos and Nardelli, Nantas and Whiteson, Shimon},
booktitle={Proceedings of the AAAI conference on artificial intelligence},
volume={32},
number={1},
year={2018}
}
@inproceedings{krizhevsky2012imagenet,
title={Imagenet classification with deep convolutional neural networks},
author={Krizhevsky, Alex and Sutskever, Ilya and Hinton, Geoffrey E},