Artificial intelligence 浮点遗传适应度函数

Artificial intelligence 浮点遗传适应度函数,artificial-intelligence,genetic-algorithm,Artificial Intelligence,Genetic Algorithm,我一直在尝试让浮点适应度函数起作用,但生物体离目标序列越近,所需时间就越长 我尝试过几种方法,但在每一种方法中,交叉导致每个生物体的基因序列相同,但适合度仅为50%左右 计算-1.0和1.0之间的浮点序列值的好方法是什么?过早收敛是进化计算的最大问题之一。我不确定你在使用什么样的选择方案,但这可能是你需要关注的地方 如果您没有使用基于锦标赛的选择,第一步就是尝试。一个简单的版本是:对于下一代种群的每个成员,从当前种群中选择X个生物体。只有最健康的人才能继续前进。重复此操作,直到下一个填充已满。如

我一直在尝试让浮点适应度函数起作用,但生物体离目标序列越近,所需时间就越长

我尝试过几种方法,但在每一种方法中,交叉导致每个生物体的基因序列相同,但适合度仅为50%左右


计算-1.0和1.0之间的浮点序列值的好方法是什么?

过早收敛是进化计算的最大问题之一。我不确定你在使用什么样的选择方案,但这可能是你需要关注的地方

如果您没有使用基于锦标赛的选择,第一步就是尝试。一个简单的版本是:对于下一代种群的每个成员,从当前种群中选择X个生物体。只有最健康的人才能继续前进。重复此操作,直到下一个填充已满。如果你使用低X(2是最低的),你有一个弱的选择压力,这样进化需要更长的时间,但你可以保持更多的多样性

选择锦标赛的好处在于,适合度的大小并不重要,只有顺序,当你拥有几乎相等的人口时,这会有所帮助

假设这种第一选择机制不起作用,您需要使用一种积极保持多样性的机制。适应度共享往往是一种有效的选择——单个解决方案的适应度会根据存在的相同(或相似)生物体的数量进行修改。基本上,记下每种类型的解决方案有多少个,邻居有多少个,并使用一个简单的函数来修改基于此的适应度(可能每个相同副本-5%,每个邻居-1%…有很多选择)

还有许多更先进的技术,你可以尝试,但这些应该让你有一个漫长的道路