OpenAI在Dota 2游戏中虽败犹荣
点击上方关注,All in AI中国
作者:James Vincent
就在上周,人类对机器人进行了反击。实际上是在视频游戏中打败了他们。
在一场三强争霸赛中,两支职业战队打败了伊隆·马斯克创建的研究实验室OpenAI开发的人工智能机器人。他们所玩的Dota 2(刀塔:守卫遗迹2)电脑游戏是一款非常受欢迎并且激烈复杂的竞技游戏。而这场比赛对于人工智能来说是一块试金石:这将成为人类所创造的超越人们想象的人工智能的最新衡量标准。
人工智能技术获得了一些重大进展。近年来最引人注目的事例是DeepMind公司的AlphaGo击败了围棋世界冠军,这是一项专家认为至少十年无法实现的成就。然而最近,研究人员已经将人工智能参与视频游戏作为下一个挑战。虽然电子游戏并没有像AlphaGo和国际象那样广泛的知名度,但实际上它们的玩法要困难得多。这是因为游戏玩家将会隐藏各种信息,复杂的游戏环境也在不断变化,以及无法轻易模拟的战略思维。换句话说,这更接近我们希望采用人工智能在现实生活中解决的各种问题。
OpenAI的失败只是人工智能进步的一个坎坷
Dota 2是一个特别受欢迎的人工智能测试场,OpenAI公司拥有最好的Dota 2机器人。但在上周,OpenAI输了。那么发生了什么事?我们在人工智能的能力上达到了某种上限吗?这表明某些技能对于计算机而言过于复杂吗?
其答案是否定的。机器学习研究员兼Dota 2游戏粉丝Stephen Merity表示,这只是一个"坎",机器最终将征服游戏玩家,而OpenAI可能会颠覆人们的看法。但首先需要了解人类会获胜的原因,以及实现OpenAI的目标,即使遭到失败,这些做法仍然有用。它将告诉人工智能能够做什么,不能做什么,以及将来会发生什么。
Dota 2游戏截图,这是一个幻想竞技的战斗游戏,两组五人战队为了摧毁彼此的基地而战斗。游戏玩法很复杂,比赛通常持续超过30分钟。
像机器人一样学习:如果一开始没有成功
首先,我们了解一下上周的比赛。这些游戏机器人是由OpenAI创建的。而作为其广泛的研究范围的一部分,OpenAI希望开发出"造福全人类"的人工智能。而这证明了许多不同的技术研究是合理的,并吸引了一些该领域最好的科学家参与。该实验室表示,通过训练Dota 2机器人团队(被称为OpenAI Five),它希望开发能够"处理现实世界的复杂性和不确定性"的系统。
这五个机器人(独立操作,但使用相同的算法训练)通过强化学习进行训练,以操作Dota 2游戏。这是一种常见的训练方法,基本上是大规模的反复尝试和试错(它有自己的弱点,但它也会产生令人难以置信的结果,其中包括AlphaGo)。他们并没有采用Dota 2的游戏规则对机器人进行编程,而是将它们直接丢进游戏中,让他们自己解决问题。 OpenAI的工程师通过他们完成某些任务进行奖励(比如杀死对手或赢得比赛)来加快这个过程,但仅此而已。
这意味着机器人在开始训练时完全随机操作,随着时间的推移,他们学会将某些行为与奖励联系起来。正如人们可能想到的,这是一种非常低效的学习方式。其结果是,机器人必须以加快游戏速度,每天训练获得的经验相当于人类180年的训练时间。正如OpenAI公司的首席技术官和联合创始人Greg Brockman在今年早些时候所说的那样,如果需要一个12,000到20,000小时的练习才能掌握某项技能,那么机器人每天都要经历"100个人的一生的经历"。
花费这么长时间的部分原因是Dota 2游戏非常复杂,远远超过棋盘游戏。两个五人战队在游戏地图上相互对峙和战斗,充满了无法预测的角色、障碍物,以及可破坏的建筑物,所有这些因素都对战斗的形势和进程产生影响。游戏玩家必须联合各种力量与对手作战将其摧毁。他们可以获取或购买数百种物品来提升他们的能力,每个玩家(其角色超过了100个)都有自己独特的动作和属性。Dota 2游戏的每场比赛都像是一场小型古代战争,其目标是争夺领土,并努力打败对手。
人工智能需要处理游戏中的所有数据,以便以更快的速度进行,这是一个巨大的挑战。为了训练他们的算法,OpenAI必须具备大量的处理能力,大约采用了256个GPU和128,000个CPU。这就是为什么IT专家经常将OpenAI Five作为一个工程和研究项目进行讨论和研究的原因:让系统正常运行具有挑战性,更不用说击败人类玩家了。
"就现代数据驱动人工智能方法所能处理的复杂程度而言,OpenAI Five比DQN或AlphaGo更加令人印象深刻。"斯坦福大学计算机科学博士生Andrey Kurenkov指出。Kurenkov表示,虽然这些较旧的项目在纯粹研究的层面上引入了重要的、新颖的想法,但OpenAI Five主要是在以前的不可思议的情况下部署现有的结构。无论是规模和输赢都很大。
今年早些时候,OpenAI Five击败了一支业余游戏玩家团队作为其能力的基准。
机器人仍缺乏游戏计划
但是从抛开工程的角度而言,人工智能机器人输掉了这两场比赛,那么是机器人还不够好吗?答案是:仍然非常好。
在过去的一年中,人工智能机器人已经逐步掌握了变得更加复杂的游戏规则,从1对1的比赛开始,最后达到5v5的竞技。然而,他们还无法应对游戏的复杂性。在国际比赛中,一些限制被取消了。令人关注的是,机器人不再拥有无懈可击的信使(向玩家交付物品的NPC)。这些以前是他们游戏风格的重要支柱,因为获得治疗药水,可以帮助他们进行持续的攻击。在一些游戏中,他们不得不担心他们的供应线被取消的问题。
机器人是否掌握长期战略是一个关键问题
虽然对于这两场比赛仍在分析,但人们的初步共识是机器人玩得很好,它们都有自己的优点和缺点,人类玩家可以利用它们的弱点获得比赛的优势。
这两场比赛具有非常高的水平,人类玩家首先在游戏中领先,然后是机器人,最终人类玩家获得了胜利。但在这两场比赛中,一旦人类玩家获得了相当大的优势,就会发现机器人很难挽回败局。游戏评论员猜测这可能是因为人工智能首选的是"以90%的确定性获得1分,而不是以51%的把握赢得50分"。(这一特点在AlphaGo的游戏风格中也很明显。)这意味着OpenAI Five被用于研究稳定但可预测的胜利。当机器人失去了领先优势时,他们无法进行必要的冒险以重新获得胜利。
OpenAI Five在国际上的第二场比赛场面
不过这只是猜测。正如人工智能应用情况一样,猜测机器人背后的确切思维过程是不可能的。我们所知道的是这些机器人在游戏中的短期表现比较出色,但与人类的长期战略比赛时则十分棘手。
OpenAI Five的判断非常准确,可以通过法术和攻击积极地挑选目标,并且通常对它们遇到的对手构成威胁。法尔茅斯大学的人工智能游戏研究员Mike Cook和一名狂热的Dota玩家在现场直播了这些战斗,他们将机器人的风格描述为"催眠"。"它们精确而清晰地开展行动。"Cook 表示,"在通常情况下,人类玩家会在赢得一场战斗之后,将会稍微放松警惕,期待敌人队撤退,并重新集结。但机器人不这样做。如果它们看到获胜机会,就会一直进攻。"
在漫长的游戏比赛中,机器人们似乎在蹒跚而行,想一想很难在10分钟或20分钟的时间的比赛获得优势。它们在两场比赛中的第二场对阵一支中国职业游戏战队,这个战队选择了不对称的策略。一名玩家收集资源以不断加强战队的实力,而其他四人则对机器人战队进攻或干扰。然而,机器人似乎没有注意到发生了什么,并且在游戏结束时,人类战队中将会有一个消灭人工智能对手的超强玩家。"这是人类玩Dota游戏的风格。但对于机器人来说,这是极其长期的规划。"
这个战略问题不仅对OpenAI很重要,对于人工智能的研究也更为重要。缺乏长期规划通常被视为强化人工智能学习的一个主要缺陷,因为使用这种方法创建的人工智能通常强调及时支付而不是长期回报。这是因为构建一个长期工作的奖励系统是困难的。如果无法预测何时发生这种情况,那么如何训练机器人推迟使用强大的法术,直到敌人聚集在一起才使用?或者只是因为没有使用某个咒语而不给一个小奖励吗?如果机器人决定永远不使用它呢?这只是一个基本的例子。Dota 2游戏通常持续30-45分钟,玩家必须不断思考什么行动将导致长期的成功。
然而,重要的是要强调,这些机器人的行为并非仅仅是粗心大意或是寻求回报。控制每个玩家的神经网络具有学习某些策略的记忆组件。它们对奖励做出反应的方式是考虑未来的收益以及更直接的收益。实际上,OpenAI表示其人工智能代理程序的执行程度远高于其他任何类似系统,其"奖励半衰期"为14分钟(粗略地说,这是机器人可以等待未来回报的时间长度)。
Kurenkov撰写了大量有关强化学习局限性的文章。他表示,比赛表明强化学习可以处理比大多数人工智能研究人员想象的复杂程度更高的情况。但他补充说,比赛的失败表明需要新系统管理长期思维。(不出所料,OpenAI的首席技术官对这种说法并不认同。)
与比赛的结果不同,这里没有明显的结论。对机器人是否成功的分歧反映了人工智能中未解决的更大问题。正如研究员Julian Togelius在Twitter上所指出的那样,"我们如何才能开始区分长期战略和看起来像长期战略的行为?这有关系吗?我们现在所知道的是,在这个特定领域,人工智能还不能超越人类。"
Dota 2游戏提供超过100种具有各种能力的不同游戏角色,人工智能还没有完全掌握它们。
不公平的竞争环境
对于机器人聪明才智进行争论是另一回事,但OpenAI Five参加Dota 2比赛也提出了另一个更基本的问题:我们为什么要举办这些活动?
以Gary Marcus的评论为例,他是当代人工智能局限性的批评者。在上周OpenAI游戏的准备阶段,Marcus在Twitter上指出这对于人类玩家来说并不公平。与人类游戏玩家(或其他一些人工智能系统)不同,机器人实际上并不观看电脑屏幕来进行操作。相反,它们使用Dota 2的"bot API"来理解游戏。这是一个由20,000个数字组成的协议,用于描述数字形式的变化,其中包括每个玩家的位置,健康状况,拥有的法术,以及攻击时间等所有信息。
正如Marcus所说,这快速解决了极具挑战性的场景感知问题,并为机器人提供了巨大的优势。例如,它们不必搜索地图以获知对手的团队在哪里,或者观看用户界面以查看他们最强大的法术是否准备就绪。他们不必猜测对手的健康状况或估计他们的距离,它们都会知道这些信息。
但这算不算作弊?
有几种方法可以回答这个问题。首先,OpenAI可以创建视觉系统来读取像素并检索机器人API提供的相同信息。(没有这么做的主要原因是非常耗费资源。)这很难判断,因为没有人知道它是否会有效,直到有人真正做到了。但它可能无关紧要。更重要的问题可能是:能否在人类与机器之间展开公平的竞争?毕竟,如果我们想要了解人类玩家如何玩Dota 2,我们是否需要为OpenAI Five配备机械手以操作鼠标和键盘?
这些问题有点滑稽,但它们强调了很难在人类与计算机之间建立真正公平竞争环境的可能性。这样的事情并不存在,因为难道需要机器像人类一样思考,就像飞机像飞鸟一样飞翔?正如人工智能游戏研究员Cook所说的那样:"当然,计算机在某些方面比人类更好。这就是我们发明计算机的原因。"
Brockman表示,"也许我们需要更加深入地思考为什么要举办这些活动。除了游戏之外还有更多内容。我们玩Dota游戏的原因并非如此,我们之所以这样,是因为我们认为可以开发出能够在未来几十年内为人类提供发展动力的人工智能技术。"
这个雄心勃勃的主张是真实的。用于训练OpenAI Five的是一个名为Rapid的系统,正在应用于其他项目。例如,OpenAI已经用它来训练机器人的机械手以类似人类的灵活性来操纵物体。人工智能一样也存在局限性,Rapid并不是无所不能的算法。但总的原则是:实现任意目标所需的工作(如在视频游戏中打败人类)有助于刺激人工智能领域的发展。
韩国围棋选手李世石在2016年被AlphaGo击败,但他学会了一些新技能。
它还可以为那些受到机器挑战的人类提供帮助。例如,AlphaGo击败围棋世界冠军的故事中最引人入胜的一部分是,尽管围棋冠军李世石被人工智能系统击败,但他和AlphaGo社区的其他成员也从中学到了很多经验和技巧,AlphaGo的游戏风格颠覆了几个世纪以来的人们公认的智慧,其行为仍在研究之中,而李世石在与AlphaGo的比赛之后,与其他人类棋手比赛中连续获胜。
在Dota 2游戏世界中已经开始发生同样的事情:玩家正在研究OpenAI Five的游戏过程以发现新的战术和动作。至少有一个以前未被发现的游戏机制,它允许玩家在远离对手的范围内快速补给某种武器,机器人的这种发现将让人类玩家受益。正如人工智能研究员Merity所说:"我真的想坐下来观看这些比赛,这样我就可以学习新的策略。而正在研究这些东西的人们会说,'这是我们需要投入游戏的东西。'"
这种人工智能训练现象在将来可能会变得更加普遍。从某些方面来看,它似乎是一种仁慈的行为。机器人在超越人类能力的同时,也会提供一份礼物。
当然,这不是真的,人工智能只是人类发明的另一种自我教育方法。但这就是我们进行比赛的原因。而对于人类玩家和机器来说,这是一种意义深刻的学习体验。