资源简介
北京科技大学计算智能实验1-4全部试验的实验报告和matlab源代码
代码片段和文件信息
clc;
m=3; %蚂蚁个数
n=4; %城市个数
a=1; %预先设置的参数
b=2; %预先设置的参数
c=0.5; %信息素蒸发率
G=1000;%迭代总次数
Q=100;
N=1;
T1=ones(nn);
T2=zeros(mn);
X=zeros(Gn);
Y=inf.*ones(G1);
d=[+inf 3 1 2;3 +inf 5 4;1 5 +inf 2;2 4 2 +inf];%城市距离矩阵
e=1./d;
while N<=G
R=[];
for i=1:(ceil(m/n))
R=[Rrandperm(n)];
end
T2(:1)=(R(11:m))‘;
for j=2:n
for i=1:m
V=T2(i1:(j-1));
J=zeros(1(n-j+1));
P=J;
Jc=1;
for k=1:n
if isempty(find(V==k 1))
J(Jc)=k;
Jc=Jc+1;
end
end
for k=1:length(J)
P(k)=(T1(V(end)J(k))^a)*(e(V(end)J(k))^b);
end
P=P/(sum(P));
Pcum=cumsum(P);
Select=find(Pcum>=rand);
to_visit=J(Select(1));
T2(ij)=to_visit;
end
end
if N>=2
T2(1:)=X(N-1:);
end
L=zeros(m1);
for i=1:m
R=T2(i:);
for j=1:(n-1)
L(i)=L(i)+d(R(j)R(j+1));
end
L(i)=L(i)+d(R(1)R(n));
end
Y(N)=min(L);
pos=find(L==Y(N));
X(N:)=T2(pos(1):);
T=zeros(nn);
for i=1:m
for j=1:(n-1)
T(T2(ij)T2(ij+1))=T(T2(ij)T2(ij+1))+Q/L(i);
end
T(T2(in)T2(i1))=T(T2(in)T2(i1))+Q/L(i);
end
T1=(1-c).*T1+T;
T2=zeros(mn);
N=N+1;
end
plot(Y)
xlabel(‘迭代次数‘)
ylabel(‘路径长度‘)
title(‘蚁群算法TSP问题‘)
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2019-06-02 10:44 计算智能实验\
文件 1754 2019-06-02 10:37 计算智能实验\ACO.m
文件 1726 2019-06-02 10:37 计算智能实验\BPNN.m
文件 1277 2019-06-02 10:37 计算智能实验\GA.m
文件 1647 2019-06-02 10:37 计算智能实验\PSO.m
文件 56 2019-06-02 10:37 计算智能实验\func.m
文件 57 2019-06-02 10:37 计算智能实验\func1.m
文件 53 2019-06-02 10:37 计算智能实验\func2.m
文件 614757 2019-06-02 10:44 计算智能实验\计算智能实验报告1-2.pdf
文件 326563 2019-06-02 10:45 计算智能实验\计算智能实验报告3.pdf
文件 390831 2019-06-02 10:45 计算智能实验\计算智能实验报告4.pdf
- 上一篇:MATLAB 游戏代码 星球大战
- 下一篇:Matlab 图像融合源代码及数据
评论
共有 条评论