雷锋网消息,关于 OpenAI 的 Dota 2 游戏人工智能在 The International 比赛上击败了人类玩家的消息,就像当时的 AlphoGo 一样,又一次刷屏了。我们仿佛看到了 AI 又在得意地笑。
这次比赛重要的是,像 Dota 这样的 MOBA 多人在线战术竞技游戏,以及星际争霸这样的 RTS 即时战略游戏,一直被视为超越了当前 AI 技术的能力,远非 AI 能掌握及击败人类的。这些游戏需要在比赛中有长时间的战略决策和多人合作,并具有比国际象棋、围棋等更复杂的状态和行动空间,后面的几种棋类游戏在过去几十年里,都逐一被 AI 技术攻略了。
雷锋网此前报道,DeepMind 已经研究星际争霸 2 有一段时间了,前不久也发布了一些研究成果。国内的阿里巴巴也与伦敦大学合作,研究过 AI 与星际。但到目前为止,研究人员还没有取得重大突破,而且一般认为,我们距离让 AI 在星际争霸 2 中战胜人类还有至少1-2 年。
这也是为什么 OpenAI 的消息如此震惊的原因。
但如果更多了解 Dota 2 的 AI 是怎么样的,它是如何训练的,它用了什么样的游戏环境,就会发现,它取得了不少令人印象深刻的研究成果,但不是想像中那样的突破性的 AI 技术。前 Google 大脑团队成员 Denny Britz 就在 hacker news 上发起了讨论,从他的分析和其他讨论中也可以看出不少端倪。
不久后 OpenAI 就会公布具体的研究细节。不过先来看看 Dota 2 的 AI 解决的问题在现实中有多难,以及它与 AlphaGo 比又怎么样。
1v1 的难度与 5v5 没法比
一般玩 Dota 2 游戏,都是 5v5 的对局。这种玩法需要用到高级的策略制定,团队沟通和协调能力,通常会是 45 分钟左右一局。1v1 游戏的限制就很多了,两名选手基本上沿着单线行动,试图杀死对方,游戏时间通常在几分钟内。1v1 比赛需要的是机械技能和短期战术,不需要长期规划或协调,而后者才是对当前 AI 技术最具挑战性的。事实上,在 1v1 中可以采取的有用行动数量是少于围棋的。有效状态空间,即玩家对游戏中正在发生的情况的想法,如果以更有效的方式进行表征的话,应该比围棋要小。
AI 可以得到更多信息
OpenAI 的人工智能很可能是在游戏 AI 的 API 上开发的,这样它可以访问人类无法访问的各种信息。而且,即使 OpenAI 研究者限制了访问某些类型的信息,AI 比起人类仍然可以得到更准确的信息。例如,一项技能只能在一定范围内击中对手,而人类玩家必须看屏幕来估算与对手的距离。这需要练习,但 AI 就知道确切的距离信息,然后立即决定使用技能。获得各种精确的数据信息会带来很大的优势,比如在这次的游戏过程中,AI 就有好几次是在最远距离上发动了技能。
反应时间优势
AI 可以做到立即反应,但人类不行。如果反应优势再加上上面说的数据优势,就会形成另一大优势。比如,一旦对手逃出特定技能的使用范围,AI 就可以立即取消使用,避免无效的技能施放,也不会耽误回复时间。
仅使用特定的游戏角色
Dota 中有 100 多介角色,每个都有不同的能力和优势。这次比赛中,OpenAI 的人工智能学习玩的唯一角色是影魔,当然影魔也是中路 solo 的常用英雄。它的技能一般直接攻击,而不是更复杂的让技能持续一段时间,这样就更容易从距离数据和快速反应时间这两个优势中获益,这正是 AI 擅长的。
部分规则写死
这次的游戏 AI 也不是一切从零开始训练的,它对游戏算是有一些“了解”。装备选择是写死的,押兵线这种技术也是,这些对比赛来说也很重要。根据现在的消息,AI 学习的是与对手的互动。
总体来说,鉴于 1v1 比赛主要是机械技能的比拼,那人类玩家被击败也就不奇怪了。而且由于比赛环境有限制,加上人为限制了一系列可能的行动,以及几乎没有必要进行长期的规划或协调,结论也就显而易见了,即在这场 1v1 的 Dota 比赛中,AI 击败人类冠军要解决的问题,实际上比围棋要更简单。
AI 技术本质上没有出现突然的突破,它的成功是算法的成功,也是研究者的成功。研究者聪明地设置了问题,并用正确的方式避开了当前技术的限制,取得了想要的成果。
据称,OpenAI 的人工智能的训练时间大概是 2 周左右。AlphaGo 当时需要在 Google 的 GPU 集群上进行几个月的高度分布的大规模培训。自那以来技术上已经取得了一些进展,但还不足以将计算要求降低一个数量级。
或许不明真相的新闻讨论有些过度了,不过实际上这次的研究还有不少非常令人惊讶的成果。
完全通过自我对抗进行训练
这次 AI 不需要任何训练数据,它也不用从人类的演示中学习,而是完全从随机开始,并且不断与自己对战。虽然这种技术并不新鲜,但令人惊讶的是,AI 学到了一些人类玩家已经在使用的技术,这已经很厉害了。或许 AI 会学会其他人类不曾用过的技术,就像我们在 AlphaGo 与人类的对局中看到的那样,人类玩家已经开始从 AI 不那么容易理解的下法中学习了。
AI 加电子竞技有了很大进步
用 Dota 和星际这样具有挑战性的环境来测试 AI 技术,是很重要的。如果电子竞技社区和游戏开发商也对 AI 技术应用于游戏的价值很感兴趣,那在得到他们的支持抂,AI 技术很可能会有进一步的进展。
部分可观察的环境
虽然 OpenAI 用游戏 API 开发的细节尚不清楚,但从人类玩家的角度来看,游戏中只能看到屏幕上显示的内容,玩家的视角受到了限制,比如说在上坡这样的地形上,就无法看清坡上的状况。这意味着,与围棋或象棋不同,对战游戏是处于一种部分可观察的环境中,无法了解有关当前游戏状态的完整信息。这些问题 AI 很难以解决,属于需要进行积极研究的领域。目前还不清楚 1v1 的 Dota 比赛中,环境的可观察性有多重要。
其实对于很多乍听起来耸人听闻的技术,都需要有清醒的认识。不出意料的,雷锋网(公众号:雷锋网)发现马斯克也在 Twitter 对这一事件作了评价。
他说,“OpenAI 第一次在电子竞技中击败了人类顶级选手,难度比象棋和围棋都要大得多”,随后开始谈论 AI 的危害,“没人喜欢被监管,但一切(汽车、飞机、食品、药品等)可能给公众带来危害的都受到了监管,AI 也应如此”。
这些炒作当然不是 OpenAI 研究者的错,研究者对自己成果的局限一直有非常清晰和明确的认识。过度解读 AI 的进步反而会带来一些危害,我们期待 OpenAI 公布他们研究的技术细节,避免错误的猜测。