⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fitness.asv

📁 遗传算法和BP人工神经网络组合的优化方法。
💻 ASV
字号:
function y=fitness(chrom,p,aim)
global   P_cross  P_mutation
[Popsize len]=size(chrom);
fitness_gene=zeros(Popsize,1);
in_he=zeros(4,1);
out_he=zeros(4,1);
in_out=0;
out_out=0;
% 权值和阈值的分配设置
for i=1:Popsize
    w_he=[chrom(i,1) chrom(i,5) chrom(i,9) chrom(i,13);
          chrom(i,2) chrom(i,6) chrom(i,10) chrom(i,14);
          chrom(i,3) chrom(i,7) chrom(i,11) chrom(i,15)]
    w_out=[chrom(i,17) chrom(i,18) chrom(i,19) chrom(i,20)];
    b_he=[chrom(i,4); chrom(i,8) chrom(i,17) chrom(i,18)];
    b_out=chrom(i,9);
    
    error=zeros(4,1);
    for j=1:4
        for s=1:2
            % 隐层的输入与输出    
            in_he(s)=sum(w_he(:,s).*p(:,j))+b_he(s);%隐层的输入
%             if in_he(s)>1.0e002
%                 out_he(s)=-1;
%             else
                out_he(s)=(1-exp(in_he(s)))/(1+exp(in_he(s)));      %隐层的输出
%             end
        end
        % 输出层的输入与输出
        in_out=w_out*out_he+b_out;
        out_out=1/(1+exp(-in_out)); 
        
        error(j)=aim(j)-out_out;
    end
    fitness_gene(i)=1/sum(error.^2); % 染色体均方误差
    
end    
y=fitness_gene;

⌨️ 快捷键说明

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