使用python解决TSP(旅行商问题)

原创 2016年08月30日 20:41:53

这段时间,因为要交一篇关于旅行商问题的作业,所以在github上搜索了一下,觉得用python解决比较方便,所以给大家简单的介绍一下如何使用所给的代码:

用python实现的TSP源码:  GitHub链接:https://github.com/eldrtimo/python-salesman    百度云盘链接:链接:http://pan.baidu.com/s/1i57BhGx 密码:2w4b

这段代码使用python3实现的,可以在windows的dos环境下运行,而且还要借助于numpy(它是一种开源的python数值计算扩展)。所以必须要安装python3 和 相应的numpy;


1.安装python3

2.配置python的环境变量:把python安装路径添加到path环境变量中即可;

3.安装numpy;如果已安装python,会自动识别出python安装路径,直接点next即可。

这一切准备工作结束后,然后进入dos环境(win+r,输入cmd回车),进入源代码(python-salesman-master)所在目录,我这里是E盘,输入以下命令运行即可:


运行的命令:python main.py -nfi tspfiles


运行的结果部分截图如下:



命令中的参数介绍:

python main.py --help

usage: main.py [-h] [-n] [-f] [-i] [-p] PATH [PATH ...]

Parse TSP files and calculate paths using simple algorithms.

positional arguments:
  PATH               Path to directory or .tsp file. If PATH is a directory,
                     run on all .tsp files in the directory.

optional arguments:
  -h, --help         show this help message and exit
  -n, --nearest      calculate distance traveled by nearest neighbor heuristic
  -f, --furthest     calculate distance traveled by furthest insertion
                     heuristic
  -i, --in-order     calculate the distance traveled by the in-order-tour
                     [1..n,1]
  -p, --print-tours  print explicit tours

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

旅行商问题(travelling salesman problem, TSP) 解题报告

旅行商问题是个熟知的问题。这次是因为coursera上面选的算法课而写代码实现。这里做个简单总结。 测试程序: 25 20833.3333 17100.0000 20900.0000 1706...

python实现遗传算法求解TSP旅行商问题(详细解释)

课设需要做这个题目,看了http://www.tuicool.com/articles/Fb2YjeF之后下了他在github上的代码https://github.com/zchlong/tsp,发现...

2-opt求解TSP(旅行商)问题的python实现

2-opt其实是2-optimization的缩写,简言之就是两元素优化。也可以称作2-exchange 。

蚁群算法求解旅行商问题 python

这组数据,刚开始只运行到2879m,于450m差的比较远,后来发现是路径距离算错了,再后来变成了1789m,发现是初始化点没选择,改了下,最后运行结果是440m。python有点慢,需要运行一段时间。...

用动态规划方法旅行商问题(TSP问题)

某推销员要从城市v1 出发,访问其它城市v2,v3,…,v6 各一次且仅一次,最后返回v1。D 为各城市间的距离矩阵。 问:该推销员应如何选择路线,才能使总的行程最短?    以下是用动态规...

python 利用模拟退火算法求解TSP最短路径

在我的上一篇文章中,我详细介绍了如何利用爬山法求解最短路径的过程。因为模拟退火算法会以一定的概率接受比当前更差的解,因此,它可以在一定程度上避免陷入局部最优的问题。 维基百科中关于模拟退火算法的详细...

【ACMclub周赛5】Problem E——TSP旅行商问题

题目:点击打开链接 题目简化一下就是一个旅行者可以在任意一点出发,遍历所有顶点后回到原点,问可以走的最短路程。很著名的NP-HARD旅行商问题。 TSP问题最简单的求解方法是枚举法,时间复杂度是O...

TSP_旅行商问题 - 模拟退火算法(三)

本文基于模拟退火算法,实现了TSP问题的求解,并与蛮力法(DFS)进行比较,综合分析了模拟退火算法的优缺点!此外,本人还整理其他解决TSP问题的算法(蛮力法,动态规划,遗传算法,粒子群算法,人工神经网...

清华OJ TSP旅行商问题

一、题目1、描述Shrek是一个大山里的邮递员,每天负责给所在地区的n个村庄派发信件。但杯具的是,由于道路狭窄,年久失修,村庄间的道路都只能单向通过,甚至有些村庄无法从任意一个村庄到达。这样我们只能希...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)