• 大小: 421KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-05-19
  • 语言: Matlab
  • 标签: MATLAB  

资源简介

利用遗传算法计算一元函数的极值 2个文件,包括一个工具箱,1个.m文件

资源截图

代码片段和文件信息

clc
clear all
close all

%%画出函数图
figure(1);
hold on;
lb=1;
ub=2;
ezplot(‘sin(10*pi*X)/X‘[lbub]);
xlabel(‘自变量/X‘);
ylabel(‘自变量/Y‘);

%%定义遗传算法参数
NIND=40;      %种群大小
MAXGEN=20;    %最大遗传代数
PRECT=20;     %个体长度
GGAP=0.95;    %代沟
px=0.7;       %交叉概率
pm=0.01;       %变异概率

trace=zeros(2MAXGEN);   %寻优结果的初始值
FieldD=[PRECT;lb;ub;1;0;1;1];  %区域描述器
Chrom=CRTBP(NINDPRECT);   %创建任意离散随机种群
%%优化
gen=0;
X=BS2RV(ChromFieldD);
ObjV=sin(10*pi*X)./X;
while gen    FitnV=RANKING(ObjV);
    SelCh=SELECT(‘sus‘ChromFitnVGGAP);
     SelCh=RECOMBIN(‘xovsp‘ SelChpx);
    SelCh=MUT( SelChpm);
    X=BS2RV( SelChFieldD);
    ObjVSel=sin(10*pi*X)./X;
    [ChromObjV]=REINS(ChromSelCh11ObjVObjVSel);
    X=BS2RV(ChromFieldD);
    gen=gen+1;
    [YI]=min(ObjV);
    trace(1gen)=X(I);
     trace(2gen)=Y;
end
plot(trace(1:)trace(2:)‘bo‘);
grid on;
plot(XObjV‘b*‘);
hold off
%%画进化图
figure(2);
plot(1:MAXGENtrace(2:));
grid on
xlabel(‘遗传代数‘)
ylabel(‘解的变化‘)
title(‘进化过程‘)
bestY=trace(2end);
bestX=trace(1end);
fprintf([‘最优解:\nX=‘num2str(bestX)‘\nY=‘num2str(bestY)‘\n‘]);

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       3217  1998-04-22 10:44  利用遗传算法计算一元函数的极值\gatbx\BS2RV.m

     文件       1835  1998-04-22 10:44  利用遗传算法计算一元函数的极值\gatbx\CONTENTS.m

     文件       1168  1998-04-22 10:44  利用遗传算法计算一元函数的极值\gatbx\crtbase.m

     文件       2187  1998-04-22 10:44  利用遗传算法计算一元函数的极值\gatbx\CRTBP.m

     文件       2091  2005-12-04 10:21  利用遗传算法计算一元函数的极值\gatbx\CRTRP.M

     文件      12501  2005-11-28 15:21  利用遗传算法计算一元函数的极值\gatbx\DOC\GA TOOLBOX FREQUENTLY ASKED QUESTIONS.txt

     文件        273  2005-12-02 09:07  利用遗传算法计算一元函数的极值\gatbx\DOC\GATBXA0.LOG

     文件      16715  2005-12-02 09:07  利用遗传算法计算一元函数的极值\gatbx\DOC\GATBXA0.PDF

     文件      53484  1998-04-22 11:14  利用遗传算法计算一元函数的极值\gatbx\DOC\GATBXA0.PS

     文件        458  2005-12-02 09:10  利用遗传算法计算一元函数的极值\gatbx\DOC\GATBXA1.LOG

     文件     109101  2005-12-02 09:10  利用遗传算法计算一元函数的极值\gatbx\DOC\GATBXA1.PDF

     文件     204230  1998-04-22 11:14  利用遗传算法计算一元函数的极值\gatbx\DOC\GATBXA1.PS

     文件        273  2005-12-02 09:16  利用遗传算法计算一元函数的极值\gatbx\DOC\GATBXA2.LOG

     文件     101958  2005-12-02 09:16  利用遗传算法计算一元函数的极值\gatbx\DOC\GATBXA2.PDF

     文件     200234  1998-04-22 11:14  利用遗传算法计算一元函数的极值\gatbx\DOC\GATBXA2.PS

     文件      18351  2005-11-28 15:25  利用遗传算法计算一元函数的极值\gatbx\DOC\gpl.txt

     文件       1525  2005-11-28 15:25  利用遗传算法计算一元函数的极值\gatbx\DOC\readme.txt

     文件      98687  2005-11-28 16:18  利用遗传算法计算一元函数的极值\gatbx\DOC\The MathWorks - 1-18GTU Why do I get an error in MATLAB 6_0 (R12) where I got a warning in R11 with reference to uninitialized variables.mht

     文件       7205  1998-04-22 10:44  利用遗传算法计算一元函数的极值\gatbx\MIGRATE.m

     文件       4019  1998-04-22 10:44  利用遗传算法计算一元函数的极值\gatbx\MPGA.m

     文件       1609  1998-04-22 10:44  利用遗传算法计算一元函数的极值\gatbx\MUT.m

     文件       3437  1998-04-22 10:44  利用遗传算法计算一元函数的极值\gatbx\MUTATE.M

     文件       4943  1998-04-22 10:44  利用遗传算法计算一元函数的极值\gatbx\MUTBGA.M

     文件       2629  1998-04-22 10:44  利用遗传算法计算一元函数的极值\gatbx\OBJFUN1.M

     文件       2559  1998-04-22 10:44  利用遗传算法计算一元函数的极值\gatbx\OBJHARV.M

     文件       4709  1998-04-22 10:44  利用遗传算法计算一元函数的极值\gatbx\RANKING.m

     文件       1825  1998-04-22 10:44  利用遗传算法计算一元函数的极值\gatbx\RECDIS.M

     文件       1895  1998-04-22 10:44  利用遗传算法计算一元函数的极值\gatbx\RECINT.M

     文件       1953  1998-04-22 10:44  利用遗传算法计算一元函数的极值\gatbx\RECLIN.M

     文件       4852  1998-04-22 10:44  利用遗传算法计算一元函数的极值\gatbx\RECMUT.M

............此处省略51个文件信息

评论

共有 条评论