雷锋网 AI 科技评论消息,2018 年 11 月 13-17 日,AAAI 人工智能与交互式数字娱乐大会 (AI for Interactive Digital Entertainment) 在阿尔伯塔大学举办。会上宣布了一年一度的星际争霸 AI 挑战赛结果;这也是即时战略(RTS)游戏 AI 比赛中最重要的比赛之一。
第八届(2018 年) AIIDE StarCraft AI Competition 星际争霸 AI 挑战赛共有 27 支团队参赛,包括知名机构如三星、中科院自动化所、Facebook 等,知名高校如 Stanford University,以及许多独立参赛队伍。挑战赛使用 12 台计算机进行了大约 2 星期的比赛。经过每个 bot 平均大约 2600 局、每组对手平均大约 100 局,共 34694 局车轮战 1v1 比赛之后,三星、Facebook 以及中科院自动化研究所分别以 95.91%、90.86%、87.11% 的胜率荣获前三名。
AIIDE StarCraft AI 挑战赛自 2011 年起已连续举办八届,该竞赛以星际争霸 1 为载体,以促进和评估用于实时战略游戏(RTS)的人工智能水平为目的。近年来,它更是成为博弈对抗、强化学习、模仿学习、多任务学习等乃至通用人工智能算法研究的主要平台和工具。由于包括对手不确定在内的信息不完全以及状态动作空间巨大等问题,使得星际争霸AI较围棋AI更极具挑战性,因此也吸引了包括DeepMind、Facebook、三星、斯坦福大学、中国科学院自动化研究所在内的国内外顶尖研究机构投入研究,相关核心技术可以广泛应用在金融学、经济学、生物学、政治学和军事等领域。
第三名 中科院自动化所,神族 bot 「CSE」
在 2017 年的星际争霸 AI 挑战赛中,来自中科院自动化所的 AI「CPAC」就以 71% 的胜率获得了第四名的成绩。雷锋网 AI 科技评论报道文章请见《中科院自动化所拿下星际争霸 AI 竞赛第四名,顺便发布了一个训练 AI“大局观”的数据集》。
今年的比赛中,由中科院自动化所智能系统与工程研究中心(CRISE)开发的神族 bot「CSE」以 87.11% 的胜率获得季军。据了解,该中心为自动化所独立建制的科研部门,致力于研究博弈对抗与自主进化智能研究,包括感知智能与认知决策智能。「CSE」的作者包括:张俊格、郭玮、尹奇跃、詹东、王琦玮、胡益珲、申生奇和黄凯奇。2017年的CPAC也是由该团队主要人员开发。
「CSE」使用的种族是神族(Protoss),采用的是规则和学习联合驱动的方式。比如何时采用隐刀偷袭吸纳了人类玩家的经验知识;在建造队列为空的时候,「CSE」使用深度学习来预测待构建单位,等等。
第二名 Facebook,虫族 bot「CherryPi」
相比去年比赛中的 69% 胜率、第六名成绩,来自 Facebook 的「CherryPi」今年有了大幅改进,取得了 90.86% 的胜率。「CherryPi」首先对于每个种族的对手有 8~13 种预先准备的不同的策略,利用比赛是多场 1v1 比赛的特点,它会根据与对手的过往比赛的胜率选择最优的策略。除此之外,它还使用了一个预训练的机器模型,根据当前比赛状态估算不同可用策略的胜率,然后在某些状况下切换为胜率最高的策略。这种切换的设计也产生了「混合策略」的效果。「CherryPi」中使用的机器学习技术还包括用于绕开障碍物、避战与放风筝的寻路搜索算法、根据人类数据学习建筑布置、离线强化学习与在线学习等。「CherryPi」也是今年唯一一个使用了 GPU 计算能力的 bot。
第一名 三星,人族 bot 「SAIDA」
我们都知道星际争霸在韩国尤为盛行,自 2002 年来,韩国职业星际选手陆续加入了职业战队,并由包括三星、SK Telecom 等知名公司赞助。「SAIDA」的成功很有可能来自其职业星际选手的助力。
根据介绍,「SAIDA」bot 的核心是使用了一个稳定的游戏策略,它会首先考虑防守,然后在游戏中期伺机一波带走对方。他们认为这种策略能应对绝大多数对手的策略,弱点也最少。
「SAIDA」也应用了一些 AI 技术。在 UAlbertaBot 的技术基础上(下文还会提到),他们使用了一个有限状态机来控制单位和建筑。每个单位和建筑在每种战局下都有一个特定的状态。并且使用了多个搜索算法来寻找敌方基地或者可以建造建筑的区域。
在开发过程中「SAIDA」还探索了使用 CNN 和编解码器结构向人类选手学习进攻时机、在局部游戏中用多智能体强化学习方法学习单位微操,不过这些技术并没有添加到此次参加比赛的版本中。
详细排名
包含了所有团队的成绩以及详细比赛数据的官方成绩表单如下图。
作为比赛中胜率最高的 bot,「SAIDA」面对人类选手的表现如何呢?三星团队找业余选手和职业选手进行了测试,「SAIDA」可以击败业余选手,输给了职业选手。不过他们认为差距并不大,击败职业选手的曙光就在前方。
主办方补刀:既然已经出现了能击败人类的 bot 了,那么未来业余选手也许再也没有获胜的机会了也说不定呢……
绝大多数参赛团队都使用固定的种族,2016、2017、2018 三年中都仅仅有一支团队可以「随机种族」。显然单一种族意味着放弃了广度,可以把已经发现的有效的策略挖得更深,也就更容易取得好成绩。2017、2018 年的随机种族方案都来自加拿大纽芬兰纪念大学的 UAlbertaBot,今年他们仅以 34.71% 的胜率位列 19 位。基于 UAlbertaBot 然后获得冠军的三星「SAIDA」显然只是借用了技术,用以实现自己的策略。
「SAIDA」使用的策略显然有极大的优势。根据挑战赛主办方提供的胜率波动图表,在一开始的比赛中「SAIDA」就取得了最高胜率的位置,并一直稳定保持到了最后。Facebook 的亚军「CherryPi」与中科院自动化所的季军「CSE」在刚开始时有交替波动,然后也很快稳定了下来。
「CherryPi 」的 GitHub 地址:https://github.com/TorchCraft/TorchCraft
「Locutus」的 GitHub 地址:https://github.com/bmnielsen/Locutus/
雷锋网 AI 科技评论报道。