了解EUC_2D边缘权重

时间:2017-09-03 17:40:30

标签: algorithm traveling-salesman

我正在为旅行商问题构建超启发式框架。

我目前正在使用如下所示的成本矩阵(请原谅PHP语法):

("New York") => array(0, 2451,  713),
("Los Angeles") => array(2451,    0, 1745), 
("Chicago") => array( 713, 1745,    0),

这是相当自我解释的,从纽约到洛杉矶2451,纽约到芝加哥713的距离。

我正在尝试构建一个解析器,它将EUC_2D边缘权重解析为上面显示的格式。问题是我无法理解EUC_2D边缘权重的语义。

EUC_2D加权的示例如下所示(取自here):

1 0 13
2 0 26
3 0 27
4 0 39
5 2 0
6 5 13
7 5 19
8 5 25
9 5 31
10 5 37 

任何人都可以解释EUC_2D边缘加权的工作原理吗?

1 个答案:

答案 0 :(得分:2)

您提到的示例包含地图上的城市列表。 每行使用3个数字描述一个城市。

city_number - coordinate_x - coordinate_y

例如行

60 28 43

表示城市号码60位于地图上,坐标为(28,43)。

城市A和B之间的距离定义为

A x1 y1
B x2 y2

使用四舍五入距离四舍五入到最接近的整数来计算:

dist(A,B)= round(sqrt((x1 - x2)^ 2 +(y1 - y2)^ 2))