从到机器学习——足球AI概况
作者: alexjc
译者: 赖勇浩(恋花蝶)
原文地址:http://aigamedev.com/questions/football-ai-cheating-machine-learning
本文发表于恋花蝶的博客(http://blog.csdn.net/lanphaday),如蒙转载,敬请保留全文完整,包括保留本声明。
<shapetype id="_x0000_t75" stroked="f" filled="f" path="m@4@5l@4@11@9@11@9@5xe" o:preferrelative="t" o:spt="75" coordsize="21600,21600"><stroke joinstyle="miter"></stroke><formulas><f eqn="if lineDrawn pixelLineWidth 0"></f><f eqn="sum @0 1 0"></f><f eqn="sum 0 0 @1"></f><f eqn="prod @2 1 2"></f><f eqn="prod @3 21600 pixelWidth"></f><f eqn="prod @3 21600 pixelHeight"></f><f eqn="sum @0 0 1"></f><f eqn="prod @6 1 2"></f><f eqn="prod @7 21600 pixelWidth"></f><f eqn="sum @8 21600 0"></f><f eqn="prod @7 21600 pixelHeight"></f><f eqn="sum @10 21600 0"></f></formulas><path o:connecttype="rect" gradientshapeok="t" o:extrusionok="f"></path><lock aspectratio="t" v:ext="edit"></lock></shapetype><shape id="_x0000_i1025" style="WIDTH: 96pt; HEIGHT: 96pt" alt="" type="#_x0000_t75"><imagedata o:href="http://files.aigamedev.com/football.jpg" src="file:///C:%5CDOCUME~1%5CADMINI~1%5CLOCALS~1%5CTemp%5Cmsohtml1%5C01%5Cclip_image001.jpg"></imagedata></shape>

当谈起游戏人工智能的时候,大家通常都会比较多地关注FPS或者实时策略游戏,其实体育类游戏的挑战和解决方案同样值得关注。尽管在学术研究和游戏业界都没有多少公开的可供学习的成果,但我们仍然可以根据 EA 和 Take2 每年发布的产品来谈谈这个领域研究进展。
本周的题目来自 Anthony,他正在做一个与足球游戏相关的研究生课题:
“大家怎么看体育游戏的 AI ?我认为体育 AI 是比较困难的,因为没有像开发一个幻想风格游戏那样的自由度(因为玩家永远不会有真实体验那种场景的机会)。[译者注:这一段有点画鬼画神最易,画狗画猫最难的意思。]
每个人都参与过体育活动,他们对游戏有明确的期望。有人知道哪里有相关的学术资源可以让我深入学习一下么?”
通常而言,体育游戏的 AI 在结构上类似于 FPS 或 RTS 游戏:底层是控制和动画,中间层是个体的决策,上层是战术。但从每一层来看,它又与其它游戏大有不同。
<shape id="_x0000_i1026" style="WIDTH: 351pt; HEIGHT: 197.25pt" alt="" type="#_x0000_t75" o:button="t"><imagedata o:href="http://files.aigamedev.com/reviews/Madden2008a.jpg" src="file:///C:%5CDOCUME~1%5CADMINI~1%5CLOCALS~1%5CTemp%5Cmsohtml1%5C01%5Cclip_image002.jpg"></imagedata></shape>

截图1:Madden NFL 2008 拥有迄今为止最强的足球 AI
角色动画
玩家对体育模拟游戏期望越高,球员的运动就显得越为重要。游戏中角色移动、抱球、与其它角色的交互,应当极具真实感。这些都是建立在角色动画之上的。
看看到目前为止这一领域所做的研究工作,就可以肯定游戏中动画的重要性。许多动画项目都是由EA 或其它开发商出资或者资助的。如果你阅读一下 SIG 图形学会议的论文,会发现许多都使用了 AI 相关的技术:
在这一领域仍然有许多改进余地,但运动合成需要有非常多的工作要做。NaturalMotion是一个动画中间件,它致力于足球模拟(称为Backbreaker),遗憾的是它远不够成熟。
真实感动画在现在和可以预见的未来都只能使用动作捕捉。开发人员必定会抛弃利用一小段时间片进行物理反应模拟的方案,而是改用动作捕捉来尽可能快地提供有针对性的行为。
<shape id="_x0000_i1029" style="WIDTH: 351pt; HEIGHT: 197.25pt" alt="" type="#_x0000_t75" o:button="t"><imagedata o:href="http://files.aigamedev.com/reviews/Madden2008b.jpg" src="file:///C:%5CDOCUME~1%5CADMINI~1%5CLOCALS~1%5CTemp%5Cmsohtml1%5C01%5Cclip_image003.jpg"></imagedata></shape>

截图2:完美的截球动画在技术上极具难度
个体行为
在体育游戏架构的中间层,个体的AI 比起动画层就简单得多。它通常使用多个操控行为的组合来控制角色,如:远离对手、向目标前进和寻找开阔空间等。
这种个体的 AI 与传统的第一人称或第三人称射击游戏游戏的角色 AI 极其相似。它经常使用简单的决策生成技术,如有限状态机,来执行上层 AI 下达的战术。这个领域没有太多可供研究的东西,因为它易于理解。
参考阅读:
<shape id="_x0000_i1027" style="WIDTH: 351pt; HEIGHT: 309.75pt" alt="" type="#_x0000_t75" o:button="t"><imagedata o:href="http://files.aigamedev.com/reviews/Madden2008c.jpg" src="file:///C:%5CDOCUME~1%5CADMINI~1%5CLOCALS~1%5CTemp%5Cmsohtml1%5C01%5Cclip_image004.jpg"></imagedata></shape>

截图3:球员基本行为由有限状态机实现
战术 AI
从战术角度来看,体育游戏比起射击类游戏要简单得多:只有一个球场而非多个关卡,也用不到复杂的几何学。你唯一需要考虑的是团队的不同成员间的协作。尽管,这并不是小问题,但从许多游戏中可以知道 AI 开发人员只需要做好最重要的事:让球员在进攻和防守两方面都有不错的表现。
现在看来,在体育游戏中的可配接 AI 上的研究已经不少,尤其是《 Madden NFL 》游戏。多年来,开发者曾经简单地利用玩家的选择来,现在则使用机器学习算法来完成这一课题。
- 这个PDF文档描述了 Madden 游戏从上世纪90年代中期到 2004 年的AI 历史。
- 大家也可以利用Alberta大学的研究项目来使用统计学习。
<shape id="_x0000_i1028" style="WIDTH: 351pt; HEIGHT: 197.25pt" alt="" type="#_x0000_t75" o:button="t"><imagedata o:href="http://files.aigamedev.com/reviews/Madden2008d.jpg" src="file:///C:%5CDOCUME~1%5CADMINI~1%5CLOCALS~1%5CTemp%5Cmsohtml1%5C01%5Cclip_image005.jpg"></imagedata></shape>

截图4:初始位置和每个球员的目标是战术的要素
你也深入观察过体育游戏的 AI 吗?你认为那些游戏的 AI 行为怎么样?
分享到:
相关推荐
从信用卡欺诈检测的数据挖掘程序到个性化推荐系统,再到自动驾驶汽车,机器学习的应用范围广泛,其理论和实践都得到了深度的发展和广泛的关注。 在机器学习的学习过程中,其核心算法和理论是学习的重点。这些算法和...
人工智能——机器学习概述AI人工智能+区块链+物联网人工智能——机器学习概述AI人工智能+区块链+物联网人工智能——机器学习概述AI人工智能+区块链+物联网人工智能——机器学习概述AI人工智能+区块链+物联网人工智能...
包含:Python 基础教程、10个编程技巧、Python高级编程、优化算法、实例学习Numpy与Matplotlib、实例学习pandas、机器学习、深度学习、梯度下降、实验等等等等人工智能实战——从Python入门到机器学习资料大全。...
机器学习是人工智能领域的重要分支,它通过训练计算机系统从数据中学习并做出预测或者决策。Python作为一种广泛使用的高级编程语言,因其简洁易读的语法和强大的社区支持,成为实现机器学习算法的首选语言之一。本...
《机器学习——人工智能革命的助推剂》 机器学习,作为人工智能的重要分支,近年来在科研领域发展迅速,极大地推动了人工智能的进步。本文旨在探讨机器学习的发展历程及其在人工智能革命中的作用,同时也验证了机器...
机器学习的历史可以追溯到20世纪50年代, 当时的人工智能研究者开始探索如何使计算机具备学习能力。然而,早期的机器学习研究受限于技术和理论的局限性,直到20世纪80年代,机器学习研究才开始飞速发展。 机器学习...
人工智能实战,从 Python 入门到机器学习 人工智能实战,从 Python 入门到机器学习 人工智能实战,从 Python 入门到机器学习 人工智能实战,从 Python 入门到机器学习 人工智能实战,从 Python 入门到机器...
机器学习——决策树数据1
《人工智能实践教程——从Python入门到机器学习》是一门针对通信工程、计算机、大数据、人工智能相关专业设计的专业基础课程,旨在让学生掌握Python编程基础知识,并具备独立开发Python简单项目的能力。课程涵盖...
【人工智能技术讲解概率机器学习——深度学习革命之后AI道路】 概率机器学习是人工智能领域的一个重要分支,它利用概率论的理论框架来理解和构建智能系统。Uber首席科学家Zoubin Ghahramani教授在这个主题中强调,...
本资源适用于多元线性回归的Python代码实现,是小编的机器学习——线性回归介绍及案例实战的数据集
机器学习——神经网络(neural networks)机器学习——神经网络(neural networks)机器学习——神经网络(neural networks)机器学习——神经网络(neural networks)机器学习——神经网络(neural networks)机器...
机器学习——算法基础中完整代码
《机器学习入门——MATLAB实战与应用》一书中的实例程序。涉及监督学习,非监督学习和强化学习。(code for book "Machine Learning Introduction & Action in MATLAB")
机器学习——算法基础2 完整代码
基于人工智能系统机器学习的算法和理论——从阿尔法狗看机器学习 机器学习是人工智能系统中的一个核心组件,阿尔法狗的出现更是证明了机器学习的强大能力。本文将从阿尔法狗的角度出发,对机器学习的算法和理论进行...
随着机器学习和人工智能的兴起,ClickHouse也开始应用于机器学习领域。下面是使用ClickHouse进行机器学习的一些知识点: 1. 数据加载:ClickHouse提供了多种方式来加载数据,例如从文件、网络请求、数据库等。对于...
机器学习是人工智能领域的一个核心分支,它专注于设计和研究能够从数据中自动学习规律的算法。机器学习的主要目标是让计算机系统通过经验学习和改进,而无需显式编程。这一科学学科结合了统计学、概率论、计算理论等...
机器学习——交叉熵python实现,基于TensorFlow,一般在机器学习做loss评估。