一文了解【完全合作关系】下的【多智能体强化学习】

处于完全合作关系 的多智能体的利益一致,获得的奖励相同,有共同的目标。比如多个工业机器人协同装配汽车,他们的目标是相同的,都希望把汽车装好。

在多智能体系统中,一个智能体未必能观测到全局状态 S。设第 i 号智能体有一个局部观测,记作 Oi,它是 S 的一部分。不妨假设所有的局部观测的总和构成全局状态:

完全合作关系下的MARL:

目录

策略学习

下面由policy-based的MARL方法入手。(value-based MARL也有很多工作)

MARL 中的完全合作关系 (Fully-Cooperative) 意思是所有智能体的利益是一致的,它们有相同的奖励R,回报U,动作价值函数Q,状态价值函数V。Q和V依赖于所有agent的策略π

通常来说,团队成员有分工合作,所以每个成员的策略是不同的,即 θi ≠ θj。

如果做策略学习(即学习策略网络参数 θ1, · · · , θm),那么所有智能体都有一个共同目标函数

所有智能体的目的是一致的,即改进自己的策略网络参数 θi,使得目标函数 J 增大 。那么策略学习可以写作这样的优化问题:

(注意,只有"完全合作关系"这种设定下,所有智能体才会有共同的目标函数,其原因在于 R1 = · · · = Rm。对于其它设定,"竞争关系"、"混合关系"、"利己主义",智能体的目标函数是各不相同的。)

可能有人好奇R,U,Q,V都一样了,为什么训练出来π不一样?主要是每个agent的动作空间有区别,各司其职,所以agent的策略会有区别。

由于无法计算策略梯度∇θiJ,我们需要对其做近似。下面用 价值网络 近似 策略梯度 ,从而推导出一种实际可行的策略梯度方法。

多智能体A2C

下面介绍"完全合作关系"设定下的多智能体 A2C 方法 (Multi-Agent Cooperative A2C),缩写 MAC-A2C。简单点入手,本文只考虑离散控制问题

策略网络和价值网络

MAC-A2C 使用两类神经网络:价值网络 v策略网络 π

所有智能体共用一个价值网络。
每个智能体有自己的策略网络。

训练和决策

实现中的难点

最大的问题,在 MARL 的常见设定下,第 i 号智能体只知道 oi,而观测不到全局状态。

下面介绍中心化 (Centralized) 与去中心化 (Decentralized) 的实现方法。

  • 中心化让智能体共享信息;优点是训练和决策的效果好,缺点是需要通信,造成延时,影响速度。
  • 去中心化需要做近似,避免通信;其优点在于速度快,而缺点则是影响训练和决策的质量。

三种架构

下面介绍MAC-A2C的三种实现方法。

完全中心化

中心化训练 + 中心化决策 ,这是MAC-A2C最忠实的实现方法,作出的决策最好,但是速度最慢,在很多问题中不适用

训练和决策全部由中央控制器完成。智能体只负责与环境交互,然后把各种数据传给中央。智能体只需要执行中央下达的决策,而不需要自己"思考",纯纯工具人。


完全去中心化

想要避免通信代价,就不得不对策略网络和价值网络做近似,变为"去中心化训练 + 去中心化决策"。

MAC-A2C 变成了标准的 A2C,每个智能体独立学习自己的参数 θi 与 wi。

去中心化训练的本质就是单智能体强化学习 (SARL),而非多智能体强化学习 (MARL)。在 MARL 中,智能体之间会相互影响,而本节中的"去中心化训练"把智能体视为独立个体,忽视它们之间的关联,直接用 SARL 方法独立训练每个智能体。用上述 SARL 的方法解决 MARL 问题,在实践中效果往往不佳。

中心化训练 + 去中心化决策

当前更流行的MARL 架构是"中心化训练 + 去中心化决策",相对于上面两种方法,有效结合了它们的优点又缓解了它们的缺点,近年来很流行。

训练的时候使用中央控制器,辅助智能体做训练;
训练结束之后,不再需要中央控制器,每个智能体独立根据本地观测 oi 做决策。

训练:

决策:


智能体只需要用其本地部署的策略网络π做决策,决策过程无需通信。

中心化执行的速度很快,可以做到实时决策。

本文内容为看完王树森和张志华老师的《深度强化学习》一书的学习笔记,十分推荐大家去看原书!

相关推荐
JolyouLu几秒前
PyTorch-基础(CUDA、Dataset、transforms、卷积神经网络、VGG16)
人工智能·pytorch·cnn
CS_木成河4 分钟前
【深度学习】预训练和微调概述
人工智能·深度学习·语言模型·微调·预训练
新加坡内哥谈技术12 分钟前
微软发布Majorana 1芯片,开启量子计算新路径
人工智能·深度学习·语言模型·自然语言处理
真智AI37 分钟前
使用 DistilBERT 进行资源高效的自然语言处理
人工智能·自然语言处理
OpenBuild.xyz42 分钟前
我是如何从 0 到 1 找到 Web3 工作的?
人工智能·web3·去中心化·区块链·智能合约
Sui_Network42 分钟前
Sui 如何支持各种类型的 Web3 游戏
大数据·数据库·人工智能·游戏·web3·区块链
ZKNOW甄知科技1 小时前
IT服务运营管理体系的常用方法论与实践指南(上)
大数据·数据库·人工智能
Luke Ewin1 小时前
根据音频中的不同讲述人声音进行分离音频 | 基于ai的说话人声音分离项目
人工智能·python·音视频·语音识别·声纹识别·asr·3d-speaker
終不似少年遊*1 小时前
循环神经网络RNN原理与优化
人工智能·rnn·深度学习·神经网络·lstm
时间很奇妙!1 小时前
CNN 卷积神经网络【更新中】
人工智能·深度学习·cnn