adapting.m

来自「用matlab编写的自适应遗传算法例子」· M 代码 · 共 36 行

M
36
字号
%计算适应值

% function [adapt,ada_ave]=adapting(pop)

adapt(40)=0;

for i=1:40
    for j=1:10
        if pop(i,j)==1
            adapt(i)=adapt(i)+2^(10-j);
        end
    end
    adapt(i)=adapt(i)*0.0029;
    adapt(i)=-(adapt(i)-1).^2+4;
end

% global adapt_best;
global best_pos;
% adapt_best=0;   %最佳个体
best_pos=1;     %最佳个体在种群中的位置
% adapt_ave=0;

adapt_ave(G)=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;


clear i;
clear j;

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?