蚁群算法matlab程序实例.docxVIP

  • 9
  • 0
  • 约1.8千字
  • 约 3页
  • 2024-03-03 发布于上海
  • 举报

function[y,val]=QACStic

loadatt48att48;MAXIT=300;%最大循环次数NC=48;%城市个数

tao=ones(48,48);%初始时刻各边上的信息最为1rho=0.2;%挥发系数

alpha=1;beta=2;Q=100;

mant=20;%蚂蚁数量

iter=0;%记录迭代次数

fori=1:NC%计算各城市间的距离

forj=1:NC

distance(i,j)=sqrt((att48(i,2)-att48(j,2))^2+(att48(i,3)-att48(j,3))^2);end

end

bestroute=zeros(1,48);%用来记录最优路径

routelength=inf;%用来记录当前找到的最优路径长度

%fori=1:mant%确定各蚂蚁初始的位置

%end

forite=1:MAXIT

forka=1:mant%考查第K只蚂蚁

deltatao=zeros(48,48);%第K只蚂蚁移动前各边上的信息增量为零

[routek,lengthk]=travel(distance,tao,alpha,beta);iflengthkroutelength%找到一条更好的路径

routelength=lengthk;bestroute=ro

文档评论(0)

1亿VIP精品文档

相关文档