AI在游戏领域并不算是一个新鲜事物,几乎每一款重要游戏里都有AI的身影。游戏AI早期大部分是通过人工规则的方法实现,直到近几年,才迈入深度学习领域。
从技术角度来说,游戏也是一块检验AI能力的“试金石”。1997年,IBM生产的国际象棋超级电脑深蓝击败世界冠军加里·卡斯帕罗夫,此后“世界上最复杂的棋类游戏”围棋就成为了AI的下一个挑战对象。
2016年,Google旗下DeepMind研发的围棋AI AlphaGo击败韩国著名棋手李世石,这是以深度学习为代表AI的一个重要里程碑。2017年,AlphaGo战胜世界第一棋手柯洁,自此这个围棋AI再无人类对手。
AlphaGo对战李世石
下一块试金石在哪里?业界认为复杂策略游戏可能是下一个里程碑。比起象棋和围棋,复杂策略游戏将为电脑带来更大挑战,具体挑战包括:
1. 地图复杂,不断变化,且信息不完全(AI与人类视野一致),不存在最优策略;
2. 操作空间巨大。以5v5 MOBA游戏为例,10位参与者要在策略规划、英雄选择、技能应用、路径探索及团队协作上面临大量、不间断、即时的选择,这带来了极为复杂的局面,预计有高达10的20000次方种操作可能性,而整个宇宙原子总数也只是10的80次方[1];
3. 需要长期规划,一切的策略选择都要以最终胜利为依归。
如果AI能在如此复杂的环境中,学会和人一样实时感知、分析、理解、推理、决策并行动,那么AI就可能在多变、复杂的真实环境中发挥更大的作用[1]。
也就是说,AI的目的并不是要在游戏里战胜人类,而是通过越来越复杂的游戏训练,最终解决现实生活中的问题。
目前世界顶级科技公司都在推进此类研究。2019年,人工智能非盈利组织OpenAI开发的OpenAI Five战胜《Dota 2》TI18的冠军团队OG。
《Dota 2》
同年,DeepMind宣布旗下游戏AI AlphaStar在《星际争霸 2》天梯榜上神族、人族和虫族三种族都达到宗师段位,碾压99.8%的人类对手。
《星际争霸2》
2017年,腾讯AI Lab与天美工作室群旗下游戏《王者荣耀》展开AI联合研究,研发策略型AI绝悟,寓意是“绝佳领悟力”[1]。2019年,绝悟在与职业选手赛区联队的5v5竞技中获胜,这表明绝悟已达《王者荣耀》电竞职业水平[1]。
在赛区联队全队覆灭后, 绝悟的兵线尚未到达,下路高地塔还有过半血量,绝悟果断选择四人轮流抗塔,无兵线强拆塔。* 注:赛事尾声,赛区联队团灭后,绝悟未直接推水晶,而是计算整体收益后,选择先推最后一个高地塔,再推水晶直至胜利[2]。
同时期,绝悟的1v1版本SUPEX 战队在2100多场顶级业余玩家体验测试中胜率达到 99.8%[2]。
未来游戏AI将如何发展?为了回答这个问题,我们邀请到了一位来自腾讯AI Lab的专家,以及三位做游戏的天美人,请他们聊一聊自己喜欢的NPC,还有对游戏AI未来的畅想。
两位让我印象深刻的游戏NPC:
1. 《生化危机4》里面的Ashley。当她站在高处,Leon用武器瞄准裙底,她就会两腿一闭,双手遮裙,双膝微弯,故作矜持地说:Hey,what are you looking at?当然她也会重复这一句台词(囧)。
《生化危机4》
2. 《合金装备 2》里面的士兵。因为这是一款动作潜入类游戏,所以通过躲避士兵的巡逻完成任务是最大的乐趣,比如故意放一本美女杂志吸引士兵的注意力,Snake顶一个纸箱子就能蒙混过关。当然这些士兵大部分都是憨憨,规则固定,没有其他的变化。
《合金装备 2》
上面两个NPC的AI都是基于传统的规则(Rule-Based)编写出来的,一般都是有限状态机或者行为树,这个方法好处是简单直接,缺点也很明显,不够拟人,缺乏行为多样性,或者本身能力不够.
注:早期游戏中的AI,大部分是通过人工规则的方法来实现的,这类方法就包括了有限状态机和行为树[3]。
有限状态机的方法是定义有限的行为状态,通过判别条件来触发不同的状态转移。这个方法的优点是设计简单、容易实现,缺点在于随状态增多而急剧复杂[3]。
行为树也是一个在游戏中比较常用的方法,它通过穷举所有行为作为节点,条件驱动下逐级遍历确定当前行为。这个方法的优点是逻辑清晰,容易拓展,缺点在于难以适应复杂行为,且实现拟人化非常困难[3]。
相比于传统AI,现在基于模型learning的AI,在引入深度学习和强化学习的方法之后, 在行为多样性和完成任务的能力方面有了质的提升,比如AlphaGo在围棋上超越人类的表现,腾讯的绝悟在《王者荣耀》达到职业水准,绝觅在《穿越火线:枪战王者》里面作为PVE模式的AI。
注:近期的AI游戏研究,大部分是基于深度学习的方法,主要包含两大类,一个是监督学习或模仿学习,一个是强化学习[3]。
监督学习是通过海量有标记的训练数据为基础,推导出行为预测函数。这个方法的优点在于能够模拟不同级别的目标行为,做到很好的拟人化。缺点在于过度依赖于数据,特别是标注数据的质量[3]。
强化学习通过构建奖励和惩罚刺激环境的角度出发,优化AI行为逻辑。这个方法的优点在不依赖已有数据并且能够探索出新的策略,甚至于超越当前人类的认知[3]。
以《王者荣耀》游戏AI绝悟为例,达到《王者荣耀》电竞职业水平的绝悟版本建立了基于“观察-行动-奖励”的深度强化学习模型,无需人类数据,从白板学习(Tabula Rasa)开始,让AI自己与自己对战,一天的训练强度高达人类440年[1]。
AI从0到1摸索成功经验,勤学苦练,既学会了如何站位、打野、辅助保护和躲避伤害等游戏常识。更惊喜的是,AI也探索出了不同于人类常规做法的全新策略。团队还创建One Model模型提升训练效率,优化通信效率提升AI的团队协作能力,使用零和奖惩机制让AI能最大化团队利益,使其打法果断,有舍有得[1]。
个人认为,AI+游戏要更深入地结合,需要具备下面三个能力:
1. 拟人化:顾名思义,AI要足够像人,即针对不同的场景(State),能做出不同的反应(Action),这个反应是符合人的逻辑的,并且具备多样性和随机性。腾讯的绝悟在《王者荣耀》,绝觅在《穿越火线:枪战王者》的PVE的尝试,通过模仿学习(Imitation learning),结合人类玩家数据和强化学习的方法(Learning from demostration),取得了不错的效果。
《穿越火线:枪战王者》PVE模式“电竞传奇”中,AI敌人有着十分接近人类玩家的行为模式 —— 不仅懂得寻找掩体,还会各种跳、蹲合理躲避枪线,有着清晰合理的战术选择,甚至还有小身位,二段跳,击杀后切刀等操作细节[4]。
2. 能力分级:在游戏中一味地强调AI超越人类水平不是目的,人在玩游戏过程中,AI旗鼓相当,或者根据喜好匹配其能力更有可玩性才是目标,比如在战术竞技类型的游戏里面,传统AI只能“送快递”,如果可以根据玩家水平定制不同能力的AI,游戏肯定会更有意思。基于强化学习和模仿学习,AI具备不同级别甚至风格的能力是可控的。
3. 拥有常识和推理:比如知道门是可以开的,窗户可以爬出去,过河可以通过游泳或者桥这些常识和推理能力。常识和知识的推理,AI技术还处于发展阶段。
最后说一下我理想中的游戏,是一个江湖,如同西部世界之于美国,武侠之于中国,这个江湖里面,AI能学习到不同的行为准则(Policy),各司其职有着合理并且多样性,一定会带来如同真实世界的无穷可玩性。
《西部世界》
《最后生还者》中,艾莉有时也会拔出枪战斗,但在受到威胁时她可能会犹豫不决,最后为了保命才扣动扳机,这时我觉得她像个真人一样。
《最后生还者》
广义AI的目标是让机器能做出与人类相似的思维或行为,而游戏AI只希望让玩家感觉到NPC在像人一样行动或思考。这其中的区别在于,游戏是围绕玩家打造的。对游戏制作者来说,游戏AI是否聪明并不重要,让玩家获得更好的游戏体验才是最重要的。
未来的游戏AI能根据玩家的行为做出反馈,记得玩家之前做过的事情,能和周围环境互动,甚至会有自己的作息表,NPC有自己的活动路线,他们有自己的生活区域。玩家是通过视觉和听觉来理解游戏世界的,AI的行为只有被看到或听到才是有效的,能带给玩家出色观感体验的AI才是好AI。对于不同的品类,游戏AI可能会呈现不一样的玩法。
在PVP这种对战类的品类中,可以看到可以看到像基于深度强化学习训练所得到的强AI,如《王者荣耀》的绝悟,围棋的AlphaGo,《星际争霸 2》的AlphaStar等。但如果玩家一直挑战无法战胜的敌人,会有很大的挫败感,久而久之,就丧失了游戏的乐趣。可以通过生成各种不同难度的残局,通过“福利”来鼓励玩家不断挑战,玩家在调整的过程中,自身技能也能得到成长。
在PVE中,AI可以用于控制环境、事件和NPC上。通过AI的加持,天气变化,交通,以及可交换物会更加动态,从而获得更加真实的交互体验。例如《模拟人生》中的人会自动坐到椅子上,躺到床上;《巫师3》中,白天才会开业的商人。
《巫师3》
未来的AI不仅可以用于控制NPC的行为,还能掌管整个游戏,或者说设计整个游戏。随着游戏的进行,游戏AI可以为玩家随机生成地图和关卡,类似《无人深空》中程序生成的星球。或者通过提炼设计规则,让AI自动完成整个关卡的搭建。只要玩家愿意玩下去,就有无穷尽的关卡可供探索。
《无人深空》
AI还可以利用机器学习、数据发掘等方式来对玩家的行为数据进行学习,根据每个玩家的习惯来定制生成最适合他的元素。或者根据全体玩家的反馈来修改、优化游戏的整体设计。在《GTA 6》中,英伟达利用AI来生成虚拟的街道,相信有一天,由AI生成的游戏也会成为现实。
随着AI技术在游戏中的广泛落地,我们和游戏的交互方式可以得到扩充,游戏中通过语音输入,玩家可以和NPC对话,伙伴AI可能成为我们真正的知心好友。玩家通过更真实,更丰富的交互体验,能在虚拟世界中体验不一样的人生。
最近几年玩的游戏里,NPC表现方面给我印象最深刻的,毫无疑问是《荒野大镖客2》—— 逼真的画面渲染,无处不在的交互细节,好莱坞级别的台词、配音和演出,天衣无缝地结合在一起。这部作品把通过拟真触及人类感情这件事推到了新的高度,而众多NPC里,给我印象最深刻的要数德奇·范德林。
《荒野大镖客2》
对帮派成员的爱护,再干一票的野心,时而表露出来的私心,失利后的疑神疑鬼却强装镇定......各种复杂的情感夹杂在一起,让人捉摸不透,而这正是人性最复杂的地方。
借助精彩的演出给我留下深刻印象的NPC还有不少,比如《使命召唤:现代战争 2》里在战火里回头扶起受伤主角的Ghost,《最后生还者》里的艾莉,都是“人味”满满。
《使命召唤:现代战争 2》
然而这些NPC都有一个致命的问题:重复游玩就立刻失去人性—— 永远重复着你第一次玩的时候的台词和行为,提醒你这只是一场事先编排好的演出,和时下流行的机器学习AI并没有什么关系。
除了围棋AI吊打顶尖人类选手,机器学习/神经网络AI还在很多领域都取得了惊人的成果,但在游戏中的应用,AI技术似乎还停留在战斗这种易于抽象为具体输入输出参数的行为和策略上。距离模拟一个活生生的人,还有比较遥远的距离,毕竟人实在是太复杂了。
不过人心复杂不妨碍我们从外表开始,比如爱丁堡大学的Method Studios成功的把神经网络应用在了3D角色在各种地形的行走动作表现上。
截图来自视频“Phase-Functioned Neural Networks for Character Control[5]”这将极大地丰富游戏角色与场景的交互表现,比如开始在各个电视台上岗的AI主持人,虽然只能不苟言笑地播报新闻,但是已然有些真假难辨了。
未来我们可以期待AI用于对人物神态、台词和行为的全方面模拟,像真人一样给出丰富多彩的交互反馈,更重要的是,各行各业都可以共享AI虚拟人物的研究成果,让AI在各个方面更像人一样为人类服务。
个人觉得《GTA》系列里的AI最有人味,每次交流的时候都有可能触发不同的事件,感觉未来的NPC将更加智能。有大数据和学习的支持,AI不再是通过策划的脚本与玩家冷冰冰地交流。
随着硬件机能的增强,渲染画面将进一步提升,当然也有可能依托现在的云游戏技术把大规模渲染放到服务器上,实时的光线追踪的画面将不是梦。
另外,随着图像识别和语音识别技术的发展,未来可能有更多的外设 ,像《黑客帝国》里一样,我们的动作或者语言都会推动游戏剧情的发展,不再需要生硬的按键。NPC当然也将拥有更多的智能,比如可能存在记忆等 ,不再像现在的游戏里NPC那样生硬。
参考资料:
1. https://ai.tencent.com/ailab/zh/news/detial/?id=27
2. https://ai.tencent.com/ailab/zh/news/detial?id=52
3. https://ai.tencent.com/ailab/zh/news/detial/?id=26
4. https://zhuanlan.zhihu.com/p/103817396
5. https://www.youtube.com/watch?v=Ul0Gilv5wvY