DeepMind提出强化学习新方法,可实现人机合作

108464cc33113ee0333f74651c47bf80.png

来源:AI前线

作者:Ben Dickson

译者:盖

策划:凌敏

本文来自 BDTechTalks 网站的“AI 研究论文评论”专栏。该专栏提供人工智能最新发现的系列解读文章。

尽管人工智能研究人员正力图建立能在围棋、星际争霸到 Dota 等复杂游戏中击败人类专家的强化学习系统,但如何创建出能与人类开展合作而非竞争的强化学习系统是人工智能正面临的更大挑战。

在一篇由 DeepMind 的人工智能研究人员最新预发布的论文中,提出了一种称为 FCP(Fictitious Co-Play,虚拟合作)的新方法。该方法实现智能体与不同技能水平人类间的合作,无需人工生成数据训练强化学习智能体(agent)。论文已被今年的 NIPS 会议接收。

论文通过使用一款称为 Overcooked 的解谜游戏进行测试,结果表明在与人类玩家的组队合作中,FCP 方法创建的强化学习智能体表现更优,混淆度最低。论文结果可为进一步研究人机协作系统提供重要方向。

论文地址:https://arxiv.org/abs/2110.08176

训练强化学习智能体

强化学习可持续无休地学习任何具有明确奖励(award)、动作(action)和状态(state)的任务。只要具备足够的计算能力和时间,强化学习智能体可根据所在的环境(environment)去学习出一组动作序列或“策略”,以实现奖励(award)的最大化。强化学习在玩游戏中的有效性,已得到很好的证明。

但强化学习智能体给出的游戏策略通常并不能很好地匹配真人队友的玩法。一旦组队合作,智能体执行的操作会令真人队友大感困惑。由此,强化学习难以应用于需各方参与者协同规划和分工的场景。如何弥合机器智能与真人玩家间存在的鸿沟,是人工智能社区正面对的一个重要挑战。

研究人员正致力于创建各种强化学习智能体,达到能适应包括其它强化学习智能体和人类在内的各合作方的行为习惯。

f40ff91aa32bcddfabae2fc4e387c2b3.png

图 1 强化学习智能体的多种训练方法

SP 方法 (self-play,左右互搏法) 是游戏使用的经典强化学习训练方法。该方法让强化学习智能体与自身的一个副本持续对战,能非常高效地学习出实现游戏奖励最大化的策略。但该方法的问题在于,所生成的强化学习模型会过拟合智能体自身的游戏玩法,导致完全无法与使用其他方法训练的玩家合作。

另一种训练方法是 PP 方法 (popuation play,群体参与法),它在强化学习智能体训练中引入了多种具有不同参数和结构的队友模型。尽管在与真人玩家合作的竞技游戏中,PP 方法要明显地优于 SP 方法,但其依然缺乏应对“共同收益”(common-payoff)场景下的多样性(diversity)问题。“共同收益”指玩家必须协同解决问题,并根据环境变化去调整合作策略。

第三种方法称为 BCP 方法 (behavioral cloning play,行为克隆法),它使用人工生成的数据训练强化学习智能体。有别于在环境中随机选取起始点,BCP 方法根据采集自真人玩家的游戏数据去调整模型参数,使智能体生成更接近于人类玩家游戏模式的行为。如果可以采集具有不同技能水平和游戏风格玩家的数据,那么智能体就能更灵活地适应队友的行为,更有可能与真人玩家很好地配合。然而 BCP 方法的挑战性在于如何获取真人数据,特别是考虑到要使强化学习模型达到最佳设置,通常所需的游戏量是人工所无法企及的。

FCP 方法

DeepMind 新提出的强化学习 FCP 方法,其关键理念是在无需依赖于人工生成数据的情况下,创建可与具有不同风格和技能水平玩家协作的智能体。

FCP 方法的训练分为两个阶段。首先,DeepMind 研究人员创建了一组使用 SP 方法的强化学习智能体,分别在不同的初始条件下独立完成训练,使模型收敛于不同的参数设置,由此创建了一个多样化的强化学习智能体池。为实现智能体池中技能水平的多样化,研究人员保存了每个智能体在不同训练阶段的快照。

正如论文所述,“最后一个检查点表示的是一个经完全训练的‘熟练’玩家,而较早的检查点则代表技能尚不纯熟的玩家。需说明的是,使用多个检查点实现各个玩家技能的多样性,这并不会导致的额外训练成本。”

第二个阶段使用池中所有的智能体,训练出一个新的强化学习模型。新智能体必须达成策略上的调优,才能实现与具有不同参数值和技能水平的队友开展协同。论文提出,“FCP 智能体完全可以达到跟随真人玩家带队,在给定范围的策略和技能中去学习出一个通用的策略。”

测试 FCP

DeepMind 的人工智能研究人员将 FCP 方法应用于解谜游戏 Overcooked。游戏玩家在网格化场景中移动,与物体互动,执行一系列步骤,最终完成烹饪和送餐任务。Overcooked 的游戏逻辑简单,并需要队友间的协作和工作分配,因此非常适合测试。

为测试 FCP 方法,DeepMind 研究人员简化了完整的 Overcooked 游戏任务。他们精心挑选了一组具有多种挑战的地图,包括强制协作和受限空间等。

ce7580b89780004a8d4c1696af322f6b.png图 2 DeepMind 使用简化版 Overcooked 测试 FCP 方法

研究人员分别训练了一组 SP、PP、BCP 和 FCP 智能体。为了比较各方法的性能,他们首先组了三个队,分别测试每种强化学习智能体类型,即基于人类游戏数据训练的 BCP 模型、在不同技能水平上训练的 SP 智能体,以及代表低水平玩家的随机初始化智能体。测试根据在相同数量剧集中所能提供的餐食数,衡量各方法的性能优劣。

结果表明,FCP 方法的表现要明显优于其他强化学习智能体训练方法,可以很好地泛化各种技能水平和游戏风格。出乎意料的是,测试进一步表明了其他训练方法是非常脆弱的。正如论文所述,“这意味着其他方法可能无法达到与技能水平一般的玩家组队。”

8ef55f8c9d467a47d693a58ef4014fd8.png图 3 对于强化学习智能体训练,FCP 方法优于其他方法

论文进而测试了每种类型的强化学习智能体在与人类玩家合作中的表现。研究人员开展了有 114 名人类玩家参加的在线研究,其中每位玩家参与 20 轮游戏。在每一轮游戏中,玩家与其中一种强化学习智能体组队,但并不知道该智能体的具体类型,随机进入一个厨房场景。

根据实验结果,“人类 -FCP”组队的性能,要优于其他所有“人类 - 强化学习智能体”组队。

每两轮游戏后,参与玩家根据与强化学习智能体组队的体验,给出一个 1 到 5 之间的评分。相对其他智能体,参与玩家对 FCP 队友表现出明显的偏好。反馈表明,FCP 智能体的行为更加连贯、更好预测,适应性更强。例如,强化学习智能体似乎具备了感知队友行为的能力,在每个烹饪场景中选择了特定角色,避免相互产生混淆。

与之相比,其他强化学习智能体的行为则被测试参与者描述为“混乱无章,难以合作”。

d310a4e2046360cb0dd4c8636a46e76e.png

图 4 DeepMind 使用各种强化学习智能体与人类玩家组队

下一步工作

在论文中,研究人员也指出了该工作的一些局限性。例如,在 FCP 智能体的训练中,只使用了 32 个强化学习合作队友。尽管这完全可应对简化版的 Overcooked 游戏,但应用于更复杂的环境时可能会受限。DeepMind 研究人员指出,“对于更复杂的游戏,为表示足够多样化的策略,FCP 所需合作伙伴的总体规模可能难以企及。”

奖励定义是限制 FCP 应用于更复杂环境的另一个挑战。在简化版 Overcooked 中,奖励是简单而且明确的。但在其他环境中,强化学习智能体在获得主要奖励前,必须去完成一些子目标。而智能体实现子目标的方式,必须要与人类合作伙伴的方式保持一致。这在缺少人类数据的情况下,是很难去评估和调优的。研究人员提出,“如果任务的奖励函数与人类处理任务的方式非常不一致,那么和所有缺少人类数据的方法一样,该方法同样很可能会生成非最优的合作伙伴。”

DeepMind 的研究可归为人机协作领域研究。在麻省理工学院科学家的一项最新研究中,探索了强化学习智能体在与真人玩家玩纸牌游戏 Hanabi 中的局限性。

DeepMind 提出的强化学习新技术,在弥合人类和人工智能间鸿沟上取得了进步。研究人员希望其“能为未来研究人机协作造福社会这一重要挑战奠定坚实的基础。”

原文链接: 

https://bdtechtalks.com/2021/11/22/deepmind-reinforcement-learning-fictitious-coplay/

未来智能实验室的主要工作包括:建立AI智能系统智商评测体系,开展世界人工智能智商评测;开展互联网(城市)大脑研究计划,构建互联网(城市)大脑技术和企业图谱,为提升企业,行业与城市的智能水平服务。每日推荐范围未来科技发展趋势的学习型文章。目前线上平台已收藏上千篇精华前沿科技文章和报告。

  如果您对实验室的研究感兴趣,欢迎加入未来智能实验室线上平台。扫描以下二维码或点击本文左下角“阅读原文”

5f56ab95ade8233e5d2e733718a18ee8.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/483069.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++学习——类的初始化

文章目录1.类通过构造函数进行数据成员初始化2.类成员初始化方式?3.什么情况下必须使用列表初始化?4.为什么用列表初始化成员变量会快一些?5.派生类构造函数的执行顺序1.类通过构造函数进行数据成员初始化 一般来说,类中的数据成…

队列模块(Queue)

#!/usr/bin/env python # codingutf-8import Queue import time https://docs.python.org/2/library/queue.htmlQueue模块在Python 3中改名为queue了。 Queue模块实现了多个生产者消费者列队,可以在多线程中进行安全的信息交换。 Queue模块定义了三个类:…

C++学习——构造函数,析构函数与虚函数关系

文章目录1.构造函数,析构函数可以为虚函数吗?2.析构函数和构造函数的作用?3.构造函数和析构函数调用顺序?4.类什么时候会调用析构函数?1.构造函数,析构函数可以为虚函数吗? 构造函数不可以&…

军事大脑的构建对未来战争的影响

前言:本文是我与军事科学院的赵蔚婷,王婉两位老师在2020年4月发表的一篇论文,首发在《中国科技论文在线》,是将互联网大脑模型与军事领域结合,形成军事大脑和军事超级智能的概念体系,重点提出军事神经元和军事云反射弧…

00001-整数倒置-Java-leetcode-要考虑到溢出问题

leetcode-整数倒置 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/reverse-integer 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。给出一个 32 位的有符号整数,你需…

size - 列出段节大小和总共大小

总览 (SYNOPSIS) size[-A|-B|--formatcompatibility] [--help] [-d|-o|-x|--radixnumber] [--targetbfdname] [-V|--version] objfile...描述 (DESCRIPTION) GNU 的 size 程序 列出 参数列表 objfile 中, 各 目标文件(object) 或 存档库文件(archive) 的 段节(section)大小 ---…

C++学习——默认构造函数

默认构造函数在这篇博客中已经写得很明白。 https://blog.csdn.net/bear_n/article/details/72798301 文章目录1.什么是默认构造函数?2.什么情况会自动生成默认构造函数,即编译器生成默认构造函数?1.什么是默认构造函数? 默认构造…

斯坦福抢开“元宇宙”第一课,上起来还真不便宜

过去半个世纪,斯坦福教给学生的技术,促成了硅谷的诞生;而为了将来的 Web3 时代,斯坦福也已经做好了准备。来源: 硅星人文:杜晨 编辑:VickyXiao今年10月底,硅谷顶级科技公司 Facebo…

00002-两数之和-leetcode-1.暴力法(枚举法),2.哈希表法,目前更新了枚举法

两数之和 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/two-sum 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。 给定一个整数数组 nums 和一个目标值 target,请你在…

c++ 字符串转数字

#字符串转整数 string ss"-99"; cout<< stoi(ss)<<endl; 转载于:https://www.cnblogs.com/sea-stream/p/11100398.html

C++学习——抽象类

文章目录1.抽象类1.1 什么是抽象类&#xff1f;1.2 抽象类的作用?1.3 使用抽象类时注意2.抽象基类为什么不能创建对象&#xff1f;1.抽象类 1.1 什么是抽象类&#xff1f; 带有纯虚函数的类为抽象类 1.2 抽象类的作用? 抽象类的主要作用是将有关的操作作为结果接口组织在一个…

00003-回文数的判定-leetcode-解法不唯一,1.reverse最简单,2.数学方法很有意思

回文数的判定 来源&#xff1a;力扣&#xff08;LeetCode&#xff09; 链接&#xff1a;https://leetcode-cn.com/problems/palindrome-number 著作权归领扣网络所有。商业转载请联系官方授权&#xff0c;非商业转载请注明出处。 判断一个整数是否是回文数。回文数是指正序&…

加拿大工程院院士于非:互联—— 从质量、能源、信息到智能

来源&#xff1a;AI科技评论整理&#xff1a;莓酊编辑&#xff1a;青暮2021年12月9日&#xff0c;第六届全球人工智能与机器人大会&#xff08;GAIR 2021&#xff09;在深圳正式启幕。140余位产学领袖、30位Fellow聚首&#xff0c;从AI技术、产品、行业、人文、组织等维度切入&…

常用命令之------ln

当我们需要在不同的目录&#xff0c;用到相同的文件时&#xff0c;我们不需要在每一个需要的目录下都放一个必须相同的文件&#xff0c;我们只要在某个固定的目录&#xff0c;放上该文件&#xff0c;然后在 其它的目录下用ln命令链接&#xff08;link&#xff09;它就可以&…

C++学习——继承

文章目录1.C中类成员的访问权限和继承权限问题2.多继承的优缺点3. 继承机制中对象之间如何转换4.组合与继承优缺点1.C中类成员的访问权限和继承权限问题 三种访问权限 public:用该关键字修饰的成员表示公有成员&#xff0c; 该成员不仅可以在类内可以被访问&#xff0c;在类外…

00004-括号匹配问题-牛客网-要考虑各种情况

括号匹配问题 链接&#xff1a;https://ac.nowcoder.com/acm/contest/3530/E 来源&#xff1a;牛客网 众所周知&#xff0c;佳爷是集训队最强&#xff0c;他经常喜欢鄙视集训队最菜的PC&#xff0c;这天他又来了&#xff0c;他丢给PC一道题目&#xff1a; 给你一个字符串&am…

2021年诺贝尔经济学奖评述:解决重大社会问题的自然实验因果框架

来源&#xff1a;集智俱乐部作者&#xff1a;诺奖委员会译者&#xff1a;邓宇昊 编辑&#xff1a;邓一雪 导语许多重大社会问题都涉及到因果分析。比如&#xff0c;接受更长时间的教育是否会让你未来的收入增加&#xff1f;提高最低工资对一个地方的就业会产生怎样的影响&…

C++学习——拷贝构造函数和移动构造函数

文章目录1.拷贝构造函数2.移动构造函数1.拷贝构造函数 拷贝构造函数&#xff0c;它是一种特殊的构造函数。它的作用就是用一个已经生成的对象来初始化另一个同类的对象。 当类中拥有指针类型的成员变量时&#xff0c;拷贝构造函数中需要以深拷贝&#xff08;而非浅拷贝&#xf…

spring学习笔记03-spring-DI-依赖注入详解(通过xml配置文件来配置依赖注入)

spring学习笔记03-spring-DI-依赖注入详解 1.概念 2.构造函数注入 3.set方法注入 4.集合的注入 需要被注入的实体对象 package com.itheima.service.impl;import com.itheima.service.IAccountService;import java.util.Arrays; import java.util.List; import java.util.Pr…

溯因推理:人工智能的盲点

来源&#xff1a;AI前线作者&#xff1a;Ben Dickson译者&#xff1a;Sambodhi策划&#xff1a;凌敏本文给当今人工智能界推崇深度学习的现象泼了冷水&#xff0c;指出了人工智能的盲点&#xff1a;溯因推理&#xff0c;并提醒人们不要忽视深度学习的种种问题&#xff0c;否则将…