一、背景介绍
传统的强化学习问题研究的是个体与环境交互,通过环境反馈的reward来指导个体学习策略,经典的算法有Q-Learning、DQN、DDPG等。
但现实场景中,环境中个体并不是孤立,例如有多个机器人合力推举一个重物,也或者有对抗的个体进行阻碍。总之多个个体都需要学会合作亦或者竞争。
多智能体系统(Multi-Agent System)主要研究方向之一就是多个个体的复杂系统中协同问题,因此多智能体强化学习开始逐渐得到关注。
遗憾地是,经典的强化学习算法并不能直接适用于多智能体学习场景。其中一个很重要的原因是,每个智能体学习过程中,其策略是不稳定的。
在某一个智能体的视角来看,它所面临不仅是环境状态,还有其他智能体的当前动作,这极大地增加了环境不稳定性,让策略学习难以收敛。
因此,本文章介绍一下MADDPG算法,该算法来自OpenAI,发表在2017年NIPS会议的论文Multi-Agent Actor-Critic for Mixed Cooperative-Competitive Environments,
通过一系列改进来解决该类问题,其中不同Agent可以有不同目标函数,只需要利用局部信息就可以做出最优决策,用于统一解决各类合作、竞争等场景。
MADDPG的论文地址见:https://arxiv.org/abs/1706.02275
算法的模拟环境代码见:https://github.com/openai/multiagent-particle-envs
二、算法要点
1.集中训练,分布执行:多Agent训练时的信息与执行时的信息有所不同,其中执行时只能获取个体视角的观察值,而训练时为了提升训练效果会用到更多全局信息,弥补了Q-learning的不足之处
2.每个Agent的训练基于Actor-Critic架构的深度学习网络结构,其中Actor网络是Agent的决策网络,输入为环境状态信息x和各Agent的动作a1...an。基于全局信息,Critic网络负责评估Actor网络的决策
3.同样采用了经验回放,每条经验由