文档详情

TSP问题的几种解法对比.pdf

发布:2017-09-20约8.98万字共36页下载文档
文本预览下载声明
城市旅行问题之路程短 摘要 城市旅行问题即旅行商(TSP)问题,要从图G 的所有周游路线中求取最小成 本的周游路线,而从初始点出发的周游路线一共有(n-1)!条,即等于除初始结点 外的n-1 个结点的排列数,因此旅行商问题是一个排列问题。排列问题比子集合 的选择问题通常要难于求解得多,这是因为 n 个物体有 n!种排列,只有子集合 2 (n!O( n ))。通过枚举(n-1)!条周游路线,从中找出一条具有最小成本的周游路线 的算法,其计算时间显然为O(n!)。这种枚举法运算量相当庞大,随着城市数量 呈指数增长。 为此,我们对比应用随机探索的模拟退火算法,线性规划和蚁群算法三种方 法:模拟退火算法,利用物理退火达到平衡态时的统计思想,建立数学模型,编 写该算法的MATLAB 程序,进行求解,得出最短旅行的最短距离为422.13 ;对 TSP 的约束条件和目标函数编写LINGO 程序,经过多次迭代,得出最短旅行的 最短距离也为 422.13 ;蚁群算法:基于自然界蚂蚁觅食的最短路径原理,建立 模型,通过MATLAB 程序,得出最短旅行距离为427.8971 。 关键词 模拟退火算法 线性规划 蚁群算法 一.问题重述 一个人要到30 个不同的城市游玩,每两个城市i 和j之间的距离为 ,如何选 择一条路径使得此人走遍所有城市后又回到起点,要求所走路径最短。 二.符号说明 S 解空间 C 代价函数 P 接受概率 城市i 和j 之间的距离 N 城市的数量 三.问题分析与处理 便于我们说明和解决问题,先将题中给出的城市编号: 城市编号 X 坐标 Y 坐标 城市编号 X 坐标 Y 坐标 城市编号 X 坐标 Y 坐标 1 41 94 11 64 60 21 87 76 2 37 84 12 18 54 22 18 40 3 57 64 13 22 60 23 13 40 4 25 62 14 83 46 24 82 7 5 7 64 15 91 38 25 62 32 6 2 99 16 25 38 26 58 35 7 68 58 17 24 42 27 45 21 8 71 44 18 58 69 28 41 26 9 54 62 19 71 71 29 44 35 10 83 69 20 74 78 30 4 5
显示全部
相似文档