首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >遗传算法Enemy/僵尸AI

遗传算法Enemy/僵尸AI
EN

Stack Overflow用户
提问于 2017-04-13 02:43:48
回答 2查看 414关注 0票数 0

我真的不能说为什么,但有一次YouTube向我推荐了一段关于遗传Alogirthm的视频,好吧,它真的让我灵光一闪,有人让一个正在学习的AI单独玩谷歌chrome没有互联网跳跃和奔跑游戏。好吧,因为我在为“我的世界”编写插件,我有了一个想法,用一个自学AI (遗传算法)来制作一个基于PvE的游戏模式,但现在我不知道从哪里开始,我可以让健身依赖于僵尸的杀死,或者受到的伤害,但我不知道我如何才能再次重现这个,不知何故我必须用AI控制移动,射击等等,我不知道如何做到这一点,我希望有人能帮助我,你理解我的问题。

EN

回答 2

Stack Overflow用户

发布于 2017-04-13 15:31:05

我认为你要做的事情比你想象的要复杂得多。

如果你真的想为僵尸训练自主AI,你将需要神经网络。但我认为这对于PvE游戏来说太复杂了。

如果你不想使用神经网络,你必须设置一些参数来定义僵尸的行为,比如:

  • Damage
  • Speed
  • Health

但使用遗传算法来解决这个问题是不合逻辑的--你已经知道,将这些值最大化会返回最好的僵尸,所以你可能需要创建更多不同的参数,比如:

命中player

  • Potion效果后的
  • 速度击中玩家

如果你想停留在上面提到的3个点上,那么你应该创建一个最大值-并使遗传算法找到该值的最佳分布。

这就是主要的排序部分,然后你想开始研究遗传算法

随机僵尸生成,使用随机properties

  • Evaluation,生成僵尸让僵尸玩游戏,确定它们的适合度:造成的伤害,造成的死亡,距离travelled

机会的值

我对你的项目很感兴趣。我建议你开始在本地服务器上训练一些僵尸,然后使用这些经过训练的僵尸作为在线版本的基础-所以第一波僵尸并不太容易:)

关于你的评论:

实际上我想提高在僵尸上的移动和战斗技能,当他们攻击的时候他们回去的meqan延迟是冷的时候敌人是真正的防御等等,僵尸试图抓住一些单一的球员当他们发挥攻击性等,但不确定如何做这样的事情,我不知道如何控制移动与AI,以及何时攻击等,我知道这有很多要做的,但我真的对此很感兴趣。

这绝对需要一个神经网络。神经网络可以有x个输入,这些必须都是环境变量,例如:

最近的玩家距离最近的玩家速度最近的player

  • health最近的玩家

  • 等最近的玩家

  • 自己的健康代码<

>F245

并将计算输出,可能是:

  • speed (true/false)

hit

  • speed
  • hit (true/false)

你必须通过神经进化来进化神经网络。你绝对可以做到这一点,但是要注意,这很难。尤其是有很多环境变量的情况下。

但是阅读一些关于神经网络的文章,然后阅读一些关于遗传算法的文章。然后实施神经进化,例如通过NeuroEvolution of Augmenting Topologies

票数 1
EN

Stack Overflow用户

发布于 2017-04-13 03:10:46

我建议你做一些遗传算法的研究,看起来你还没学会走路就开始跑步了。

理想情况下,如果您希望AI学习如何移动、射击和其他活动,您需要创建一个可以基于所有这些内容进行评分的适应度函数。然后你需要计算出你将在什么时候进化/变异/交配你的AI/s,这个乘积应该从0的初始分数开始,因为你将需要对AI进行重新评分,因为它可能已经后退了一步,而不是前进了一步。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43377311

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档