一、问题简述
TSP问题(旅行商问题)是指旅行家要旅行n个城市,要求各个城市经历且仅经历一次然后回到出发城市,并要求所走的路程最短。
下面用蚁群算法解决该问题。
二、代码
clear
clc
%读取xlsx文件
point = readmatrix("ACA_data.xlsx");
%城市数量
n = height(point);
%各个城市之间距离的邻接矩阵
D = ones(n, n);
%计算各城市间距离的邻接矩阵
for i = 1 : n
for j = 1 : n
D(i, j) = sqrt((point(i, 1) - point(j, 1)) ^2 + (point(i, 2) - point(j, 2)) ^2);
end
end
%蚁群数量
m = 50;
%迭代次数
G = 100;
%信息素重要程度因子
alpha &