【问题标题】:Advice with Genetic Algorithm learning to walk game遗传算法学习走路游戏的建议
【发布时间】:2017-10-16 04:25:08
【问题描述】:

我有一个人工智能项目即将推出,我们可以制作任何我们想要的东西。我有这个想法,你画一个怪物。线条是它的骨骼和肌肉,点是它的关节,你决定这些关节如何弯曲等等。然后你制作一个神经网络/遗传算法,它学会走路和避开障碍物。

我的教授说我的想法很好并批准了。唯一的问题是,我不知道如何开始以及使用什么工具。我在考虑 Unity 或 Unreal Engine,但我不知道这是否是个好主意。

您对我应该使用哪种编程语言或游戏引擎有什么建议吗?我不想在太长时间不以 AI 为导向的事情上搞砸了。

【问题讨论】:

  • “绘画怪物”正如你所说的那样,可能需要几年时间。最好从给定的怪物开始,教它学会走路。引擎无关紧要,但 Unity 相对而言拥有更大的社区,因此它可以派上用场。
  • 除非你有特定的理由去 3D,否则我会忘记游戏引擎并从 2D 开始,用一些“更简单”的东西,例如放弃重力/平衡,专注于几何形状。您可能想要定义 3 类运动,即向前移动、向前爬行和向前跳跃,并首先在基因上进化它们,然后在基因上进化正确的运动序列以从左到右到达地图的最远点。神经网络似乎不是必需的,尽管人们可能会发现它们的用途。
  • 这对我来说完全是闪回!我在 1996 年为我的论文项目做了一些非常相似的事情。我建议你从一个 2D 料斗(1 英尺、2 个主体件、2 个关节)作为形状开始非常简单。对于运动,从 wind-up-toy 类事物的概念开始,您只是在进化一个 gait。我发现 2 个关节图形至少需要 3 个步骤。这是一个目标 2 个关节位置 x 3 个时间段 = 6 个参数的矩阵。这意味着在时间段 1 中,两个关节被激活以达到它们的目标角度,在时间段 2 中达到它们的目标角度,依此类推。

标签: neural-network artificial-intelligence genetic-algorithm


【解决方案1】:

您必须自己编写所有代码吗? This 库在 Javascript 中提供神经进化(神经网络上的遗传算法)。您可以将其与 P5.js 之类的绘图库结合使用

使用Neataptic查看一些神经进化示例:

【讨论】:

  • 如果你要使用 javascript,这里是我的遗传算法 javascript npm 包 - npmjs.com/package/geneticalgorithm - 它有几个示例(如旅行推销员)、文档和测试案例。
猜你喜欢
  • 2011-04-23
  • 2011-08-03
  • 2015-03-17
  • 2012-06-07
  • 2011-06-19
  • 2015-10-06
  • 1970-01-01
  • 2011-07-06
  • 1970-01-01
相关资源
最近更新 更多