【问题标题】:How to use neural networks to solve "soft" solutions?如何使用神经网络解决“软”解决方案?
【发布时间】:2010-12-09 20:55:16
【问题描述】:

我正在考虑在我正在构建的太空射击游戏中使用神经网络来为我的敌人提供动力,我想知道;当网络没有一组确定的好的输出时,你如何训练神经网络?

【问题讨论】:

  • 我不想让你失望,但有限状态机更容易编程和平衡,处理异常情况更好和游戏 AI 的常见解决方案。见au.gamespy.com/pc/fear/698080p1.html
  • 对不起,我的意思是把你链接到这个页面 - FEAR AI - 他们是如何做到的(很好的阅读,至少寻找想法)web.media.mit.edu/~jorkin/gdc2006_orkin_jeff_fear.pdf
  • 我确定我宁愿使用 FSM 以外的东西。只要有足够的时间,他们很容易被智取,然后玩起来真的没有乐趣了。通过不断学习的神经网络,它可能会适应敌人的战术。除此之外,如果您仍然认为将其视为学术问题是个坏主意。
  • 我的意思是,忽略关于“为 AI 提供动力”的部分......

标签: neural-network artificial-intelligence reinforcement-learning


【解决方案1】:

您可以查看AI Dynamic game difficulty balancing 了解各种 AI 技术和参考资料。

(IMO,您可以实现敌人行为,例如“包围敌人”,这将非常酷,无需深入研究高级 AI 概念)

编辑:既然你正在制作一款太空射击游戏,并且你想要为你的敌人提供某种人工智能,我相信你会发现这个链接很有趣:Steering Behaviors For Autonomous Characters

【讨论】:

  • 这很有趣。看起来我至少可以设计一款游戏,通过神经网络判断玩家何时玩得开心,从而提供动态难度。
【解决方案2】:

我目前正在研究神经网络,如果没有明确定义的输入和输出编码,它们似乎毫无用处,而且它们根本无法扩展到复杂性(请参阅http://en.wikipedia.org/wiki/VC_dimension)。这就是为什么神经网络研究自 20 到 30 多年前最初炒作以来应用如此之少,而基于语义/状态的 AI 因为它在现实世界应用中的成功而接管了每个人的兴趣。

  • 一个很好的起点可能是弄清楚如何以数字方式将游戏状态表示为神经网络的输入。
  • 接下来的事情是找出与游戏中的动作相对应的输出类型。
  • 考虑一下要使用的神经网络结构。为了从神经网络中获得有趣的复杂行为,网络几乎必须是循环的。您将需要一个循环网络,因为它们具有“记忆”,但除此之外您没有太多其他事情可做。但是,具有任何复杂结构的循环网络都很难训练以表现行为。
  • 神经网络成功的领域往往是分类(图像、音频、语法等)和在统计预测方面的有限成功(我们预计这个词之后会出现什么词,明天的股价会是多少? )

简而言之,您最好在游戏的一小部分中使用神经网络,而不是作为核心敌人 AI。

【讨论】:

  • 我认为我可以使用基本输入,例如生命值、当前速度和玩家方向/距离作为输入,然后有一个射击方向、当前射击值和推力矢量或转动速度加速/减速价值。另外,您能否提供有关“循环”神经网络的更多信息的链接?我不熟悉他们。
  • 循环网络只是意味着输出作为输入反馈给神经元。有许多不同类型的具有不同行为的神经网络。一些简单的是 elman 网络 wiki.tcl.tk/15206 和 hopfield 网络 en.wikipedia.org/wiki/Hopfield_network 没有太多关于它们如何工作以及它们的优点的一般信息,所以你最好在大学讲义和谷歌学者中搜索论文。同样,原因是大部分研究都没有离开学术界,因为很难用它们来解决实际问题。
【解决方案3】:

您是否认为可以轻松修改 FSM 以响应刺激?毕竟它只是一个数字表,你可以将它保存在内存中的某个地方,并随时更改数字。我在我的一篇博客中写了一些关于它的文章,引发了狂热,但奇怪的是,它被一些 Game AI 新闻网站报道了。然后,那个构建了可以击败人类并获得真实新闻的 Pacman 女士 AI 的人在我的博客上发表了评论,并附有指向更多有用信息的链接

这是我的博客文章,其中包含我关于使用马尔可夫链不断适应游戏环境的一些想法的不连贯的漫谈,并可能叠加和组合计算机已经了解的关于玩家如何对游戏情况作出反应的东西。

http://bustingseams.blogspot.com/2008/03/funny-obsessive-ideas.html

这里是关于强化学习的精彩资源的链接。 smarty mcpacman 为我发帖。

http://www.cs.ualberta.ca/%7Esutton/book/ebook/the-book.html

这是另一个很酷的链接

http://aigamedev.com/open/architecture/online-adaptation-game-opponent/

这些不是神经网络方法,但它们确实会适应并不断学习,并且可能比神经网络更适合游戏。

【讨论】:

  • 有趣的方法,我会检查这些链接
【解决方案4】:

我会向您推荐 Matthew Buckland 的两本书。

第二本书讲的是反向传播 ANN,这是大多数人在阅读时的意思 还是谈谈NN吧。

也就是说,如果您想创建有意义的游戏 AI,我认为第一本书更有用。有一个关于成功使用 FSM 的精彩而丰富的部分(是的,很容易被 FSM 绊倒)。

【讨论】:

    猜你喜欢
    • 2015-04-24
    • 1970-01-01
    • 2023-03-10
    • 2012-06-03
    • 1970-01-01
    • 2017-12-20
    • 2020-10-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多