我一直在研究遗传算法。我的目标是实现简单的模拟,其中玩家(不受外部人类玩家控制)避开障碍并向奖励前进。
据我所知,遗传算法属于进化算法,这对于这种情况非常有用,因为我不必提供训练数据。它将自学习。
这些介绍我一直在阅读关于编码为二进制字符串的人口(我认为),我不知道生成新一代的人口和精炼人群与这个问题领域有什么关系。
有人可以解释一下
答案 0 :(得分:4)
简单地说,您将使用遗传算法生成确定AI行为的规则。具体如何编码和解释这些规则取决于您想要实现的目标。
也许您希望遗传算法为神经网络的连接生成权重,而神经网络又可以处理玩家的行为。在这种情况下,您将权重编码为二进制字符串。
另一个例子是将二进制字符串解释为decision tree
如果您的代表编码,您的遗传算法将生成具有不同基因或二进制字符串的个体。然后,这些人将根据其执行情况分配适合度值,并且希望随着时间的推移,GA将找到一个好的AI(根据您的健身功能和表示)。
编辑:假设你有三个连接的网络,你选择用四位编码每个权重。那么你的二进制字符串可以用最简单的编码来连接这3个权重。
答案 1 :(得分:0)
查看Dan Ashlock的Tartarus论文。