相关连接:
ECKai:多智能体强化学习入门(一)——基础知识与博弈zhuanlan.zhihu.com附录:
ECKai:附:强化学习——DRQN分析详解zhuanlan.zhihu.com
一、引言
多智能体系统一直在学术界或者工业届都是一个热点。其核心领域是关于如何将系统采用分布式的算法控制。在分布式算法中,没有一个中心节点进行总体控制,每个智能体通过与环境交互自己学习自己的最优策略,在不知道全局信息的情况下将策略收敛到纳什均衡点。通常意义下,智能体只知道自身获得的奖励值,不知道环境中的奖励函数,不知道其他智能体的策略,不知道其他智能体获得的奖励。分布式算法主要的核心难点是如何在只使用不完整信息的情况下,使每个智能体学到的策略收敛到纳什均衡点。
上一篇文章提到了很多多智能体强化学习算法,在很多算法中都要使用线性规划或者二次规划来求解矩阵博弈的纳什均衡点,在本章中将给出4种学习算法来求解每个矩阵博弈的纳什均衡策略。
矩阵博弈的学习算法可以分为两类,其中一类利用学习自动机(learning automata)思想,另一类利用梯度提升(gradient ascent)思想。下面根据这两种分类独立介绍每种算法。
二、矩阵博弈的学习算法
矩阵博弈的学习算法是指每个智能体不断与环境交互,通过获得的奖励值来更新优化其策略,最终使策略能够收敛到博弈的纳什均衡点。矩阵博弈的学习算法可以分为学习自动机和梯度提升两类,下面从这两个角度开始介绍。
1. 学习自动机
学习自动机是一种通过与环境交互获得奖励来修改动作空间中每个动作的概率分布,从而提升优化策略的方法。学习自动机是一种完全分布式的算法,每个智能体只用知道自己的策略与奖励值,不需要知道环境信息以及其他智能体的信息。
学习自动机通常可以用一个元组表示为
a.
如上式所示,k为时刻;
其意义就是将优秀的动作的选择概率提高,为了保证归一性,则将其其他动作被选择的概率。该算法只能在博弈只具有纯策略的纳什均衡点的时候可以收敛。
b.
在
算法中的学习速率应该满足
该算法只能应用于只有混合策略纳什均衡的博弈中。
2. 梯度提升学习算法
梯度提升学习算法在很多地方都有用到,强化学习的随机策略梯度算法SPG,DPG,AC,A2C,A3C等算法都有用到这种思想。使策略的更新方向沿着累积回报增加最大的梯度方向。但是有人证明,梯度提升学习算法并不能在所有的矩阵博弈中的到收敛解。但是在某些特定的约束博弈中,有一些梯度提升算法可以求解其纳什均衡。下面介绍几种常见的算法。
a. WoLF-IGA
WoLF-IGA但并不是一个实用的分布式算法,后面会分析原因。该算法使用上一节介绍的WoLF(Win or learn fast)思想与梯度提升结合。获胜或优秀策略的含义是指当前策略的累积预期奖励大于当前玩家纳什均衡策略和其他玩家实用当前策略的累积预期奖励。当前策略获胜时则谨慎缓慢学习,给其他智能体适应策略变化的时间;当前策略较差时,快速更新调整,使其能够快速调整适应其他智能体策略变化。WoLF-IGA只适用于双智能体双动作矩阵博弈。WoLF-IGA根据累计奖励关于策略的梯度来修正策略,其目的是使更新后的策略能够获得更大的奖励值。
令
WoLF-IGA算法的难点在于需要已知大量信息。其信息包括自身的奖励矩阵、其他玩家的策略以及自己的纳什均衡。虽然智能体知道自己的奖励矩阵,也会得到纳什均衡策略。但这样大量的已知信息导致这个算法并不是一个实用的算法,也不是一个分布式的算法。
该算法的收敛性条件为:双智能体双行动一般和矩阵博弈,且纳什均衡为纯策略或混合策略。
b. Lagging Anchor算法
Lagging Anchor算法是应用于双智能体零和博弈的算法。其并不是一个分布式算法,具体原因后面会分析。
我们定义
其中,
收敛条件:在双智能体零和博弈中,只有完全混合策略。对于纯策略的收敛情况目前还没有人证明。
由于这个算法需要用到每一个智能体的奖励矩阵
相关连接:
ECKai:多智能体强化学习入门(一)——基础知识与博弈zhuanlan.zhihu.com附录:
ECKai:附:强化学习——DRQN分析详解zhuanlan.zhihu.com