Optimization 使用有序交叉时是否需要变异?

Optimization 使用有序交叉时是否需要变异?,optimization,artificial-intelligence,genetic-algorithm,Optimization,Artificial Intelligence,Genetic Algorithm,我已经为求解TSP的遗传算法实现了有序交叉 然而,我注意到我的算法在没有启用变异的情况下性能更好,我猜这是因为有序交叉如何混合一些遗传信息以保持有效的排列编码,从而创建稍微“变异”的解决方案 但我觉得这是错的?使用有序交叉时是否可以删除变异?TSP中的变异可以有不同的形式,因此它们将以不同的方式与有序交叉算子交互 阅读本文了解TSP中不同类型的突变:Informatica 35(2011)513-518- 甚至有序交叉也有几种不同的实现方式,因此会与不同的变异算法进行不同的交互:IJCOPI第2

我已经为求解TSP的遗传算法实现了有序交叉

然而,我注意到我的算法在没有启用变异的情况下性能更好,我猜这是因为有序交叉如何混合一些遗传信息以保持有效的排列编码,从而创建稍微“变异”的解决方案


但我觉得这是错的?使用有序交叉时是否可以删除变异?

TSP中的变异可以有不同的形式,因此它们将以不同的方式与有序交叉算子交互

阅读本文了解TSP中不同类型的突变:Informatica 35(2011)513-518-

甚至有序交叉也有几种不同的实现方式,因此会与不同的变异算法进行不同的交互:IJCOPI第2卷,第1期:2011年1月至4月-

因此,很难了解有序交叉算子的实现如何与变异算子交互


希望这能有所帮助。

我已经很久没有这样做了,所以我只是发表评论而不是回答。但是:引入新的基因信息不需要突变吗?如果我对交叉的记忆是正确的,原则上,他们不能探测整个问题空间,只是其中的一个子集。只有突变才能探测整个问题空间。除非你已经用你的第一代人覆盖了整个问题空间,@KonradRudolph是正确的;你需要变异来搜索更多的空间。然而,你可能会很幸运,因为你的问题是这样的,一个非常好的解决方案可以通过交叉发现。是的,我知道。如果你看看@ASantosRibeiro posted()上的文章,你就会明白我的意思。有序交叉通常会将遗传信息转移到双亲中未发现的染色体新区域。所以它有点像突变。然而,在我看到的所有使用有序交叉的论文中,没有讨论这一点,并且考虑到我得到的结果,仍然实现了变异,这似乎很奇怪。对于TSP,有序交叉确实提供了变异特征,并且可以在没有变异的情况下使用,因为您可以生成任何具有有序交叉和足够多代的字符串。然而,突变可能提供不依赖于父母的更快的变化。请注意,尽管您可以像前面所说的那样生成任何字符串,但这仍然取决于父级。同样,正如下面的答案一样,使用的变异和交叉概率,以及具体的实现将以不同的方式平衡这一点。我建议您测试不同的技术并自行决定。