导读:今天首席CTO笔记来给各位分享关于游戏如何开发人工智能的相关内容,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
游戏编程中的人工智能技术的简介
计算机视觉
计算机视觉是指计算机从图像中识别出物体、场景和活动的能力。计算机视觉技术运用由图像处理操作及其他技术所组成的序列,来将图像分析任务分解为便于管理的小块任务。比如,一些技术能够从图像中检测到物体的边缘及纹理,分类技术可被用作确定识别到的特征是否能够代表系统已知的一类物体。
机器学习
机器学习指的是计算机系统无须遵照显式的程序指令,而只依靠数据来提升自身性能的能力。其核心在于,机器学习是从数据中自动发现模式,模式一旦被发现便可用于预测。比如,给予机器学习系统一个关于交易时间、商家、地点、价格及交易是否正当等信用卡交易信息的数据库,系统就会学习到可用来预测信用卡欺诈的模式。处理的交易数据越多,预测就会越准确。
机器人
将机器视觉、自动规划等认知技术整合至极小却高性能的传感器、制动器以及设计巧妙的硬件中,这就催生了新一代的 机器人,它有能力与人类一起工作,能在各种未知环境中灵活处理不同的任务。例如,无人机、可以在车间为人类分担工作的“cobots”等。
语音识别
语音识别主要是关注自动且准确地转录人类的语音技术。该技术必须面对一些与自然语言处理类似的问题,在不同口音的处理、背景噪声、区分同音异形/异义词(“buy”和“by”听起来是一样的)方面存在一些困难,同时还需要具有跟上正常语速的工作速度。
目前基本的游戏人工智能技术有
计算机游戏(ComputerGame)始于1958年的游戏“两人网球”。
人工智能游戏。计算机游戏(ComputerGame)始于1958年的游戏“两人网球”。
人工智能游戏(AIGame)为计算机游戏业提供了新机遇,目前已经形成了数十亿美圆的产业。人工智能技术已经是优秀电脑游戏开发中不可缺少的部分,是游戏产品畅销与否的一个决定性因素。应用人工智能技术设计的游戏称为人工智能游戏(AIGame),或简称为智能游戏。
几种游戏的智能性的观点:正如经典游戏“小精灵”里的魔鬼、“Unreal”第一人称射击游戏(FPS)里的虚拟战友,以及其他游戏角色,看起来都是具有智慧的生命,这种游戏可以认为是有智能的。
有人将游戏中的路径搜索、碰撞检测等,也列入游戏智能的范畴。在游戏中包括角色从简单的追逐、闪躲、移动到复杂的神经网络和遗传算法应用等,体现角色行动的“自主性”,则说明游戏具有智能性。游戏中的活动对象分两类:一类是在背景中,如云、鸟等。
这类对象的行为在游戏中无须人工干预,变化也不多,控制的逻辑不复杂。另一类是各种角色,如虚拟的人、兽、怪物、机器人等。这些对象的活动方式必须变化多端才行,否则游戏就不好玩,所以控制逻辑就比较复杂。
不是所有的游戏都需要人工智能。接龙和挖地雷等游戏就不需要人工智能。网上提供的两人对弈的象棋、围棋、军棋类游戏也不需要人工智能。但一旦要求机器与人对弈,那就需要很高的智能了。
人工智能在游戏中的应用有什么?
1. 现代电脑游戏简介
电子游戏从1971年诞生以来,越来越受到人们的喜爱。随着现代计算机、网络、虚拟现实、人工智能等技术的发展,游戏的拟人化越来越逼真。高度的拟人化使得现代电脑游戏能够模仿人类社会中的各种情形,并把这些情形通过视觉、听觉、甚至触觉等多种感官反映到人的大脑,从而对人们的现实生活产生巨大冲击。基于游戏中的这些反映人类社会的情形不同和游戏表示的方式不同,可以把电子游戏分为几大类别:纵向卷轴和横向卷轴类、棋牌逻辑类、文字冒险类、图形冒险类、模拟类、战略类、第一或第三人称射击类和角色扮演类。
无论游戏属于何种类别,游戏玩家都希望在游戏中能够体验到现实中无法体验到的刺激,得到现实中无法得到的满足。这些刺激和满足主要表现在特定的挑战、社会化、吹嘘与幻想、情感等方面。实际上,大部分的玩家并不能预先知道他们想要什么样的游戏,但是他们往往在看到了一个精美的游戏后说,“嗯,我要的就是这个!”
要使得玩家喜欢游戏,游戏的开发过程必须得到重视。一般来说,游戏的开发过程主要分为四个阶段:构想阶段、总体设计阶段、细节设计阶段和建设阶段。[1]
万事开头难,构想阶段是游戏开发中最为重要的阶段。一个好的游戏背景故事是整个游戏成功的一半。在准备好游戏故事之后,就需要考虑游戏采用何种游戏类型,并把游戏故事分割成幕(Act),改编为游戏剧本(Gameplay)。
在总体设计阶段,要考虑每个幕中的角色和规则,同时也要考虑相关的技术问题。比如,游戏将采用何种技术、准备运行在什么平台上等。
在细节设计阶段,要对每一幕中的焦点(Focus)进行设计,对每一幕的效果产生效果图,选择合适的音乐匹配到各个场景,设计各个角色和场景的细节。
最后是建设阶段。开发者要采用选定的技术对游戏进行开发。游戏制作包括编程和触发器的制作。最后要进行游戏测试。2. 基于电脑游戏的图灵实验
人们在娱乐电脑游戏的时候,往往希望游戏中的其他角色能够拥有某些程度上的智能。这些智能可以使得人们能够在游戏的同时得到满足。然而,这种智能必须得到控制。如果游戏中的机器角色的智能明显高于玩家的能力,使得玩家对胜利丧失信心,那么玩家会放弃这样的游戏。所以,人工愚蠢(Artificial Stupidity)技术也是必不可少的。在游戏中,太强或太弱的人工智能都是不合适的。
那何种程度的人工智能才是合适的呢?回答这个问题首先要考虑怎样的机器可以算作智能机器。图灵曾经提出了“图灵实验”的概念。他认为能够通过图灵实验的机器是具有智能的。其实,在游戏中也是一样的。“图灵实验”在游戏中可以这样描述:当玩家和其他玩家同诸多机器在同时游戏时,如果这个玩家通过游戏规则中的任何方式都无法分辨游戏中的其他角色哪个是其他玩家,哪个是机器的线程,那么我们可以说这个游戏通过了“游戏中的图灵测试”。[2]一般来说,通过了“游戏中的图灵测试”的游戏是最适合玩家娱乐的。3. 游戏中的人工智能技术
人工智能在游戏中的目标主要有五个:一是为玩家提供适合的挑战;二是使玩家处于亢奋状态;三是提供不可预知性结果;四是帮助完成游戏的故事情节;五是创造一个生动的世界。这个生动的世界可以是类似现实生活中的世界,也可以是与现实世界完全不同的世界。但不管何种世界都要求有一整套能够自圆其说的游戏规则。
在游戏制作过程中,实现人工智能的关键主要有:虚拟现实与拟人化、动画效果与机器角色场景感知[3]、机器角色的机器学习和进化、玩家与机器角色之间的平衡性、人工愚蠢技术、确定性人工智能技术与非确定性人工智能技术的互补。
游戏中的人工智能的主要技术主要有:有限状态自动机(Finite State Machines)、模糊逻辑(Fuzzy Logic)、A*算法与有效寻径(A* Algorithm for Efficient Pathfinding)、脚本设计(Scripting)、基于规则的人工智能和系统(Rules-based AI and Systems)、人工生命(Artificial life)、贝叶斯推论(Bayesian Inference)和非确定性贝叶斯网络(Bayesian Networks for Uncertainty Decisions)、神经网络(Neural Networks)和遗传算法(Genetic Algorithms)等。4. 目前的局限与前景展望
就目前来说,技术上的困难主要来源于两个方面:一是游戏中的非确定状态实在太多;二是现有的硬件和计算机网络对于高级人工智能还说,速度还达不到要求。[4]
目前要解决这些困难,在技术上来说还是不成熟的。对于数量极多的非确定状态来说,尽可能地提高硬件和计算机网络的速度,可能是一个解决方法。但是要提高硬件和计算机网络的速度也并非易事。这可能要等到全息光学计算机和光互联网诞生之后才能彻底解决。但目前有效的办法是提高软件的执行速度。比如使用更有效的算法或神经网络等新技术。
结语:以上就是首席CTO笔记为大家整理的关于游戏如何开发人工智能的全部内容了,感谢您花时间阅读本站内容,希望对您有所帮助,更多关于游戏如何开发人工智能的相关内容别忘了在本站进行查找喔。