0

我想使用遗传算法在无向图中找到最短路径。关于交叉和突变,我有两个问题。我一直在研究如何在与此类似的情况下执行交叉,并且最流行的算法似乎是 PMX,我对此的理解是在 2 个父染色体之间交换部分路径以产生后代。我遇到的问题是,几乎所有后代都有很大的无效空间,不是吗?我想知道您是否可以为我确认这一点,如果我错了,请纠正我并解释一下。

在单独但相关的说明上;我确实知道如何做到这一点,但我不知道这是否是个好主意,只需选择 2 个父母,他们在他们的路径中共享相同的节点并在那时交叉,因此所有后代都保持有效。

我的第二个问题是突变;我对如何做到这一点有一个大致的想法;选择一个节点并将其删除并通过另一种方式重新链接路径是否明智?

谢谢 :)!

4

1 回答 1

0

首先你研究了交叉和变异,因为你说你可能会失去一些有效的父母,但它是遗传算法中的“精英主义”概念。你应该通过你提出的交叉方法来克服。因为在交叉本身我们有n个方法要做,我建议你做第二个变体交叉顺序。这不是墨菲定律,所以努力你会实现的。

于 2012-09-28T10:16:12.790 回答