5

我正在考虑使用神经网络在我正在构建的太空射击游戏中为我的敌人施加力量,我在想;当网络没有一套明确的良好输出时,你如何训练神经网络?如何使用神经网络来解决“软”解决方案?

+0

我恨你拍下来,但有限状态机更容易编程和平衡,处理异常情况_better_和共同解决游戏AI。见http://au.gamespy.com/pc/fear/698080p1.html – 2009-10-25 08:25:08

+0

对不起,我的意思是把你链接到这个页面 - 恐惧人工智能 - 他们是如何做到的(一个伟大的阅读,至少看看想法)http: //web.media.mit.edu/~jorkin/gdc2006_orkin_jeff_fear.pdf – 2009-10-25 08:27:28

+0

我确定我宁愿使用FSM以外的东西。他们可以很容易地胜过足够的时间,然后再玩它真的没什么乐趣。有了一个不断学习的神经网络,它可能会适应敌人的战术。除此之外,如果你仍然认为这是一个糟糕的主意,那么将其视为一个学术问题。 – RCIX 2009-10-25 08:31:22

回答

6

我正在研究神经网络,他们似乎没有明确定义的输入和输出编码,它们根本不会扩展到复杂度(请参阅http://en.wikipedia.org/wiki/VC_dimension)。这就是为什么神经网络研究自20多年前的最初炒作以来应用程度如此之低的原因,而基于语义/状态的人工智能占据了所有人的兴趣,因为它在现实应用程序中取得了成功。

  • 所以,一个很好的起点可能是弄清楚如何用数字表示游戏状态作为神经网络的输入。
  • 接下来的事情是弄清楚什么样的输出会对应于游戏中的动作。
  • 想想神经网络的使用结构。为了从神经网络中获得有趣的复杂行为,网络几乎必须经常发生。你需要一个经常性的网络,因为他们有'记忆',但除此之外,你没有其他的东西可以继续。然而,具有任何复杂结构的经常性网络实际上很难训练。
  • 神经网络已经成功的领域往往是分类(图像,音频,语法等)和有限的统计预测成功(我们期望在这个词后面会出现什么词,明天的股票价格会是什么? )

总之,对于游戏的一小部分而不是核心敌人AI来说,使用神经网络可能更好。

+0

我认为我可以使用基本输入,例如健康,当前速度和球员方向/距离输入,然后有拍摄方向,当前拍摄值和推力矢量或转速加速/减速值。另外,你能提供一个关于“复发”神经网络的更多信息的链接吗?对他们不熟悉。 – RCIX 2009-10-25 09:12:25

+0

经常性网络意味着输出作为输入被反馈回神经元。有许多不同类型的神经网络具有不同的行为。一些简单的有埃尔曼网络http://wiki.tcl.tk/15206 和Hopfield网络 http://en.wikipedia.org/wiki/Hopfield_network 有不可多的一般信息关于他们如何工作,他们”什么对你有好处,所以你最好在大学讲义和谷歌学者的论文中查找。再一次,原因是这项研究大部分都没有离开学术界,因为使用它们来解决实际问题是非常困难的。 – 2009-10-25 09:51:08

2

你可以查看AI Dynamic game difficulty balancing各种AI技术和参考。

(IMO,可以实现敌人的行为,像“包围敌人”,这将是非常酷的,不钻研先进的AI概念)

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

+0

这很有趣。看起来我至少可以设计一款游戏,通过神经网络提供动态的难度,找出玩家何时玩得开心。 – RCIX 2009-10-25 09:15:40

0

您是否认为可以轻松修改FSM以响应刺激?它毕竟只是一张数字表,你可以将它放在内存的某个地方,随时更改数字。我在我的一篇博客中写了一篇关于这方面的文章,很奇怪的是它被一些游戏AI新闻网站收录。然后,谁建立了一个可以击败人类并获得真实消息的女士Pacman AI的家伙,在我的博客上留下了评论,并提供了更多有用信息的链接

这是我的博客帖子,内容是关于某些想法的我的incoherant ramblings关于使用马尔可夫链来不断适应游戏环境,或许将计算机已经了解的有关游戏者对游戏情况的反应的东西进行了叠加和组合。

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/

这些都不是神经网络的方法,但是他们并适应不断学习,也很可能是更适合于游戏比神经网络。

+0

有趣的方法,我会检查出这些链接 – RCIX 2009-10-25 22:56:35

0

我将把你们两个的马修·巴克兰的书。

第二本书进入反向传播ANN,这是大多数人的意思,当他们 谈论NN反正。

这么说,我认为,如果你想创建有意义的游戏AI的第一本书是比较有用的。成功使用FSM有一个不错的,有趣的部分(是的,使用FSM很容易让你自己动手)。