下载频道> 资源分类> matlab源码> 算法设计> matlab编程免疫遗传算法优化rbf源码程序

标题:matlab编程免疫遗传算法优化rbf源码程序
分享到:

所属分类: 算法设计 资源类型:程序源码 文件大小: 99.15 KB 上传时间: 2019-07-13 22:18:50 下载次数: 48 资源积分:1分 提 供 者: zhangsan456 20190713101821538
内容:

clc;
clear 
close all
 
%免疫遗传算法优化来训练RBF网络权值
%G为进化代数,Size为种群规模,CodeL为参数的二进制编码长度
G = 300;
Size = 100;
CodeL = 10;
 
%确定每个参数的最大最小值
for i = 1:3
    MinX(i) = 0.1*ones(1);
    MaxX(i) = 3*ones(1);
end
for i = 4:1:9
    MinX(i) = -3*ones(1);
    MaxX(i) = 3*ones(1);
end
%% 
for i = 10:1:12
    MinX(i) = -ones(1);
    MaxX(i) = ones(1);
end
 
%初始化种群
E = round(rand(Size,12*CodeL));
 
BsJ = 0;
 
%进化开始
for kg = 1:1:G
    time(kg) = kg ;   
    for s = 1:1:Size
        m = E(s,:);    %取出其中个体
        
        %把二进制表示的参数转化为实数
        for j = 1:1:12
            y(j) = 0;           
            mj = m((j-1)*CodeL + 1:1:j*CodeL);
            for i = 1:1:CodeL
                y(j) = y(j) + mj(i)*2^(i - 1);
            end
            f(s,j) = (MaxX(j) - MinX(j))*y(j)/1023 + MinX(j);
        end    
        p = f(s,:);     
        [p,BsJ] = RBF(p,BsJ);        
        BsJi(s) = BsJ;             %记录每个个体的总误差
    end
    
    %对误差排序,求出最好误差
    [OderJi,IndexJi] = sort(BsJi);
    BestJ(kg) = OderJi(1);
    BJ = BestJ(kg);
    Ji = BsJi + 1e-10;
    
    %对误差取倒数,求出适应度值
    fi = 1./Ji;    %适应度值
    [Oderfi,Indexfi] = sort(fi);
    Bestfi = Oderfi(Size);      %最佳适应度值
    BestS = E(Indexfi(Size),:);  

文件列表(点击上边下载按钮,如果是垃圾文件请在下面评价差评或者投诉):

结果/
code.zip
结果/matlab编程免疫遗传算法优化rbf源码程序.png

关键词: matlab编程 免疫遗传算法 优化rbf 源码程序

matlab源码下载排行

Top_arrow
回到顶部
联系方式| 版权声明| 招聘信息| 广告服务| 银行汇款| 法律顾问| 兼职技术| 付款方式| 关于我们|
网站客服网站客服 程序员兼职招聘 程序员兼职招聘 博客客服
沪 ICP 证 14049794 号
谷速代码 版权所有
Copyright © 1999-2014, GUSUCODE.COM, All Rights Reserved