?? caculate.m
字號:
%該函數(shù)同時提供若干種測試函數(shù),計算各測試函數(shù)的適應(yīng)值
function fitness = caculate(pop,n,m)
%Rastrigin函數(shù)
% for i = 1:n
% fitness(i) = 0;
% for j = 1:m
% fitness(i) = fitness(i) + pop(i,j)^2 - 10*cos(2*pi*pop(i,j)) + 10;
% end
% end
%Griewank函數(shù)
for i = 1:n
a = 0;
b = 1;
for j = 1:m
a = pop(i,j)^2 + a;
b = cos(pop(i,j)/sqrt(j))*b;
end
fitness(i) = a/4000 - b + 1;
end
%Schaffer函數(shù)
% for i = 1:n
% fitness(i) = 0.5 + (sin(sqrt(pop(i,1)^2 + pop(i,2)^2))^2 - 0.5)/(1.0 + 0.001*(pop(i,1)^2 + pop(i,2)^2))^2;
% end
%Rosenbrock函數(shù)
% for i = 1:n
% fitness(i) = 0;
% for j = 1:m-1
% fitness(i) = fitness(i) + 100*(pop(i,j+1)-pop(i,j)^2)^2 + (pop(i,j) - 1)^2;
% end
% end
% %Parabola函數(shù)
% for i = 1:n
% fitness(i) = 0;
% for j = 1:m
% fitness(i) = fitness(i) + pop(i,j)^2;
% end
% end
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -