如果环境足够温和(例如,很容易找到食物),那么随机移动可能是一个完全可行的策略,并且繁殖成功可能比其他任何因素都更受运气的影响。还要考虑意想不到的后果:例如,如果后代与其父代同居,那么两者都会立即在当地相互竞争,从长远来看,这可能是不利的,足以导致两者的死亡。
要测试您的系统,请引入一个具有“预制”神经网络的个体,该神经网络设置为将个体直接引导至最近的食物(您的模型使得这样的东西存在并且很容易写下来,对吧?如果没有,那就是期望它发展是不合理的!)。将那个人引入你在愚蠢的群众中的模拟。如果个人没有迅速占据主导地位,则表明您的模拟没有设置为强化这种行为。但是,如果个体享有繁殖成功并且它和它的后代接管了,那么你的模拟正在做一些正确的事情,你需要寻找其他地方,因为这种行为没有进化。
更新以回应评论:
在我看来,这种角度和向量的混合是可疑的。个人是否可以进化为“直接向最近的食物移动”行为必须取决于您的网络可以如何近似 atan 函数(我持怀疑态度)。同样,这表明需要进行更多测试:
- 抛开所有的生态模拟,只测试扰动你的随机网络风格的人群,看看它们是否可以朝着预期的功能发展。
- (更简单,更好)让网络输出一个向量(而不是一个角度):个人应该移动的方向(当然这意味着有 2 个输出节点而不是一个)。显然,“直接向食物移动”策略只是“向食物方向”向量分量的直接传递,然后有趣的是看看你的随机网络是否朝着这个简单的“恒等函数”进化(也应该允许引入如上所述的现成优化个体)。
我也怀疑“固定数量的食物”。(我假设您的意思是一旦消耗了一个红点,就会引入另一个红点)。一个更“现实”的模型可能是以恒定的速度引入食物,而不是强加任何人为的人口限制:人口限制是由食物供应的限制决定的。例如,如果您每分钟引入 100 个单位的食物,而个人每分钟需要 1 个单位的食物才能生存,那么您的模拟应该会发现它趋向于 100 个人的长期平均人口,而无需任何钳位来避免“人口爆炸” ”(尽管繁荣与萧条,盛宴或饥荒的动态实际上可能会根据细节出现)。