?? adapting.m
字號:
%適值計算
% 測試函數為f(x,y)=100(x^2-y)^2+(1-x)^2, -2.048<x,y<2.048
%計算適應值并賦值
for i=1:popsize
pop(i,8)=100*(pop(i,1)^2-pop(i,2))^2+(1-pop(i,1))^2;
if pop(i,7)>pop(i,8) %若當前適應值優于個體最優值,則進行個體最優信息的更新
pop(i,7)=pop(i,8); %適值更新
pop(i,5:6)=pop(i,1:2); %位置坐標更新
end
end
%計算完適應值后尋找當前全局最優位置并記錄其坐標
if best_fitness>min(pop(:,7))
best_fitness=min(pop(:,7)); %全局最優值
gbest_x=pop(find(pop(:,7)==min(pop(:,7))),1); %全局最優粒子的位置
gbest_y=pop(find(pop(:,7)==min(pop(:,7))),2);
end
best_in_history(exetime)=best_fitness; %記錄當前全局最優
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -