adapting.m
来自「该源码是神经网络中常用的遗传算法的代码。遗传算法是最优化常用的解法之一。」· M 代码 · 共 51 行
M
51 行
for i=1:40
for k=1:2
Adapt(i,k)=0;
end
adapt(i)=0;
end
for i=1:40
k=1;
for j=1:10
if pop(i,j)==1
Adapt(i,k)=Adapt(i,k)+2^(10-j);
end
end
k=2;
for j=11:20
if pop(i,j)==1
Adapt(i,k)=Adapt(i,k)+2^(20-j);
end
end
for k=1:2
Adapt(i,k)=Adapt(i,k)*0.004-2.048;
end
adapt(i)=100*(Adapt(i,1)-Adapt(i,2))^2+(1-Adapt(i,1))^2;
end
global adapt_best;
global best_pos;
adapt_best=0; %最佳个体
best_pos=0; %最佳个体在种群中的位置
% adapt_ave=0;
for i=1:40
adapt_ave(G)=adapt_ave(G)+adapt(i);
if adapt_best<adapt(i)
adapt_best=adapt(i);
best_pos=i;
end
end
adapt_ave(G)=adapt_ave(G)/40;
best(G)=adapt_best;
for i=1:20
best_indi(G,i)=pop(best_pos,i);
end
clear i;
clear j;
clear k;
clear Adapt;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?