立即下载 知乎日报 每日提供高质量新闻资讯

Facebook 悄悄参加星际 AI 大赛……输了,然后中国队夺得第四

图片:《星际争霸:母巢之战》

量子位,վ'ᴗ' ի 追踪AI技术和产品新动态

第八届星际争霸 AI 大赛(StarCraft AI Competition)终于落下帷幕。

这次大赛选用的版本是《星际争霸:母巢之战》,开启战争迷雾。所有参赛的 AI 在 16 台虚拟机上,1v1 捉对厮杀,为期两周共进行 41580 场大战。按照最终的胜率排定座次。

每局比赛 60 分钟,未分高下时得分多者胜出。作弊或者计算超时都会被判出局。

共有 28 支队伍参赛,其中有 15 支属于独立战队(Independent),其他基本来自大学:

美国哈佛大学、荷兰代尔夫特理工大学、瑞典皇家理工学院、荷兰马斯特里赫特大学、巴西米纳斯联邦大学、日本筑波大学、加拿大纽芬兰纪念大学、法国南特大学、法国高等信息工程师学院、日本立命馆大学、韩国世宗大学。

还有三个队伍是量子位格外关注的。

比方说中国团队。

其中以独立战队身份参赛的“CPAC”,背后是一个 Junge Zhang 领衔的 13 人研发团队,来自中科院自动化研究所;这个星际 AI 基于 Steamhammer bot,然后增加了一些新的策略,并通过机器学习的方式训练了一个多层感知网络来生产战斗部队。

(Steamhammer bot 传送门:satirist.org/ai/starcra

还有一个中国团队由 Tang Zhentao 领衔,代号“KillAll”,据推测应该是来自中科院自动化研究所复杂系统管理与控制国家重点实验室;不过相关信息实在是太少。

另一个值得关注的队伍是“CherryPi”(樱桃派),背后是来自 Facebook 人工智能研究实验室的八人团队。

最终的战果:不隶属于任何机构的独立战队们,包揽前三名。

CPAC 以 71%的胜率排名第四;CherryPi 以 69.08%的胜率排名第六;KillAll 以 43%的胜率排名第 18。第一名“ZZZKBot”胜率 83.11%,平均用时 8 分钟。

这几位 AI 用的都是虫族。

Facebook 的团队,在这个大赛中显得有些异类,毕竟这是唯一有企业背景的选手,而且是一个押注 AI 已久的科技巨头。

科技巨头的 AI 杀入星际争霸并不稀奇。今年 8 月,Google 旗下的 DeepMind 宣布进军星际,不过他们选择的方向是《星际争霸 2》。

看起来,星际争霸已经成为巨头争霸的下一个战场。

Facebook 的人工智能团队至少已有 80 余人,带领这个团队的是大名鼎鼎的 Yann LeCun,他们已经发表了很多研究和论文(其中三篇与星际争霸有关)。但目前 Facebook 在人工智能领域还没有取得 AlphaGo 那样的成就。

而这次参赛成绩也表明,Facebook 还有很长的一段路要走。

Facebook 研究科学家 Gabriel Synnaeve 表示,他们把 CherryPi 当做一个基线,以及未来继续在星际领域进行研究的基础,“我们想看看它与现有 bot 相较如何,特别是测试一下是否有需要纠正的缺陷”。

人工智能对于科技公司的重要性已经不言而喻,而星际对于 AI 研究的重要性和挑战,不仅仅是指挥战斗这么简单。与下围棋这件事相比,《星际争霸》的复杂性要大得多也要困难得多。

即便 DeepMind 现在也没有突破性的进展。(参见量子位之前的报道)

星际 2 是个实用的基础 AI 研究环境,因为游戏本身复杂多变,且胜利方式不固定。
玩家想要取胜需要同时做多手准备,比如管理并创造资源、指挥军事单位和部署防御结构等操作需要同时进行,逐步完成。此外,玩家还需预测对手的策略。
这项任务确实不容易,但不是无解。DeepMind 和暴雪尝试将游戏分为多个“迷你游戏”,将不同任务分解成“可管理的组块”,比如建立特定单元、收集资源或在地图上移动等。
细分是为了方便研究人员进行不同任务的测试比较及细化,最终在智能体中组合,从而教会智能体通关整个游戏。

为啥这个大赛没用星际 2?好像是没跟暴雪爸爸谈好……

回到这次的星际争霸 AI 大赛,独立参赛的队伍,通常 bot 背后是程序员制定的规则和策略。比如摘得冠军的 ZZZKBot,背后是澳大利亚的程序员 Chris Coxe。他独自创建了这个 AI,但其中只有一些简单的学习功能,背后更多是各种预先编辑好的策略。

而对于科技巨头来说,他们更多的依靠机器学习,通过积累大量的游戏数据,让 AI 自己制定相应的游戏策略。不过据说这次 Facebook 也没有把全部研究都注入 CherryPi 之中。尽管如此,CherryPi 还是获得了对手的肯定,获得第二名的 PurpleWave 作者就表示,CherryPi 对时机的把握让他印象深刻。

那么获胜的队伍都依靠了什么策略和技术?量子位也简单介绍一下。

第一名:ZZZKBot

虫族,单基地 Rush 布局:4-Pool,Speedling,Hydra,Muta。使用手工编码的逻辑,来进行策略选择。

这个 bot 其实只能执行一种单基地 Rush 战术,单它的对手现在比较吃这一套。另外,这个 bot 能在游戏中学习一些策略,以判断哪种 rush 是最有效的。以及,这个 bot 几乎没有掌握任何战斗中的微操作。

“这原本只是想证明一个概念”,作者 Chris Coxe 自我评价:“源代码并不是那么好”。

第二名:PurpleWave

这个 bot 主要是用 Scala 写出来的,作者是美国软件工程师 Dan Gant,他今年一月开始启动这个项目。

PurpleWave 看起来比第一名更为“AI”一点;会微操作,有多种不同的策略。PurpleWave 的高级决策被构建为一个任务网络,它能根据对手以往的比赛情况,选择不同的对抗策略。

第三名:Iron

这是去年的冠军,作者是法国程序员 Igor Dimitrijevic。Iron 于 2016 年开始研发,前身是 2015 年参赛的 Stone。

Iron 是一个多智能体系统,每个智能体控制一个单位。整体行为的鲁棒性是其主要目标,每个智能体都是高度自主的,可以在 25 种行为之间切换。每场对决,Iron 都采用相同的开局,但对根据对手的情况进行反应和修改策略。

第四名:CPAC

团队名单:Junge Zhang,Xun Zhang,Qiyue Yin,Dong Zhan,Shihong Deng,Huikai Wu,Peixi Peng,Wenzhen Huang,Jing Kong,Debang Li,Yange Fang,Tairan Zhang,Junliang Xing。

CPAC 是首次参赛,整个研发耗时数月。其他情况开头也介绍过了。

最后说一下这个大赛的情况。

星际争霸 AI 大赛,是加拿大纽芬兰纪念大学 David Churchill 组织的年度活动。这个比赛的目的是促进和评估即时战略游戏(RTS)对人工智能的意义。

整个比赛使用 BWAPI,这是一种可以让 AI 程序控制《星际争霸:母巢之战》的软件库。

另外还有一些基本数据分享一下。比如历届选手的种族分布,2017 堪称虫族大崛起:

大会官方还提供了一个开源项目:UAlbertaBot,包含完整的文档。不过这只是一个入门指导,如果你想基于这个开源代码参赛,必须对其进行重大修改。主办方也不想一个 bot 的多个副本展开竞争。

这个开源项目的地址在此:github.com/davechurchil

问耕 发自 凹非寺
量子位 出品 | 公众号 QbitAI

扫描二维码下载知乎日报

支持 iOS 和 Android
二维码下载知乎日报
阅读更多 便宜、简单、味道好:三道家常快手菜,半个钟就能烧出来 下载 「知乎日报」 客户端查看更多