我试图在文件中使用concordetsp解算器,格式如下:

NAME : p5
COMMENT : Nada
TYPE : TSP
DIMENSION : 20
EDGE_WEIGHT_TYPE : EUC_2D
NODE_COORD_SECTION
0 0.329733 0.67714
1 0.823944 0.035369
2 0.002488 0.866692
3 0.241964 0.671822
4 0.98876 0.134457
5 0.879147 0.457779
6 0.021017 0.271951
7 0.221737 0.367143
8 0.549802 0.523319
9 0.363839 0.22359
10 0.696631 0.495935
11 0.279072 0.100501
12 0.660156 0.860675
13 0.251769 0.029172
14 0.32112 0.207704
15 0.821433 0.507387
16 0.095411 0.953448
17 0.115897 0.269363
18 0.704484 0.411328
19 0.705198 0.795917

因为我找不到关于格式的指南,所以我修改了我下载的一个示例文件我正在运行以下命令:
concorde myFile.tsp

它以.sol文件的形式快速(~45ms)输出解决方案,结果如下:
20
0 10 19 8 12 15 5 4 18 1
9 17 6 11 7 13 14 3 2 16

画图,我得到:
从外观上看,这离理想的解决方案太远了。因此,
文件格式或命令有问题吗?
如果没有,考虑到它计算解决方案的速度有多快,我可以提示它花更多时间寻找更好的解决方案吗?

最佳答案

EUC_2D是四舍五入的l2范数。也就是说,两点之间的距离被认为是它们的欧氏距离,四舍五入为最接近的整数。你们的积分都是0或1的距离,协和式飞机将产生一个愚蠢的旅行,就像你画的一样。
把你的问题放大,直到四舍五入不再起作用。

07-26 09:30
查看更多