我正在尝试建立一个由神经网络控制的代理的简单进化模拟。在当前版本中,每个代理都有一个带有一个隐藏层的前馈神经网络。环境包含固定数量的食物,用红点表示。当智能体移动时,他会失去能量,当他靠近食物时,他会获得能量。能量为 0 的特工死亡。神经网络的输入是智能体的当前角度和到最近食物的向量。每个时间步长,每个智能体的运动角度都会根据其神经网络的输出而改变。目的当然是观察一段时间后觅食行为的演变。然而,什么也没有发生。
不知道问题是神经网络的结构(太简单了?)还是繁殖机制:为了防止种群爆炸,初始种群大约是 20 个智能体,随着种群接近 50,繁殖机会接近零。当复制确实发生时,通过从头到尾遍历代理列表来选择父节点,并检查每个代理的 0 到 1 之间的随机数是否小于该代理的能量与总和之间的比率。所有代理的能量。如果是这样,则搜索结束并且该代理成为父代理,因为我们向环境中添加该代理的副本,该代理在其神经网络中的一个或多个权重中具有一定的突变概率。
提前致谢!