AI在视频游戏中的应用

副标题:游戏AI技术的发展现状以及在视频游戏领域的应用概览

(原作者:)Written by Laura E. Shummon Maass and Andy Luc

大多数人可能会认为,在过去几年中发布的大多数游戏都给非玩家控制的角色、生物或动物上边 使用了非常复杂的AI 技术。然而,许多视频游戏开发者对在游戏中应用先进的AI技术是犹豫不决的,因为他们害怕失去对整体玩家体验的控制。事实上,在视频游戏中使用AI技术的目标,不是要给玩家创造一个无与法击败的对手,而是要在很长一段时间内最大限度地提高玩家的参与度和体验感。

如果你选择了新游戏并开始玩,你会享受一次又一次地被完全击败,还是更愿意与某个略高于你水平的对手战斗,这样你就可以随着时间的推移学习和提高? 绝大多数玩家可能会选择后者。这并不意味着AI技术在现代游戏领域没有用武之地,只是意味着它的目的与我们最初期望的不同。 我们想创造的与玩家互动和对战的AI,不最厉害的,而是最令人愉悦的。

游戏AI的历史

AI是一个含义非常广泛的术语,它只表示能够从玩家的行为中学习的模型。Wolfenstein 3D早在1992年发布,甚至那场比赛中的士兵也包含了A.I.的基本形式。有限状态机(FSM)算法是一个相对简单的AI,设计师创建了一个包含所有可能事件的列表,这些都可以有机器人体验。然后设计师又针对每种场景,设定了机器人的具体反应(Lou,2017)。我们可以想象1992年,Wolfenstein 3D的开发人员考虑了敌方士兵可能遇到的所有可能情况。在他们的视野中可以打开一扇门,Blazkowicz(Wolfenstein系列剧中的英雄)可以走进视野,他们可以从后面被击中,他们可能会看不到Blazkowicz等等。开发人员会汇总这个列表,并且对于每种情况,他们会告诉机器人它应该做什么。下边是Lou的文章中一个视觉效果图:

Figure 1 (Lou, 2017)

这显然是一个简单的例子。 我们可以想象,我们构建的细节会变得越来越复杂。机器人在最终放弃之前会使用多长时间去搜索Blazkowicz?如果他们放弃了,他们应该留在原地还是回到重生点(spawning point)?该列表很快就会变得非常长且非常详细。 在FSM中,游戏的开发人员将为每种情况分配特定操作。

FSM算法并不适合所有的游戏。 想象一下,如果在策略游戏中使用FSM。如果机器人被预先编程为每次都以相同的方式响应,那么玩家将很快学会如何击败机器人。这会产生重复的游戏体验,正如您所料,这对玩家来说是不愉快的。创建蒙特卡罗搜索树(MCST)算法就是为了解决FSM的重复性问题。MCST的工作方式是首先确定机器人针对当前状况,可用的所有操作。然后,对于每个可能的操作,分析玩家可以响应的方式。之后它会考虑针对玩家所有可能的操作,它可以作出的回应等。您可以想象这棵树很增长得非常快。下图展示了MCST的工作方式:

Figure 2 (Lou, 2017)

图2突出显示了使用MCST的计算机在针对人类组件进行移动之前所经历的过程。它首先查看它具有的所有选项,在上面的示例中,这些选项要么是防御,要么是提升技能,要么是攻击。然后,它构建了一棵树,预测了此后每次潜在操作成功的可能性。上面我们可以看到成功可能性最高的选项是“攻击”(因为暗红等于更高的奖励概率),因此计算机选择攻击。当玩家进行下一步动作时,计算机将重复重复树木构建过程。

想象一下像“文明”这样的游戏,计算机可以做出大量的选择。 如果为每个可能的选择和整个游戏可能的每个场景构建详细的树,计算机将花费很长时间。 它绝不会采取行动。 因此,为了避免这种巨大的计算,MCST算法将随机选择一些可能的选项,并仅为所选择的树构建树。 这样,计算速度更快,计算机可以分析哪个选择的选项具有最高的奖励可能性。

AI在《异形:隔离(Alien:Isolation)》

在视频游戏中,一种最近比较流行的高级AI形式,是Creative Assembly公司出品的《异形:隔离》的异形。虽然对于AI如何在幕后工作可能带来一些误解,但是它以一种很有效的方式,创造了一个玩家很容易获得参与感和意外感的游戏环境。

游戏中的异形角色,使用了两个AI驱动力来控制它的移动和行为:管理者AI(Director AI)和异形AI(Alien AI)。管理者AI是一个被动的控制器,负责创造一个愉快的玩家体验。为了实现这一目标,管理者AI需要时刻知道玩家和异形在哪里。但是,它并没有与异形分享这些信息。管理者AI关注所谓的威胁测量仪(Menace Gauge),它基本上只是衡量预期玩家压力水平的一个指标,这个因素由多种因素决定,例如异形与玩家的距离,异形在玩家附近花费的时间,看到玩家所花费的时间,在运动跟踪器设备上可见的时间量等。这个威胁测量仪通知异形的任务系统(Job Systems),这实际上只是异形的任务追踪器。 如果威胁测量仪达到一定水平,任务“搜索新位置区域”的优先级将增加,直到异形远离玩家移动到一个单独的区域。

行为决策树:

在深入了解异形AI如何工作之前,重要的是先弄清楚通知决策过程的结构。 异形AI使用包含100多个节点和30个选择器节点的广泛行为决策树。想象一下下面的简单示例:

Figure 3 (Simpson, 2014)

行为树的工作方式是从左到右提问题,成功的话允许沿树继续行进,而失败将回到序列节点。过程如下:序列(sequence) - >我饿了吗?(成功) - >序列(运行) - >我有食物吗?(成功) - >序列(运行) - >没有敌人(成功) - >序列(运行) ) - >吃食物(成功) - >序列(成功) - >父节点(Simpson,2014)。在任何节点,如果其中一个节点返回(失败),则整个序列将失败。 例如,如果“我有食物吗?”问题得到的回答是失败了,它就不会检查周围是否有任何敌人,它不会吃掉食物。 取而代之的是,序列将失败,该序列会结束。

序列显然可以变得更加复杂,并且变得多层次。 这是一个更深层的例子:

Figure 4 (Simpson, 2014)

请记住,序列无论成功或失败,它都会将结果返回给它的父节点。 在上面的示例中,我们假设我们已经成功接近门,但由于门被锁而且我们没有钥匙,未能打开门。序列节点被标记为失败。 结果,行为树路径恢复到该序列的父节点。以下是此父节点可能的样子:

Figure 5 (Simpson, 2014)

所以,我们没有打开门,但我们还没有放弃。 我们的父节点将会以另一个序列供我们尝试。这次它可能会通过窗口进入。异形AI有30个不同的选择器节点和100个总节点,所以它会比这个例子指数级地更加复杂,但我希望这能让你了解异形AI的工作模式。

(未完待续)

原文地址:链接

翻译人:Sand


UWA学堂,传播游戏行业的进阶内容,欢迎您的关注

人工智能(AI)在游戏中的应用(上)相关推荐

  1. 人工智能(AI)在游戏中的应用(下)

    再回来看异形AI 我们知道,异形AI是控制异形行为的系统.它永远不会从管理者AI哪里得到有关玩家位置的信息.它会得到的信息包括大概在什么位置进行搜寻.剩下就只能靠自己来找到玩家了.它确实有一些工具可以 ...

  2. 2017败北清单:人工智能在这些游戏中战胜了人类

    原文链接:点击打开链接 摘要: 20世纪90年代后期,IBM深蓝(Deep Blue)研究了一系列的国际象棋算法,期望于打败当时的世界冠军加里•卡斯帕罗夫(Garry Kasparov).终于,在19 ...

  3. 深度强化学习的人工智能在游戏中的运用:游戏AI入门及AI优化指南

    前言: 现如今,所有电子游戏都离不开AI的运用,对于游戏策划而言AI是什么,AI又是如何运作,可以说是面试时的加分项,本文在这里不探讨理论的AI(采用深度强化学习的智能AI,如腾讯AI Lab.网易伏 ...

  4. 游戏中的AI及实用算法逻辑

    这篇文章就不加具体的项目代码了,毕竟"敲代码是只是在一栋大楼设计好后具体的搬砖工作",程序猿贵在对这张图纸的设计好坏.再者这个话题我这车开的还不够稳,讲多了就翻车了.所以就跟大家分 ...

  5. 完成全球90万人工智能集装箱箱况残损检验,集装箱人工智能垂直领域领军者,中集集团人工智能企业中集飞瞳领跑全球港口航运人工智能AI

    中集集团人工智能企业CIMCAI中集飞瞳完成全球90万人工智能集装箱箱况残损检验,集装箱人工智能垂直领域领军者,领跑全球港口航运人工智能AI.CIMCAI中集飞瞳集装箱人工智能应用全球集装箱各垂直领域 ...

  6. 全球No.1港口航运人工智能企业中集飞瞳,港航人工智能AI产品成熟化标准化大规模应用,先进核心技术为港口船公司大幅提效降本智能化

    全球No.1港口航运人工智能AI企业 CIMC中集飞瞳,港航人工智能AI产品成熟化标准化大规模应用,先进核心技术为港口船公司大幅提效降本智能化.中集集团[000039]人工智能企业CIMC中集飞瞳是全 ...

  7. CIMCAI中集飞瞳成熟港口人工智能AI产品方案,打造高产出投入比的新一代高效能智能码头智能化港口智慧码头解决方案智能化港区口岸

    CIMCAI中集飞瞳成熟港口人工智能AI产品方案Ceaspectus™,打造高产出投入比的新一代高效能智能码头智能化港口智慧码头解决方案智能化港区口岸.CIMCAI中集飞瞳是全球应用落地最广,规模最大 ...

  8. 中集集团全球港航人工智能高科技独角兽中集飞瞳贯彻国家关于世界一流水平的超大型智能港口,全球顶尖AI核心技术超一流智能港口解决方案

    科技部<关于支持建设新一代人工智能示范应用场景的通知>,首批支持建设智能港口等十个示范应用场景,打造世界一流水平的超大型智能港口,形成覆盖码头运作.运行监测与设备健康管理的智能化解决方案. ...

  9. 中集集团全球港航人工智能高科技独角兽中集飞瞳贯彻国家智慧港口战略,全球最先进港航AI核心技术和工业级产品超一流智慧港口解决方案

    科技部发布<关于支持建设新一代人工智能示范应用场景的通知>,首批支持建设智慧农场.智能港口.智能矿山等十个示范应用场景.中集集团全球港航人工智能高科技独角兽CIMCAI中集飞瞳,全球最先进 ...

最新文章

  1. 关于更清楚地了解.net的垃圾回收机制
  2. maven中添加servlet、jsp依赖
  3. 网络协议,没有想象中那么难
  4. 有两个序列a,b,大小都为n,序列元素的值任意整数,无序;要求:通过交换a,b中的元素,使[序列a元素的和
  5. 天工软件在正射项目中的应用与常见问题解答
  6. WPF界面设计—撸大师
  7. 专辑:Redis视频教程
  8. 基于Scrapy的IP代理池搭建
  9. 嵌入式linux根文件系统制作--busybox
  10. 李开复针对马加爵事件写给中国学生的一封信
  11. 破开C暗夜的第一道光(2)——高质量代码风格
  12. Bank Robbery LightOJ - 1163
  13. 提升网站访问速度--Yslow优化
  14. 10年,知乎为何依旧“赚钱难”?
  15. 供应商管理软件如何选型 好用的供应商管理软件推荐
  16. Android 热修复方案Tinker(五) SO补丁加载
  17. 关于举办第三届全国Revit开发实战训练课程的通知
  18. 上海市计算机一级考试英语考试,全国计算机一级考试测试题及答案
  19. 这是一个隐藏的(绝世武功)Java 学习路线图,祝你Offer拿到手软
  20. WEB前端网页设计-Bootstrap 网格系统

热门文章

  1. [C++]稀疏矩阵(一维数组描述)
  2. 稀疏矩阵的加法(用十字链表实现A=A+B)
  3. 雅思英语作文计算机和历史,关于computer的雅思写作范文
  4. 怎样缓解灾难性遗忘?持续学习最新综述三篇
  5. 【开源】蓝奏云直链解析
  6. 宽带认证计费系统的认证技术主要有哪些
  7. 想编程,是勤奋自学还是去培训班学习?
  8. 计算机领域中的CAE,CAE
  9. linux使用alias命令重命名命令永久生效
  10. 视频教程-清华-尹成老师-Python爬虫day13-Python