bestlen;
ntau(city2, city1) = ntau(city2, city1) + q/ bestlen;
end
ntau(ntau> taumax) = taumax;
end
制作距离矩阵的函数如下...:
function dm =makeDistanceMatrix(pos)
%制作距离矩阵
%pos input 城市坐标
%dm output 距离矩阵
[~, len]...repmat(pos(2,:)', 1, len) - repmat(pos(2,:), len, 1);
dm =round((deltax .^ 2 + deltay .^ 2) .^ 0.5);
end
制作启发式因子矩阵的函数如下...:
function eta= makeEta(dm)
%制作启发式因子的倒数,是距离矩阵的倒数
%dm input 距离矩阵
%eta output 启发式因子矩阵...input 距离矩阵
%len output 距离
[NP, D] =size(pop);
pop = [poppop(:,1)];
sum =zeros(NP, 1);
for