利用优化算法寻找网络中的最短路径

时间:2011-12-15 03:49:51

标签: algorithm shortest-path

我是算法设计和图论的新手。我正在模拟由数千台路由器组成的大型内容网络。我正在使用“通过反向路径学习”进行路由。请求的内容名称和内容使用泛洪在网络中传播。路由器检查路由表中的匹配名称,并使用不匹配的请求内容名称和内容回复或填充路由表。是否会使用蚁群优化,爬山等优化算法而不是通过反向路径学习来提高路由效率?

1 个答案:

答案 0 :(得分:0)

如果你的图形满足三角形不等式,即是一个euklidian空间,那么我建议你使用christofides近似算法,因为它保证最佳值为3/2。其他启发式算法(如蚁群优化)非常快速有效,但不是很安全。蚁群优化(以及暴力和dp解决方案)的一个很好的例子是javascript中的谷歌地图tsp解算器。我相信空间填充曲线也是一个很好的近似值,并且有一定的保证。您可以查看z曲线或希尔伯特曲线。你可以在Nick space index quadtree hilbert curve blog或Hacker's joy中找到一篇关于希尔伯特曲线的好文章。我建议研究构造单调的n-ary格雷码和哈密顿路径。