clear all
close all
clc
citys=xlsread('citys.xlsx'); % 坐标为平面直角坐标 C31' , 'B2:C31'
n = size(citys,1); % 城市的个数
D = zeros(n,n); % D表示完全图的赋权邻接矩阵,产生n*n的值全为0的矩阵
for i = 1:n
for j = 1:n % ~= i是否等于j
if i ~= j
D(i,j) = sqrt(sum((citys(i,:) - citys(j,:)).^2)); %sqrt((citys(i, 1) - citys(j, 1))^2 + (citys(i, 2) - citys(j, 2))^2
else
D(i,j) = 1e-4; %对角线的值为0,但由于后面的启发因子要取倒数,因此用一个很小数代替0
end
end
end
route=[6,4,5,8];
count = length(route);
for i = 1: count-1
sumDist(i) = D(route(i),route(i+1));
end
sumDist
各POI两点之间的距离
最新推荐文章于 2024-05-17 16:25:58 发布