2016-03-09 106 views
-5

我正在研究Java中的基因遗传算法,拥有20条染色体,我计划保留下一代的父母群体的前20%,我的问题是关于创建下一代在发现最强大的一代之后,是否围绕父母的交叉和突变的可能性创建了新一代的孩子?或者,下一代的孩子会再次随机生成,但保留最强大的父母。遗传算法问题

谢谢

+0

有趣,但我没有看到与Java的连接。 – laune

+0

@Rami那么你想如何将这个生物学问题与Java相关? – user3437460

+0

@laune算法是基于Java的 – Rami

回答

0

对于下一代,所有3基于概率是合理的。

交叉会让您更接近所需的解决方案。

突变试图确保您不会陷入局部最优。

新的条目可以帮助避免局部最优化,或者当搜索空间太大以至于初始群体无法正确表示时,有助于探索搜索空间的新区域。这对前几代人来说是最有用的,但过了一段时间后,他们的表现会一直比前一代跑赢。

没有黄金答案,您需要尝试各种策略和优化以使其适用于您的问题。尝试记录和分析每个策略的工作方式并调整参数(即,如果您发现突变在下一轮中总是被杀死,则可以将它们取出或降低比例)。