概述

在我之前的工作中,我自己总结了一些多智能体强化学习的算法和通俗的理解。

首先,关于题目中提到的这三个家伙,大家首先想到的就是强化学习的五件套:

  1. 状态:s
  2. 奖励:r
  3. 动作值:Q
  4. 状态值:V
  5. 策略:π\piπ

多智能体强化学习(Multi agent RL,MARL)考虑的是多智能体的协作,在MARL中我们还可以见到这些元素的影子。
简单的讲,MARL考虑的是每个agent的模型之间的特征通信和训练一个全局的动作值Q,其目标是最大化奖励R。
因此,MARL还是属于常规强化学习范畴。

但是,当我们涉及到多任务强化学习(Multi task RL,MTRL)时(主要涉及策略蒸馏),却只能看到动作值函数Q和\或策略π\piπ的影子。
简单的讲,MTRL多数是使用已经训练好的agent model(子任务)来训练一个公共的agent model。
1)在该过程中,我们可以微调每个子任务模型的参数,大佬们的解释是由于每个子任务具有不同的局部最小值,因此当时用多任务模型训练时,如果微调子任务模型参数可以帮助子任务模型跳出局部最优,使得子任务模型的性能变好。这一点我在自己的数据上实验了,发现并没有这种效果。理论上真的可以这样,可能是我调参还没调好吧,毕竟炼丹也是看运气的。当然,这样做模型的训练量就变大了。
2)在训练过程中,我们也可以直接冻结每个子任务模型的参数,只训练中心任务模型的参数。
3)训练中心任务模型就叫做策略蒸馏,整个多任务强化学习都是围绕策略蒸馏展开的。策略蒸馏有几个很明显的贡献:
a)压缩模型参数;b)实现多任务融合;c)实现在线策略蒸馏,就是实时训练模型,当然这也是建立在压缩参数的基础之上的。
4)我的个人总结,任务策略蒸馏主要由两个方向
i)基于值函数的策略蒸馏,参考论文;ii)基于策略的策略蒸馏,参考论文。

多智能体多任务强化学习(Multi agent Multi task RL,MA-MT-RL)一般是使用两阶段优化策略,一般是先训练多智能体强化学习的子任务模型,再使用策略蒸馏方法训练蒸馏的中心策略。多任务多智能体强化学习参考这个文论。
很遗憾的是,目前多数的MARL,MTRL和MA-MT-RL多数都没有开源,我在复现他们代码的时候也遇到了很多问题。关于策略蒸馏的多任务强化学习的开源代码可以参考这个github。是这篇论文[Policy Distillation]的代码。
我们可以任务MA-MT-RL就是MTRL的延伸。

针对多任务强化学习框架的设计还有两个方案:
1)中心任务模型在最后分叉,即有几个任务就分几个叉,但是损失函数只有一个。这个时候,我们需要为每个子任务设置一个id,以便在训练的时候指定从那个分叉开始回归。有分叉的论文就是上面提到的Policy Distillation这篇论文。
这项工作的一个重要贡献是比较了多任务DQN agent和多任务蒸馏agent的性能。对于多任务DQN,这种方法类似于single-game learning:网络经过优化,在给定少量连续观察的情况下预测每个可能动作的平均折扣收益。就像在多任务蒸馏中一样,游戏每集(episode)都会切换,每个任务都有单独的回放内存缓冲区,训练在所有任务之间均匀交错。游戏标签用于在多任务DQN中的不同输出层之间切换,从而为每个游戏启用不同的输出层或控制器。有了这个架构,多任务DQN损失函数仍然与单任务学习相同。
即使有了单独的控制器,多游戏DQN的学习对于雅达利游戏来说也是极具挑战性的,而且DQN通常无法在游戏上达到完全的单游戏性能。我们认为,这是由于不同策略之间的干扰、不同的奖励比例以及学习价值函数的内在不稳定性造成的。
策略蒸馏可以提供一种将多个策略组合到单个网络中而不会产生破坏性干扰和扩展问题的方法。由于策略在蒸馏过程中被压缩和细化,我们推测它们也可能被更有效地组合到一个单一网络中。此外,策略本身的方差低于值函数,这应该有助于提高性能和稳定性。

2)只有一个输出,也只有一个损失函数。这就简单了,跟正常训练的时候一样。
这种方法的代表性论文就是Distral-Robust multitask reinforcement learning。

我看的一些文章我都给翻译成中文了,大家可以下载参考一下,很适合英语不行的小硕。

多智能体强化学习Multi agent,多任务强化学习Multi task以及多智能体多任务强化学习Multi agent Multi task概述相关推荐

  1. 《强化学习周刊》第38期:DreamingV2、Shadow-price DRL、离线强化学习

    No.38 智源社区 强化学习组 强 化 学  习 研究 观点 资源 活动 关于周刊 强化学习作为人工智能领域研究热点之一,其研究进展与成果也引发了众多关注.为帮助研究与工程人员了解该领域的相关进展和 ...

  2. 《强化学习周刊》第36期:DDA3C、因果推理干预、逆强化学习

    No.36 智源社区 强化学习组 强 化 学  习 研究 观点 资源 活动 关于周刊 强化学习作为人工智能领域研究热点之一,其研究进展与成果也引发了众多关注.为帮助研究与工程人员了解该领域的相关进展和 ...

  3. 《强化学习周刊》第55期:LB-SGD、MSP-DRL对抗鲁棒强化学习

    No.55 智源社区 强化学习组 强 化 学  习 研究 观点 资源 活动 周刊订阅 告诉大家一个好消息,<强化学习周刊>已经开启"订阅功能",以后我们会向您自动推送最 ...

  4. 《强化学习周刊》第25期:DeepMind提出无模型风险敏感强化学习、谷歌发布 RLDS数据集生态系统...

    No.25 智源社区 强化学习组 强 化 学  习 研究 观点 资源 活动 关于周刊 强化学习作为人工智能领域研究热点之一,其研究进展与成果也引发了众多关注.为帮助研究与工程人员了解该领域的相关进展和 ...

  5. 深度学习核心技术精讲100篇(八)-keras 实战系列之深度学习中的多任务学习(Multi-task learning)

    多任务学习(Multi-task learning)简介 多任务学习(Multi-task learning)是迁移学习(Transfer Learning)的一种,而迁移学习指的是将从源领域的知识( ...

  6. 为什么c语言运行了是cmd,为什么C语言的程式码执行都在命令提示符进行?而且学习的基本都是数学问题,跟开发软体有什么关系?...

    为什么C语言的程式码执行都在命令提示符进行?而且学习的基本都是数学问题,跟开发软体有什么关系?以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们 ...

  7. c语言学习之基础知识点介绍(十二):结构体的介绍

    一.结构体的介绍 /* 语法:struct 结构体名{成员列表;};切记切记有分号!说明:成员列表就是指你要保存哪些类型的数据.注意:上面的语法只是定义一个新的类型,而这个类型叫做结构体类型.因为类型 ...

  8. 雷特智能家居龙海祁:从专业调光到全宅智能,20年专注成就专业

    作者 | 高鑫 编辑 | 小沐 出品 | 智哪儿 zhinaer.cn 第27届广州国际照明展览会将于8月3日-6日在中国进出口商品交易会展馆(琶洲展馆)举行,本届展会将以"新时代 新担当& ...

  9. AI:2020年6月23日北京智源大会演讲分享之智能信息检索与挖掘专题论坛——09:10-09:55裴健教授《智能搜索:从工具到思维方式和心智》

    AI:2020年6月23日北京智源大会演讲分享之智能信息检索与挖掘专题论坛--09:10-09:55裴健教授<智能搜索:从工具到思维方式和心智> 导读:首先感谢北京智源大会进行主题演讲的各 ...

最新文章

  1. SQL Sever索引
  2. mysql-5.7.20实用下载、安装和配置方法,以及简单操作
  3. 自制浮动静态路由实验(简单)
  4. 减少静态链接库的体积
  5. 通过日志恢复MS SQL数据案例
  6. android—获取网络数据
  7. 如何使用docker配置深度学习开发环境
  8. 计算机专业是理科吗,计算机类和普通理科有什么区别?
  9. 2006中国最令人失望的十所大学
  10. Visual Studio 2013中因SignalR的Browser Link引起的Javascript错误一则
  11. 韩国韩亚航空数万份乘客身份信息被泄露
  12. git升级到指定版本
  13. 数据建模软件Chiner,颜值与实用性并存
  14. 计算机b类b级2020,CPU天梯图2020_笔记本CPU天梯图2020最新版【7月更新】-太平洋IT百科...
  15. 美丽中国 纪录片 高频词 GRE 托福词汇
  16. 评:10月PMI指数新高, 带动大盘逆转, 跨年度业绩行情展开
  17. 十道解分式方程及答案_10道解分式方程练习题及答案.doc
  18. 交换机和路由器的区别_交换机和路由器有什么区别 交换机和路由器区别介绍【详解】...
  19. 用Python修改Minecraft的mod
  20. 泛泛而谈的菜鸟学习记录(三)—— unity后处理

热门文章

  1. 奥城大学计算机专业,我大四了,托福84,gre1571612.02..._GRE考试_帮考网
  2. 数据挖掘导论学习笔记 第五章 分类算法
  3. Win10屏幕截图无法使用怎么回事
  4. 修改element-ui默认的开关样式
  5. 【Scala】Scala中的模式匹配、类型参数与隐式转换
  6. 25 scala 进阶
  7. html容器自定义宽高比,容器长宽比_aspect-ratio, 宽高比, 会员专栏 教程_W3cplus
  8. 最近学到一个新词“汽车含硅量”
  9. uniapp editor编辑器
  10. JupyterLab 的安装与使用