1.多智能体建模
多智能体强化学习任务一般被建模为一个分布式部分可观测马尔科夫决策过程,可表征为六元组:{A,S,O,U,P,R,omiga}
A:决策主体,为所有参与决策的多智能体集合。
S:状态空间,所有智能体可能的状态集合。()
U:表示动作空间,所有智能体的可能动作集合。
P:状态转移概率,联合动作的转移概率。
R:回报函数,联合动作的回报函数
Omiga:观测函数。这是和单智能体强化学习不同的地方。那么什么是观测?
O:观测空间。
下面是一篇关于多智能体环境的博客,帮助理解上述概念。
多智能体环境设计(一)_多智能体设计-CSDN博客
FAQ:
Q1.什么是可观测?
A:观测指智能体在环境中能够感知到的全局状态信息。在多智能体环境中,每个智能体只能观察到局部环境的状态,这种局部观察被称为部分可观察性。不同智能体的观测可能不同,这取决于它们的位置、视角和感知能力。观测的差异性可能导致智能体之间的信息不对称,需要设计合适的通信机制来弥补这种差异。
Q2.这里的动作和状态是局部动作还是全局动作?是针对一个智能体来说的,还是整个多智能体西宫来说的?
A:多智能体系统重,分为全局联合动作和局部动作。这里指的动作空间,我觉得应该是局部动作。
Q3.什么是观测和观测函数?
全局处于一个联合状态S。单智能体中,agent根据所处状态选择动作。而多智能体系统,由于智能体对环境的部分可观测性,智能体选择动作时基于的是对环境的观察,当环境完全可观测时,S=O。通过观测函数,系统联合状态S到该智能体的观测O的映射,每个智能体根据自己的观测O选择将执行的动作U。
Q4:什么是稳态?
单智能体强化学习算法,其基本假设是动态环境是稳态的(),即状态转移概率和奖励函数不变,并依此来设计相应的算法。
2.多智能体系统几种模式 2.1集中式学习
输入:整体状态。
输出:各个智能体动作的指派。
缺点:随着智能体增多,动作状态空间指数增加,扩展性差。->使用分布式,解决扩展性的问题。
2.2集中训练分布执行——CTDE
在训练阶段,智能体利用全局信息集中学习。
在执行阶段,智能体仅利用自身观测和状态和局部信息选择策略。
常见的算法:VDN,QMIX,QTRAN,
2.2.1 QMIX
QMIX是一个典型的CTDE算法,维护了一个中心网络,这个网络的作用可以理解为合理的分配各个智能体的加权。输入是各个agent的Q值,输出是经过网络多层组合的全局Q值。注意:训练网络时,输入是智能体的状态St,训练的目标是取得更恰当的网络权重。
B站的这个视频的例子可以更好的帮助理解。选择用左边的表还是右边的表各,选定后,和同时执行动作A或者B,以得到集体最大收益。
QMIX: Value for Deep Multi-Agent 哔哩哔哩
2.2.
中心化的Q,Q值的输出基于全局的动作和状态。
DDPG是一个确定习惯策略,因此输出的动作是一个确定的值。一般要加一个动作噪声Nt,加强动作的随机性,以免陷入局部极小。DDPG名字里的第一个D是的缩写,意思是确定性的,这是有意与正宗 Actor- 方法(如 A2C/A3C 等)区分开,后者 输出的是 的概率分布,而 DDPG 输出的就是确定性的 。正因为如此,DDPG 采用了独特的探索方式,即在 输出直接加上一个 noise,该 noise 的强弱决定了探索力度,本质上相当于以当前 为中心形成了一个概率分布,每次更新都使 向该分布中更好的方向演化,直到 达到了最优,此时对应分布内其他方向都是更差的方向, 输出也就稳定在最优 附近了,从而实现了探索和利用的平衡。注:DDPG中使用了 ,是off-。
ps:DDPG vs A3C
针对 DQN 无法处理连续控制任务的缺点,DDPG 在 DQN 的基础上做了改进,引入了一个输出连续 的显式 ,与Q函数组成 Actor- 结构,更新 网络的梯度完全来自于 Q 网络,目标是最大化当前的 Q 函数。
两种算法使用的架构都是actor-架构,不同的在于A3C的提出引入了并发的思想,通过多个线程独立地与环境交互,同时异步也打破了数据的相关性;而DDPG则是将DQN从离散动作空间扩展至连续动作空间,并借鉴了DQN的两个技巧:经验回放、目标网络。
2.3独立强化学习
这是一种简单的沿用单智能体强化学习的方式。多个智能体同时和环境及其他智能体交互,每个智能是独立学习的主体,把其他智能体看做环境的一部分。智能体之间没有协同。
优点:适用于离散状态和动作空间小规模的动态规划问题,可扩展性较好。简单。
缺点:环境非稳态,收敛性差,决策效果不好。
这篇知乎的帖子讲述了几种多智能体强化学习的方法,可供参考。
3.多智能体强化学习的理论困境:
无论是值迭代还是策略迭代,都需要进行三个关键步骤,策略执行,策略评估和策略优化。每个子过程都存在一些固有难题,成为限制强化学习理论和应用发展的巨大障碍。
2.1.可扩展性问题。多智能体强化学习的核心问题。在MARL中,将整个多智能体系统,视为一个决策主体,之间优化价值函数或者状态-行为值函数。但是,状态空间和动作空间会随着智能体个数的增加指数增加。导致系统虚线效率极低,甚至无法收敛。
当智能体个数增多时怎么办。
2.2.效用分配问题。研究目标是公平有效的分配奖励,引导智能体协同工作。奖励分配不当可能达不到全局最优。如何在不同智能体贡献不同的情况下实现鼓励高智能体,又不失去低贡献智能体的积极性。解决方案:值函数分解法,手动建模。Rashid 等提出 QMIX。 Value for Deep Multi-agent R
如何进行奖励值的分配。
2.3.探索-利用平衡困境。利用的多了容易收敛到次优解,探索多了不收敛。研究者们提出多种方
法,如使用经验回放、递减的探索率、多智能体协作探索策略等。
探索率的设定和收敛问题。
2.4.环境非稳态。动作导致环境改变,每个行为都会引入噪声和不确定性。使智能体进行策略评估变得更困难。
相对过泛化:即在协作多智能体任务中,由于非协作智能体带来的惩罚超过协作智能体带来的奖励,协作智能体会认为其选择的协作动作为错误动作,导致多智能体最终收敛在次优联合策略。
2.5.部分可观测问题。智能体无法获得完整的环境状态信息,只能通过不完全的局部观测进行决策。部分可观测问题是MARL中的一个关键挑战。目前RNN技术以应用于处理历史观测序列。帮助智能体从不完全信息中提取有用特征。
2.6.奖励函数设定。复杂的决策环境下设定困难,难以证明收敛到最优。
博弈论小知识:
按决策时间顺序分为:静态博弈、动态博弈。
静态博弈:同时决策。如囚徒困境
动态博弈:有决策顺序。海盗分金币
博弈按观测的程度可分为:完全信息、不完全信息
按合作与竞争可分:竞争,合作,混合
竞争:王者1v1
合作:组队打怪
混合:王者5v5
文章参考:
《多智能体强化学习理论及其应用综述》陈卓然 等;
323AI导航网发布