【问题标题】:network routing using genetic algorithm [closed]使用遗传算法的网络路由
【发布时间】:2013-12-27 14:59:58
【问题描述】:

我正在为一篇题为“Network routing protocol using genetic algorithm”的论文做评估阅读,该论文的目的是在网络中找到从源节点到目的节点的最优路由,本文的结果测试表明,与Dijkstra 的算法,即遗传算法给出的结果相同,它们意味着最优!

时间复杂度也是如此,因为我已经有了自己的网络模拟器,所以我在 Dijkstra 和所提出的算法上测试了网络,实验表明它们在获得最优解方面也不相同,这就是评估算法他们不保证找到最优解”,而且在执行时遗传算法最差。

所以我再次阅读了这篇论文并进行了更多调查,在所提出的算法中,初始种群随机生成,其中可能包括可行和不可行的解决方案,但在实验中我发现在初始种群中它们包括种群中的最优解是作弊,不仅人口中所有剩余的个体都是可行的解决方案,而实际情况并非如此。

但令我惊讶的是,后来我发现很多论文都证明并讲述了相同的内容。

所以因为我不是网络领域的专家,我需要解释一下遗传算法是否真的找到了最优解,以及它是否更好地用于 ad-hoc 移动网络、具有动态路由的有线网络或任何其他情况。

与确定性算法(如 Dijkstra's)相比,它更适合在网络中使用的地方我的意思是什么情况。

最后有什么好处。

【问题讨论】:

标签: algorithm search networking genetic-algorithm


【解决方案1】:

Dijkstra 的算法是最优的。这意味着,如果在加权图中存在从源节点到目标节点的多条路径,则算法将返回最短的可能路径(如果有多个,则返回最短的可能路径之一)。

遗传算法不是最优算法,因此无论作者声称什么,都不能保证它找到最优解。我宁愿假设他们测试的问题太简单了。他们没有提供任何显示质量进展的图表,所以我什至不能确定他们是否已经在初始种群中找到了最佳解决方案(这意味着您可以很容易地偶然找到它)。作者声称“所获得的结果证实了所提出算法的潜力,其中保证收敛以在每种情况下获得最佳路径。”完全错误。

就个人而言,我认为使用遗传算法来解决诸如存在 Dijsktra 算法和 A* 的最短路径问题的想法非常荒谬。我认为在 A* 无论如何都能有效解决的小问题实例上与最优算法竞争是没有意义的。作者使用位串编码的方法也不是很合理。这是数字列表的非常复杂的表示。作者指出,“编码的最佳选择已被证明是二进制编码 [8]”,并以 1975 年的参考文献支持这一主张(!),相比之下,他们的文章来自 2010 年。他们的测试部分对于任何严肃的期刊:他们使用具有 10 个节点和 14 条边的单个实例,他们尝试求解 6 次,然后得出结论,保证找到最优值。

我会使用 A* 来解决最短路径问题。如果网络更大,您可以使用双向搜索,这基本上是来自中间相交的两端的 A*。这应该会打开更少的节点。

【讨论】:

  • 是的,我在每一点上都完全同意你的看法,但我需要有人来证实我的想法,所以非常感谢,但还有一个问题是这样的期刊如何接受这样的论文,因为我观察到也很奇怪的是,很多论文内容相同,名字不同,包括很多作弊,特别是与进化算法相关的论文,你可以找到相同的论文,例如只有不同的适应度函数。
  • 这几年新的期刊很多,基本上任何人都可以创办出版事业,创建期刊。
猜你喜欢
  • 2017-10-25
  • 2019-04-15
  • 2011-06-30
  • 2011-01-06
  • 2018-05-11
  • 2010-10-24
  • 2021-07-18
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多