R语言旅行推销员问题TSP

Posted tecdat

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了R语言旅行推销员问题TSP相关的知识,希望对你有一定的参考价值。

原文链接:http://tecdat.cn/?p=6551

 

常用术语中的旅行推销员问题(TSP)是最复杂的问题之一,归结为组合优化。旅行到n个城市(顶点)需要检查(n-1)!可能性。3,000个地点有4 * 10 ^ 9131个可能的解决方案。

本文调查了R包的性能:TSP和tspmeta。结果对我的使用非常满意。

 

以下代码输入您的TSP225.csv文件并输出您的解决方案和可视化。生成的‘tour‘对象是一类TOUR和整数;它包含您的解决方案。

 

coords.df <- data.frame(long=TSP225$Long, lat=TSP225$Lat)

coords.mx <- as.matrix(coords.df)

# Compute distance matrix

dist.mx <- dist(coords.mx)

# Construct a TSP object

tsp.ins <- tsp_instance(coords.mx, dist.mx )

#

tour <- run_solver(tsp.ins, method="2-opt")

#Plot

autoplot(tsp.ins, tour)
技术图片

技术图片技术图片?

比较解决方案:下图显示了7种启发式解决方案的最佳旅游长度和协和式的确切解决方案。对于协和解决方案,我使用了在UW-Madison主持的NEOS-Server。

methods <- c("nearest_insertion" "2-opt")

tours <- sapply(methods  simplify = FALSE)

dotchart( ),

 )
技术图片

技术图片技术图片?

 

在2D中的#2 3000个随机顶点

显然,随着顶点数量的增长,精确解和其他启发式解决方案之间的差异显着增加。2-opt解决方案最接近最优。重复的2-opt解决方案和挑选最小的值让我非常接近于确切的解决方案 。

技术图片技术图片?

技术图片技术图片?

 

 

 

非常感谢您阅读本文,有任何问题请在下面留言!

  

大数据部落 -中国专业的第三方数据服务提供商,提供定制化的一站式数据挖掘和统计分析咨询服务

统计分析和数据挖掘咨询服务:y0.cn/teradat(咨询服务请联系官网客服

技术图片?技术图片QQ:3025393450

技术图片?

【服务场景】  

科研项目; 公司项目外包;线上线下一对一培训;数据采集;学术研究;报告撰写;市场调查。

【大数据部落】提供定制化的一站式数据挖掘和统计分析咨询

技术图片

欢迎选修我们的R语言数据分析挖掘必知必会课程!

技术图片

 

以上是关于R语言旅行推销员问题TSP的主要内容,如果未能解决你的问题,请参考以下文章

scipy 中的旅行推销员

在遗传算法中为多个“推销员”TSP 实现交叉函数

TSP问题基于蚁群算法求解TSP问题matlab源码

TSP基于matlab麻雀算法求解旅行商问题含Matlab源码 1575期

TSP基于matlab蜜蜂算法求解旅行商问题含matlab源码 1248期

TSP基于matlab遗传算法求解旅行商问题含Matlab源码 1337期