• 大小: 3.72KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-03-27
  • 语言: Matlab
  • 标签: matlab  

资源简介


经典的蚁群算法用于解决旅行商问题,包括实例数据,直接点击Run.m运行,结果绘图

资源截图

代码片段和文件信息

function [R_bestL_bestL_aveShortest_RouteShortest_Length]=ACATSP(CNC_maxmAlphaBetaRhoQ)
%%-------------------------------------------------------------------------
%% 主要符号说明
%% C n个城市的坐标,n×2的矩阵
%% NC_max 最大迭代次数
%% m 蚂蚁个数
%% Alpha 表征信息素重要程度的参数
%% Beta 表征启发式因子重要程度的参数
%% Rho 信息素蒸发系数
%% Q 信息素增加强度系数
%% R_best 各代最佳路线
%% L_best 各代最佳路线的长度
%% =========================================================================
%%第一步:变量初始化
n=size(C1);%n表示问题的规模(城市个数)
D=zeros(nn);%D表示完全图的赋权邻接矩阵
for i=1:n
for j=1:n
if i~=j
D(ij)=((C(i1)-C(j1))^2+(C(i2)-C(j2))^2)^0.5;
else
D(ij)=eps;      %i=j时不计算,应该为0,但后面的启发因子要取倒数,用eps(浮点相对精度)表示
end
D(ji)=D(ij);   %对称矩阵
end
end
Eta=1./D;          %Eta为启发因子,这里设为距离的倒数
Tau=ones(nn);     %Tau为信息素矩阵
Tabu=zeros(mn);   %存储并记录路径的生成
NC=1;               %迭代计数器,记录迭代次数
R_best=zeros(NC_maxn);       %各代最佳路线
L_best=inf.*ones(NC_max1);   %各代最佳路线的长度
L_ave=zeros(NC_max1);        %各代路线的平均长度
 
while NC<=NC_max        %停止条件之一:达到最大迭代次数,停止

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件        4462  2015-09-19 20:12  ACATSP.m
     文件         600  2015-09-19 15:15  coords.mat
     文件        1058  2015-09-19 18:00  Run.m

评论

共有 条评论