2016-05-15 109 views
1

我有问题要解决,任何建设性的帮助将是好的。球和束的健身功能

无论如何,我必须做出遗传算法来创建神经网络来解决问题的球和束。我想象的唯一的健身功能是设定一些时间(如3到10秒),并测试每个单位的人口,如果它能在板上生存下去(fitness = t/T; t - 它存活的时间,T - 总时间),那需要长期:(。

Simulation look like this

,遗传算法应该产生的权重,训练系数和神经元的数量每个隐藏层。主要是我做过的事情,但剩下的健身是我最大的问题。

感谢您的帮助!

+0

你的目标是什么?控制球到指定的位置?只要将健身表现为离目标的距离即可。你使用什么模拟工具需要这么长时间? – zegkljan

回答

0

我认为你的方式是正确的“设置一些时间和特定如果它能在船上生存下去,那么每个单位都在人口中“。

我做了一个类似于“桥梁建设者遗传算法”的工作,在那种情况下我的健身功能是“搭桥,放一辆车通过它,车的距离和时间就是健身效果”。为了评估这种适应度函数需要很长的时间,所以你可以尝试出头,使其更快:

  • 并行:我想,你的GA支持评估染色体的健身并行,如果它支持你可以把作为尽可能多的球对射模拟在同一时间运行。在桥梁建设者健身功能的情况下,我同时测试了大约100座桥梁。
  • 物理引擎的时间尺度:如果你使用物理引擎来执行你的模拟,可能你可以改变它的时间尺度。尝试将时间刻度更改为0.5或更少。结果可能不像正常时间尺度那么完美,但可以用来创建您的神经网络。

我不知道你用什么语言来构建遗传算法,如果你使用C#,你可以尝试使用GeneticSharp。我用它来创建具有并行适应度函数评估的桥梁生成器遗传算法。