我可以帮您翻译成中文:我在哪里可以学习更多关于“蚁群”优化的知识?

8

最近我一直在阅读关于使用“蚂蚁群”模型作为启发式方法来优化各种类型的算法的文章。然而,我尚未找到一篇介绍性的文章或书籍来详细讨论蚂蚁群优化。是否有人能向我指出一些资源,让我更深入地了解这个想法?

8个回答

5

维基百科链接 让我开始了解这个领域。我阅读了文章并开始编码。我正在解决旅行商问题的一个恶劣变体。这是一种惊人的元启发式算法。基本上,任何可以放入图形中(节点和边缘,对称或不对称)的搜索问题都可以通过蚁群算法来解决。

要注意全局和局部信息素痕迹之间的区别。局部信息素会阻止一代蚂蚁遍历同一路径。它们使模型不会收敛。全局信息素是吸引剂,并应该每一代至少吸引一只蚂蚁。它们在几代之内鼓励最佳路径。

我最好的建议就是简单地玩弄算法。设置一个基本的TSP求解器和一些基本的蚁群可视化。然后开心地玩耍。从概念上讲,与蚂蚁一起工作非常酷。您可以编程定义它们的基本行为,然后释放它们。我甚至喜欢它们。 :)

ACO是遗传算法的一种贪婪形式。玩弄它们。改变它们的交流行为和包装行为。您将迅速开始以全新的方式看待网络/图形编程。这是它们最大的好处,而不是大多数人所认为的配方。

你必须玩弄它才能真正理解它。书籍和研究论文只会给出一个一般性的高层次理解。就像骑自行车一样,你必须开始骑行。 :)

ACO是我最喜欢的图形问题抽象化方法。


5
如果您能够阅读德语(对不起...),我的一个朋友和我已经写了一篇有关此主题的介绍和代码,我自己认为它相当不错。文本和代码使用TSP的例子来介绍这个概念。
即使您不懂德语,请查看代码和文本中的公式,这也可能有所帮助。

谢谢这个链接!不幸的是,我的德语只限于我在中学学到的内容(想讨论天气吗?),但 Google 翻译在这篇文章上做得非常好。 - MattK
我认为XKCD漫画的翻译做得相当不错...但其他部分...就不怎么样了。;-) 注意:这并不是我平常说话的德语。 - Konrad Rudolph

3

《国家地理》杂志曾在一段时间前撰写了一篇有关一些理论的有趣文章(链接),涉及到IT技术相关内容。


3

2

1

例如,可以查看scholarpedia上的本文

在“什么是通过小世界图找到路径的最有效方法?”问题中也有讨论这里


1

乍一看,这似乎与Metropolis算法密切相关(或者可能是其特例)。因此,这是另一个可能的搜索方向。

补充:此PDF文件包括对1953年原始Metropolis论文的引用。


1
嗯,我发现Eric Rollins的个人主页及其关于ACO算法的不同实现(Haskell、Scala、Erlang等)非常有帮助。 还有Enrique Alba的书籍《并行元启发式算法:一种新的算法类别》,其中有一个完整的章节解释了ACO算法及其不同应用。
希望对你有所帮助。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接