清华吴翼:从捉迷藏游戏说起,谈谈强化学习的六个开放问题

清华吴翼:从捉迷藏游戏说起,谈谈强化学习的六个开放问题

首页休闲益智捉迷藏秘密行动更新时间:2024-10-11

2015年,DeepMind在《Nature》上发表的DQN打Atari的论文,被视为强化学习研究爆发的导火索。

时至今日,强化学习取得的成绩不断地刷新着人类的认知。例如AlphaGo的围棋一枝独秀,AlphaFold的蛋白质预测无人能敌,OpenAI Five玩DOTA的战略布局老谋深算。

另一方面,这也看出游戏环境在强化学习的发展中起着举足轻重的作用。

那么,从游戏角度看,强化学习还有哪些前沿问题值得攻关?

2月19日,来自清华大学的吴翼在一个强化学习论坛中,做了“从捉迷藏游戏谈起”的报告。所谓「捉迷藏」,本质上是A、B双方利用各种道具,一个藏,一个找的博弈过程。

在吴翼过往的研究中,他设置一个包含红人、蓝人以及墙和箱子的捉迷藏游戏环境,通过强化学习训练,吴翼发现很多好玩的过程。而同时,吴翼表示,捉迷藏游戏也启示了许多开放性的问题,例如:

  • 为什么看上去这么简单的策略,却需要OpenAI如此强大的计算能力加持?
  • 如何才能学习非常复杂的可解析行为?
  • 复杂的多智能体行为能给我们带来什么?
  • 在训练过程中,为什么某些策略没有出现
  • 如何才能让多个智能体进行更好的分工与合作?
  • ......
  • 这些开放问题广泛存在于强化学习的研究当中,具有重要的启发意义。

    下面是吴翼的报告整理,以供产考。

    图注:吴翼,师从人工智能泰斗、加州伯克利大学 Stuart Russell 教授,其论文 Value Iteration Network 荣获 NIPS 2016 年度最佳论文奖;多次在 ACM-ICPC 竞赛中取得好成绩,两次参加全球总决赛获得一枚银牌一枚铜牌。

    1 捉迷藏游戏中的六个策略

    在这里,我先介绍一个捉迷藏游戏的工作。是我在OpenAI 工作期间做的项目“Hide-and-Seek Game”,相关论文已经发表在ICLR 2020 。

    具体而言,我们在这个项目中创造了一个模拟环境,环境中有许多物体,例如箱子、梯子以及小蓝人和小红人。小蓝人代表捉迷藏游戏中的“藏匿者”,小红人代表游戏中的“寻找者”。

    在虚拟环境下调动上述“物体”,使用强化学习,在成千上万的平行宇宙中,让小蓝人和小红人不停的玩捉迷藏游戏。

    在项目的具体设置中存在两组Agent(智能体),其中藏匿者是一对,寻找者是一队。

    寻找者如果看到了任何藏匿者,那么就认为小红人就抓住了小蓝人,寻找者获得 1 分的奖励,反之就会扣1分。

    小蓝人(藏匿者)如果被任何小红人(寻找者)看到了,那么就会获得-1分的奖励,反之就会获得 1分的奖励。

    当然,捉迷藏游戏总是要给藏匿者提供“准备”时间,所以在游戏开始的一段时间,小红人(寻找者)需要等在原地不能动让小蓝人(藏匿者)做好准备。

    经过强化学习和多智能体的自博弈,发现藏匿者和寻找者之间生成了六种策略和反策略。如上图所示,横轴是训练的Episodes,纵轴是获得的奖励分数,红线是寻找者获得分数,蓝线是藏匿者获得的分数。

    在训练最初阶段的策略是:小红人追着小蓝人跑,小蓝人只能四处逃窜。分数表现是:寻找者的分数在逐渐上升,藏匿者的分数在逐渐下降。

    随着训练Episodes的增加,奖励分数趋势线产生了拐点:寻找者的分数在逐渐下降,藏匿者的分数在逐渐上升。原因是:小蓝人学会了使用工具,例如用箱子把自己围起来,让小红人无法看到小蓝人。

    随着训练Episodes的再次增加,奖励分数趋势线再次产生了拐点。原因是:小红人发现可以使用另一个工具“梯子”,即小红人将梯子移动到小小蓝人用箱子搭建的“城堡”旁边,然后登上梯子找到“城堡”里的小蓝人。

    经过很长时间的训练,第四个策略也出现了:小蓝人学会了将梯子全部锁起来。锁起来之后,小红人就无法移动梯子,因此无法窥到城堡里的“小蓝人”。

    第五个策略稍微有些反人类直觉,我们称之为“Box Surfing”:小蓝人把所有的梯子都锁住之后,并且把自己用箱子围起来,小红人采取的行动是移动箱子到锁住的梯子上面,然后通过梯子跳到箱子上,然后踩着箱子移动,就好像在冲浪(surfing)一样,一路找到了小蓝人。其实“踩着箱子移动”是系统设定产生的“漏洞(特性)”,刚好被小红人抓住了。

    针对小红人的鸡贼,小蓝人生产了第六个策略:把梯子和箱子都锁起来,因此,小红人无法使用任何工具,双方所得分数也逐渐趋于平稳。

    这个项目非常好玩,它让我们知道了:经过复杂的物理世界,多智能体强化学习,AI可以学会非常非常复杂的,并且人类无法理解,甚至想不到的行为,例如“Box Surfing”。

    2 围绕可解析性复杂行为的开放性问题

    那么,除了好玩之外,通过这个项目,研究人员可以学到什么呢?

    首先,多智能体强化学习很重要,因为我们可以通过MARL和Open-Ended Physical World 学到可解释的复杂行为——因为这跟人类的进化过程很相似。这也被认为是通向AGI的重要方向之一。

    其次,也是更重要的,这个项目启示了许多开放性的问题。

    第一是,样本复杂性。

    为此,我们做了一个实验发现,一个模型的Batch Size越大,计算量越大,模型学习的越快。如上图所示,纵轴是batch size,横轴是Episodes,蓝色代表训练的Episodes,黄色的是训练Hours。上图表示了batch size越大,所需要的时间越少,当然所需要的样本量越多。

    有些人可能会很沮丧,学习这么简单的策略居然还要这么大的计算量。而我认为这是一个好事情,因为它是“A great testbed”。有了好的testbed,才会有更好的算法诞生。

    第二个开放性问题是:我们如何才能学习非常复杂的行为。

    同样,我们也做了一些实验:只用 Exploration方法(探索)进行模型设定。如上是比较经典的探索方法:count-based exploration(基于计数或虚拟计数的方法)。此外,还设置了RND(全称是random network distillation)。

    实验结果是:通过 count-based exploration方法,智能体也学会了一些简单策略,例如到处走、抓板子等等。显然,这些策略和多智能体强化学习方法得到的复杂策略有很大的不同。

    因此,如何发现人类能够理解的、有目的的复杂策略行为也是接下来研究的重点。

    第三个开放性问题是,有了这些复杂的多智能体行为我们可以做什么?能否进行“迁移(transfer)”?

    其实,在自然语言处理和计算机视觉研究领域,预训练和迁移是非常常见的。在计算机视觉里面,可以使用ImageNet进行预训练,然后到模型里面进行微调。自然语言处理里面也有同样的措施。因此,基于hide-and-seek游戏中产生的策略,我们提出了一个由5个迁移任务组成的“智能组合”(intelligence suites ),每个迁移任务都会考察一些捉迷藏(hide-and-seek)游戏中小人们所掌握的一些技能。我们的猜想是:如果智能体已经掌握了一种技能,那么它就会在考察这个特定技能的任务中迁移的非常好(微调更快)。

    以上是五个任务,大概可以分为两类,一类是需要记忆的任务,另一类是建造类的任务,需要通过移动木块完成特定的任务,拿到奖励。我们进行了实验,如上图所示,蓝线代表着从捉迷藏游戏中进行预训练得到的效果,红线是直接从头训练的效果,绿线是从count-based Intrinsic motivation中预训练得到的实验结果。由上可知,蓝线比其他效果略好。

    但是,其比自然语言处理、计算机视觉中的迁移效果差很多。那么,有什么方法能让效果和人相比拟?毕竟人类的迁移能力非常强大。所以,why和how也会是研究重点。

    第四个开放问题是:为什么多智能体强化学习得到的是以上六个策略,而不是其他的策略。在这个“捉迷藏游戏”项目发布之初,有twitter网友向我们提问:最后的策略是小蓝人用道具把自己围起来,那么为什么小蓝人一开始不用道具把小红人围住,从而让其行动不了?毕竟,这样反而更加简单了。

    为了尝试解答这个问题,我们对游戏进行了魔改,如上所示,添加了亮闪闪的金币,这时候的要求小蓝人不仅保护自己不被看到,也要守护金币。换句话说,如果小红人拿到了金币的话,小蓝人也是要扣分的。这样小蓝人就不能单单把自己给围起来了,因为围起来自己的话,小红人可能会吃金币。于是小蓝人学会了这样的策略:把小红人推到角落里,然后把道具锁上。

    这就引发了另一个让我们思考的问题,为什么改变环境,才能学会这样的策略。有没有可能在原来的环境下,直接让小蓝人学会这样简单粗暴、反直觉的策略?这也是接下来需要思考的问题。

    第五个开放性问题关于合作。如上图,小蓝人学会了传递箱子,即把一个小蓝人把箱子推给另一个小蓝人,从而把“门”堵上,达到小红人‘’找不到”的效果。我们称这种行为是Box Passing,回顾之前的视频,我们发现主动分工配合的行为虽然存在,但是并不是特别常见。因为,让智能体更好的学会合作、分工,也是值得研究的问题。

    第六个开放性问题是,有没有更多的领域可供探索,即能否在游戏领域之外,创新更多的智能体训练方式?显然,这个问题的答案是肯定的,例如今天接下来的6 个talk,第一个和第三个工作讲的是如何通过探索(exploration)方式发现更好的策略;第二个和第七个工作是讲如何用更好的方式解决那些只能通过许多小步骤才能完成的任务。第四、第五、第六个工作是讲从算法层面,如何才能解锁更好的合作行为。

    3 多样化的多智能体行为

    由于第一个工作“Discovering Diverse Multi-Agent Strategic Behavior via Reward Randomization”是我最新的工作,下面我简单介绍一下这篇论文的High Level Motivation。顾名思义,这篇论文的目的是发现“多样化的多智能体行为”。具体一些,这篇论文尝试解答上述六个开放性问题中的“为什么某些策略没有出现”,即为什么在变种环境中才能出现“小蓝人把小红人围起来”的策略。

    这篇论文的想法是:有没有可能在没有金币的环境中,通过某些设置,“小蓝人也能学会把小红人围起来”的策略。一个方式是通过尽可能多的探索得到策略,正如前面“count-based exploration”方法的介绍展示,小蓝人只能学会拿着板子到处走,虽然也有点意思,但是对人来说,没什么意义。

    因此,单纯不考虑环境设置,只是奖励不可知的探索方式毫无希望。因为,在策略空间中,能够做的事情太多,但其中对人来说有意义的,能够发现带有目的性的、有组织的行为非常少。既然Reward-Agnostic不可取,那么就用exploration 方式,然后与多智能体 self-play相结合能否有效?

    在回答这个问题之前,先看一个非常简单的例子:Stag-Hunt Game(猎鹿博弈)。这是一个博弈论里面非常经典的2X2的矩阵游戏,因为只有一轮游戏2种动作,所以不需要Exploration方法。

    猎鹿博弈源自法国启蒙思想家卢梭(Jean-Jacques Rousseau)的著作《论人类不平等的起源和基础 》中的一个故事。两个猎人出去打猎,想抓一只鹿。鹿的收益很高可以让两个人都吃饱。但是鹿很机敏,两个猎人需要耐心等待鹿出现。这时候一个兔子突然出现了。兔子的收益比鹿小,但是一旦有一个人忍不住去抓眼前的兔子,那么鹿就会被吓跑再也抓不到了。

    如上矩阵图,双方各可以执行两个动作,等鹿(Stag),或者捕兔(Hare)。抓鹿的收益a比俩人都抓兔子的收益d要高,但是如果一个人选择捕兔子一个人选择等待,那么抓兔子的人可以独占一只兔子收益为b,而等待的那个人就会挨饿,收益为c(a>b>=d>c)。

    所以,猎鹿博弈有两种纯策略纳什均衡:全合作S(一起等鹿)或全背叛H(一起冲出去抓住眼前的兔子)。

    举个例子。我们看一组具体的收益设定。比如一起抓鹿一起得4块钱(左上角);一起抓兔子俩人各得2块钱(右下角);一个人抓兔子的话可以独占(3块钱),独自等待则只能回家种地得1块钱(左下角和右上角)。

    在这里设定下,你会选择什么策略呢?好像看上去两个策略都差不多。

    那么我们不妨将这个例子极端化:在一人抓兔子和一人抓鹿的情况下,独自等待鹿的猎人没有东西吃会饿死(收益-100)。那么你会选择什么策略呢?好像去抓兔子比较保险一点对吧?因为等待鹿的话风险太高了。

    强化学习的实验结果也确实如此:独自抓鹿的惩罚越大,智能体学会的抓鹿的概率就越低,即大家更愿意去抓眼前的兔子。也就是说,在奖励非常极端的情况下,即便是在一个设定如此简单的matrix game里面,即使随机重复很多很多次,强化学习也学不到收益最优的策略组合。

    在论文中,我们设计了一个新的思路尝试找到最优策略。与其像传统探索方法一样在状态空间(state-space)中探索,不如改变思路,在奖励空间(reward-space)探索。于是我们提出了一个新的技术,叫奖励随机化(Reward Randomization)方法,然后和策略梯度算法结合,得到了一个新的算法RPG(Reward-Randomized Policy)。利用RPG,AI可以在很复杂的游戏里面,发现非常非常多有意思的,甚至我们一开始完全没有想到的策略。

    由于微信公众号试行乱序推送,您可能不再能准时收到AI科技评论的推送。为了第一时间收到AI科技评论的报道, 请将“AI科技评论”设为星标账号在看”。

    查看全文
    大家还看了
    也许喜欢
    更多游戏

    Copyright © 2024 妖气游戏网 www.17u1u.com All Rights Reserved