【问题标题】:How to implement a neural network in space Invaders?如何在 Space Invaders 中实现神经网络?
【发布时间】:2015-08-28 15:15:49
【问题描述】:

我正在开发统一游戏引擎中的太空入侵者克隆。我想让敌人变得聪明。 我尝试的一种方法是使用最小最大算法。我获取了玩家的 x 坐标,并从中制作了最小最大树,并用它使敌人在特定时间间隔后从该位置转开。然而,这并没有很好地工作。 现在我想让敌人学习和进化以避免玩家使用神经网络。我如何在太空入侵者中实现这一点? 还有其他算法比神经网络更好用于太空入侵者吗?

【问题讨论】:

    标签: unity3d artificial-intelligence neural-network


    【解决方案1】:

    几乎任何学习算法都会比神经网络更好。然而,这是一个非常深奥的话题——你需要的是一本书和几个月,而不是关于 SO 的快速答案。

    所以我会推荐几个:

    我不建议为此使用神经网络,因为它们需要很长时间才能学习,即使使用最现代的学习优化技术(我认为你无论如何都不会在任何书中找到) .您希望这些入侵者在飞行中学习,因此您需要响应速度更快的东西。

    我可能会使用决策树,并保留一个长度有限的记忆向量,以便小动物可以快速适应玩家策略的变化。

    【讨论】:

      【解决方案2】:

      神经网络是游戏 AI 中的复杂机制。但游戏 AI 的主要功能是模拟人类行为的最常见特征,例如游戏中的图灵测试。 或许,使用 GOAP 和 FSM 技术更快地开发逻辑会更好,但要求几乎相同。

      【讨论】:

        【解决方案3】:

        你说过,你想让敌人“进化”。是的,我认为神经网络是解决这类问题的方法。更准确地说,进化发展的神经网络。但是你需要一种方法来训练他们......快速。这就是我要做的:首先构建一个用于射击敌人的 AI ......这很简单。然后运行进化算法来开发和训练最好的敌人 AI 神经网络,而您手动开发的玩家 AI 试图杀死它们。更进一步:为你的玩家 AI 赋予一个 evo 神经网络,让它学会尽可能高效地杀死敌人。然后,让它们一起进化。您将获得一些有史以来最聪明的敌人(以及一个非常优秀的玩家 AI——如果您需要的话)。然后,您可以选择来自不同世代的不同个体来代表游戏中的不同难度级别。

        【讨论】:

          猜你喜欢
          • 2018-12-02
          • 2012-04-23
          • 2018-10-28
          • 2015-04-14
          • 1970-01-01
          • 2016-12-23
          • 2019-10-11
          • 2016-05-07
          • 2016-08-31
          相关资源
          最近更新 更多