TSP实现上的蚁群优化

问题描述 投票:0回答:1

我们在迭代时是否跟踪最佳距离?或者我们总是返回最后一次迭代结果?另外,我们如何确定迭代次数呢?是不是越多越好?

我尝试始终返回算法结果的最后一次迭代,并且我期望获得与提供给我的数据集相匹配的最佳解决方案(是的,我获得数据集的源也包含最佳解决方案)但我没有

python optimization traveling-salesman ant-colony
1个回答
0
投票

我不知道它是否可以帮助您或/和是否回答您的问题,但我致力于 TSP 的蚁群优化,并且我使用评分方法来表示蚂蚁信息素。

(这里,旅程=完整的路径循环,路径=两点之间的路径)

首先,您需要随机(且独立)生成多个旅程。然后,您可以根据距离进行评分,对它们进行排名。之后,根据旅程分数为每条路径赋予权重(例如,如果路径在旅程中,则权重 = 权重 + 分数)。 然后您重新启动以生成多个旅程,但这次受路径权重的影响。重复步骤(排名+评分+权重)。 经过一定次数的迭代后,生成的所有行程将是相同的。 这是你的最佳路径。

您可以更改以获得不同结果的参数是:

  • 评分方法
  • 根据体重选择路径
  • 每次迭代生成的旅行次数(代表蚂蚁的数量)
© www.soinside.com 2019 - 2024. All rights reserved.