哪种方法能在TSP问题中产生更短的路径:最近邻算法还是遗传算法?

在过去的几天里,我注意到一些web 网站展示了使用遗传算法解决TSP问题。

哪种方法能在TSP问题中产生更短的路径:最近邻算法还是遗传算法?


回答:

由于这两种技术都不能保证找到最优解,所以结果会因情况而异。 运气好的话,任何一种技术都可能胜过另一种。这两种技术各有优缺点。

最近邻算法:+速度快,+简单,-通常不是最优解

遗传算法:-速度较慢,-更复杂,+随着时间的推移,解会趋向于最优

最大的区别在于,像模拟退火和遗传算法这样的随机算法可能会随着时间的推移而不断改进——你让它们运行的时间越长,获得最优解的机会就越多(尽管没有保证)。

由于最近邻算法速度很快,没有什么能阻止你结合使用这两种技术。运行最近邻算法来找到一个可能比随机解更好的起始解。然后,将该解输入到你的遗传算法中,并让它运行你认为合适的时间。

如果你对最优解感兴趣,可以看看Lin-Kernighan启发式算法线性规划。 这两种方法都被用来找到大型旅行路线的最优解,包括这个解,它解决了85,900个城市的旅行路线,以及24,978个城市的瑞典旅行路线

佐治亚理工学院的TSP网站是一个很好的资源。

Related Posts

Keras Dense层输入未被展平

这是我的测试代码: from keras import…

无法将分类变量输入随机森林

我有10个分类变量和3个数值变量。我在分割后直接将它们…

如何在Keras中对每个输出应用Sigmoid函数?

这是我代码的一部分。 model = Sequenti…

如何选择类概率的最佳阈值?

我的神经网络输出是一个用于多标签分类的预测类概率表: …

在Keras中使用深度学习得到不同的结果

我按照一个教程使用Keras中的深度神经网络进行文本分…

‘MatMul’操作的输入’b’类型为float32,与参数’a’的类型float64不匹配

我写了一个简单的TensorFlow代码,但不断遇到T…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注