在模拟退火中找到更好的邻居

时间:2017-04-12 08:57:32

标签: heuristics simulated-annealing

我正在使用模拟退火解决TSP。我有一个问题:
高效候选人生成块的https://en.wikipedia.org/wiki/Simulated_annealing中,它说:

  上面的旅行商问题,例如,在低能量旅游中交换两个连续的城市,预计会对其能量(长度)产生适度的影响;而交换两个任意城市更有可能增加其长度而不是减少它。因此,期望连续交换邻居生成器的性能优于任意交换生成器。

所以我随机生成了第一个城市,第二个城市连续第二个城市。但解决方案变得更加严重 我做错了吗?

1 个答案:

答案 0 :(得分:2)

最初,您需要探索所有解决方案表面。你可以通过两种方式做到这一点,无论是通过有效地产生随机候选者,还是通过产生高温。如果您不使用方法一,则必须使用方法二。这意味着升温直到接受基本上所有的移动。然后你尽可能慢地减少它。 A"交换相邻城市"移动将产生合理的结果。