• 大小:
    文件类型: .zip
    金币: 2
    下载: 1 次
    发布日期: 2022-01-01
  • 语言: Matlab
  • 标签: MATLAB  智能算法  

资源简介

《MATLAB智能算法30个案例分析》(第二版)(pdf+代码)

资源截图

代码片段和文件信息

clc
clear all
close all
%% 画出函数图
figure(1);
hold on;
lb=1;ub=2; %函数自变量范围【12】
ezplot(‘sin(10*pi*X)/X‘[lbub]);   %画出函数曲线
xlabel(‘自变量/X‘)
ylabel(‘函数值/Y‘)
%% 定义遗传算法参数
NIND=40;        %个体数目
MAXGEN=20;      %最大遗传代数
PRECI=20;       %变量的二进制位数
GGAP=0.95;      %代沟
px=0.7;         %交叉概率
pm=0.01;        %变异概率
trace=zeros(2MAXGEN);                        %寻优结果的初始值
FieldD=[PRECI;lb;ub;1;0;1;1];                      %区域描述器
Chrom=crtbp(NINDPRECI);                      %初始种群
%% 优化
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;                                             %代计数器增加
   %获取每代的最优解及其序号,Y为最优解I为个体的序号
   [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‘])

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-11-29 15:43  MATLAB_Codes\
     目录           0  2018-11-29 15:43  MATLAB_Codes\chapter1\
     文件        1909  2010-10-31 21:26  MATLAB_Codes\chapter1\example1.m
     文件        2113  2010-10-31 21:25  MATLAB_Codes\chapter1\example2.m
     文件      423860  2015-06-14 16:27  MATLAB_Codes\chapter1\Sheffield的遗传算法工具箱.rar
     目录           0  2018-11-29 15:43  MATLAB_Codes\chapter10\
     文件         422  2010-12-28 22:11  MATLAB_Codes\chapter10\data.mat
     文件        6048  2010-12-28 22:11  MATLAB_Codes\chapter10\main.m
     目录           0  2018-11-29 15:43  MATLAB_Codes\chapter11\
     文件        1067  2007-09-24 14:52  MATLAB_Codes\chapter11\aberranceJm.m
     文件        2329  2007-09-17 16:11  MATLAB_Codes\chapter11\across.m
     文件        1325  2007-09-17 16:05  MATLAB_Codes\chapter11\cal.m
     文件         555  2007-09-17 16:01  MATLAB_Codes\chapter11\calp.m
     文件        1276  2007-09-17 16:05  MATLAB_Codes\chapter11\caltime.m
     文件         178  2007-08-22 15:17  MATLAB_Codes\chapter11\Find.m
     文件        2816  2015-06-18 16:26  MATLAB_Codes\chapter11\main.m
     文件         487  2007-07-14 14:48  MATLAB_Codes\chapter11\plotRec.m
     文件        4708  2010-12-23 16:38  MATLAB_Codes\chapter11\ranking.M
     文件        5574  1998-04-22 10:44  MATLAB_Codes\chapter11\REINS.M
     文件        1090  1998-04-22 10:44  MATLAB_Codes\chapter11\RWS.M
     文件         527  2010-12-23 16:31  MATLAB_Codes\chapter11\scheduleData.mat
     文件        2401  1998-04-22 10:44  MATLAB_Codes\chapter11\SELECT.M
     文件         398  2007-09-24 14:03  MATLAB_Codes\chapter11\selectJm.m
     目录           0  2018-11-29 15:43  MATLAB_Codes\chapter12\
     文件        1669  2010-09-06 09:12  MATLAB_Codes\chapter12\bestselect.m
     文件        7910  2010-09-07 10:22  MATLAB_Codes\chapter12\centre.fig
     文件         479  2010-09-06 09:46  MATLAB_Codes\chapter12\concentration.m
     文件        1294  2010-09-06 14:49  MATLAB_Codes\chapter12\Cross.m
     文件        1046  2010-09-06 09:35  MATLAB_Codes\chapter12\draw.m
     文件         400  2010-09-06 09:41  MATLAB_Codes\chapter12\excellence.m
     文件        9007  2010-09-07 10:22  MATLAB_Codes\chapter12\figure.fig
............此处省略366个文件信息

评论

共有 条评论