- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一种适用于求解旅行商问题新型算法性能分析
一种适用于求解旅行商问题的新型算法性能分析
The performance analysis of two vertices combination algorithm in solving traveling salesman problem
【Abstract】Two vertices combination algorithm is a kind of improved algorithm on loops. Comparing this method with ant colony algorithm, its time complexity and computational accuracy are better than those of the latter. The results show that this proposed algorithm possesses a better practicability in solving the middle and small scale traveling salesman problem.
【Key words】traveling salesman problem;two vertices combination algorithm; ant colony algorithms
摘 要:二点组合算法是求解旅行商问题(TSP)的一种环路改造算法,与蚁群算法相比,时间复杂度、计算精度等性能皆优于后者,实际应用结果表明本算法在解决中小规模旅行商问题时的实用性。
关键词:旅行商问题; 二点组合算法; 蚁群算法 文献标识码: A中图分类号:TP181
1 引言
解旅行商问题(Traveling Salesman Problem,TSP)是一个著名的NP-Hard问题,由于该问题的实际模型在路径、网络、分配等优化问题中有着广泛的应用,故长期以来吸引着许多领域的研究人员采用各种方法对它进行求解[1-2]。它可以简单描述为:给出一条遍历给定的若干个城市中所有城市的最短路径[3]。目前,研究TSP问题主要采用启发式算法,环路改进算法就是一类典型的启发式算法,即通过比较目标解和局部最优解的优劣而逐步改变解[4-5]。
本文给出的二点组合算法就是一种环路改造算法,其步骤是选取一条合法汉密尔顿环路,作为目标解,任取两个顶点删除与之相关的边,形成2至4个环路片断,对这些环路片断进行排列组合,尝试寻找更优的解替换目标解[6]。重复上述步骤,直到选定环路任意两点,目标解都无法进一步优化。与经典的蚁群算法相比,时间复杂度相等,但计算效率和计算误差性能皆优于后者[7-8]。本文将重点讨论该算法在求解中小规模旅行商问题时的性能,从而说明新算法的实用性。
2 二点组合算法性能分析
本节将以实际测试结果从多个不同侧面分析二点组合算法的时间复杂度、计算效率、计算误差等性能,测试全部采用随机起始环路进行计算,以保证试验性能不受初始环路的影响。
2.1 实测数据的要求和环境
(1) 测试环境:联想开天4600 (CUP P4 1.7G,内存 256M)安装Window XP 2002操作系统。
(2) 测试内容:利用TSP-LIB中的数据实例,采用EUC_2D地图格式,结点范围为50-500,地图数量为40。
(3) 测试方法: 对40组不同地图,运行二点组合算法1000次(部分运行10000次),保留最好结果,称为最小解。距阵值为四舍五入求整。
(4) 误差计算方法:所有地图均提供通过证明的最佳解。
误差=(最小解-最佳解)/最佳解
2.2 计算精度分析
使用二点组合算法,对30组规模不同的TSP问题求解结果,最小解为计算1000次的结果,最优解目前已证明的最优解,计算时间的单位为毫秒,计算结果如表1所示。
结点数量与误差之间的关系如图1所示。根据图1可知,结点数量和误差不存在严格的正比关系。
如地图TS225,拥有顶点225个,计算误差为0%,而地图EIL101拥有顶点101个,误差却为1.6%。但是从整体趋势来看,顶点数量越大,获得误差也可能越大。
结点数量-误差统计结果如表2所示。由表 2明确看出,随着顶点数量的增加,二点组合算法的误差将会有小幅度增加。顶点数在1-100范围内,平均误差为千分之一;顶点数在100-200范围内,平均误差为1%,顶点数在200-300范围内,平均误差为1.7%,所以可以得到结论:二点组合算法在平面地图顶点300以下,计算1000次就可以得到较好结果。
2.3 时间复杂度分析
根据表2绘制图2,由此图可以看出
文档评论(0)