ImageVerifierCode 换一换
格式:DOCX , 页数:141 ,大小:1.48MB ,
资源ID:5390252      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-5390252.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(MATLAB智能算法30个案例分析.docx)为本站会员(b****4)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

MATLAB智能算法30个案例分析.docx

1、MATLAB智能算法30个案例分析MATLAB 智能算法30个案例分析第 1 章 1、案例背景遗传算法(Genetic Algorithm,GA)是一种进化算法,其基本原理是仿效生物界中的“物竞天择、适者生存”的演化法则。遗传算法的做法是把问题参数编码为染色体,再利用迭代的方式进行选择、交叉以及变异等运算来交换种群中染色体的信息,最终生成符合优化目标的染色体。在遗传算法中,染色体对应的是数据或数组,通常是由一维的串结构数据来表示,串上各个位置对应基因的取值。基因组成的串就是染色体,或者叫基因型个体( Individuals)。一定数量的个体组成了群体(Population)。群体中个体的数目称

2、为群体大小(Population Size),也叫群体规模。而各个个体对环境的适应程度叫做适应度( Fitness)。2、案例目录:1.1理论基础1.1.1遗传算法概述1.编码2.初始群体的生成3.适应度评估4.选择5.交叉6.变异1.1.2设菲尔德遗传算法工具箱1.工具箱简介2.工具箱添加1.2案例背景1.2.1问题描述1.简单一元函数优化2.多元函数优化1.2.2解决思路及步骤1.3 MATLAB程序实现1.3.1工具箱结构1.3.2遗传算法中常用函数1.创建种群函数crtbp2.适应度计算函数ranking3.选择函数select4.交叉算子函数recombin5.变异算子函数mut6.

3、选择函数reins7.实用函数bs2rv8.实用函数rep1.3.3遗传算法工具箱应用举例1.简单一元函数优化2.多元函数优化1.4延伸阅读1.5参考文献3、主程序:1. 简单一元函数优化:clcclear allclose all% 画出函数图figure(1);hold on;lb=1;ub=2; %函数自变量范围【1,2】ezplot(sin(10*pi*X)/X,lb,ub); %画出函数曲线xlabel(自变量/X)ylabel(函数值/Y)% 定义遗传算法参数NIND=40; %个体数目MAXGEN=20; %最大遗传代数PRECI=20; %变量的二进制位数GGAP=0.95;

4、%代沟px=0.7; %交叉概率pm=0.01; %变异概率trace=zeros(2,MAXGEN); %寻优结果的初始值FieldD=PRECI;lb;ub;1;0;1;1; %区域描述器Chrom=crtbp(NIND,PRECI); %初始种群% 优化gen=0; %代计数器X=bs2rv(Chrom,FieldD); %计算初始种群的十进制转换ObjV=sin(10*pi*X)./X; %计算目标函数值while genMAXGENFitnV=ranking(ObjV); %分配适应度值SelCh=select(sus,Chrom,FitnV,GGAP); %选择SelCh=reco

5、mbin(xovsp,SelCh,px); %重组SelCh=mut(SelCh,pm); %变异X=bs2rv(SelCh,FieldD); %子代个体的十进制转换ObjVSel=sin(10*pi*X)./X; %计算子代的目标函数值Chrom,ObjV=reins(Chrom,SelCh,1,1,ObjV,ObjVSel); %重插入子代到父代,得到新种群X=bs2rv(Chrom,FieldD);gen=gen+1; %代计数器增加%获取每代的最优解及其序号,Y为最优解,I为个体的序号Y,I=min(ObjV);trace(1,gen)=X(I); %记下每代的最优值trace(2,g

6、en)=Y; %记下每代的最优值endplot(trace(1,:),trace(2,:),bo); %画出每代的最优点grid on;plot(X,ObjV,b*); %画出最后一代的种群hold off% 画进化图figure(2);plot(1:MAXGEN,trace(2,:);grid onxlabel(遗传代数)ylabel(解的变化)title(进化过程)bestY=trace(2,end);bestX=trace(1,end);fprintf(最优解:nX=,num2str(bestX),nY=,num2str(bestY),n)2. 多元函数优化clcclear allclo

7、se all% 画出函数图figure(1);lbx=-2;ubx=2; %函数自变量x范围【-2,2】lby=-2;uby=2; %函数自变量y范围【-2,2】ezmesh(y*sin(2*pi*x)+x*cos(2*pi*y),lbx,ubx,lby,uby,50); %画出函数曲线hold on;% 定义遗传算法参数NIND=40; %个体数目MAXGEN=50; %最大遗传代数PRECI=20; %变量的二进制位数GGAP=0.95; %代沟px=0.7; %交叉概率pm=0.01; %变异概率trace=zeros(3,MAXGEN); %寻优结果的初始值FieldD=PRECI P

8、RECI;lbx lby;ubx uby;1 1;0 0;1 1;1 1; %区域描述器Chrom=crtbp(NIND,PRECI*2); %初始种群% 优化gen=0; %代计数器XY=bs2rv(Chrom,FieldD); %计算初始种群的十进制转换X=XY(:,1);Y=XY(:,2);ObjV=Y.*sin(2*pi*X)+X.*cos(2*pi*Y); %计算目标函数值while gennewbestfitnessbestfitness=newbestfitness;bestchrom=(newbestindex,:);end(worestindex,:)=bestchrom;s

9、s(worestindex)=bestfitness;avgfitness=sum(ss)/sizepop;trace=trace;avgfitness bestfitness; %记录每一代进化中最好的适应度和平均适应度end%进化结束% 结果显示r c=size(trace);plot(1:r,trace(:,1),r-,1:r,trace(:,2),b-);title(函数值曲线 终止代数 num2str(maxgen);xlabel(进化代数);ylabel(函数值);legend(各代平均值,各代最佳值);disp(函数值 变量);% 窗口显示disp(bestfitness x);

10、第 3 章 基于遗传算法的BP神经网络优化算法1、案例背景BP网络是一类多层的前馈神经网络。它的名字源于在网络训练的过程中,调整网络的权值的算法是误差的反向传播的学习算法,即为BP学习算法。BP算法是Rumelhart等人在1986年提出来的。由于它的结构简单,可调整的参数多,训练算法也多,而且可操作性好,BP神经网络获得了非常广泛的应用。据统计,有80%90%的神经网络模型都是采用了BP网络或者是它的变形。BP网络是前向网络的核心部分,是神经网络中最精华、最完美的部分。BP神经网络虽然是人工神经网络中应用最广泛的算法,但是也存在着一些缺陷,例如:、学习收敛速度太慢;、不能保证收敛到全局最小点

11、;、网络结构不易确定。另外,网络结构、初始连接权值和阈值的选择对网络训练的影响很大,但是又无法准确获得,针对这些特点可以采用遗传算法对神经网络进行优化。本节以某型号拖拉机的齿轮箱为工程背景,介绍使用基于遗传算法的BP神经网络进行齿轮箱故障的诊断。2、案例目录:第3章基于遗传算法的BP神经网络优化算法3.1理论基础3.1.1 BP神经网络概述3.1.2遗传算法概述3.2案例背景3.2.1问题描述3.2.2解决思路及步骤 1.算法流程 2.神经网络算法实现 3.遗传算法实现3.3 MATLAB程序实现3.3.1神经网络算法3.3.2遗传算法主函数3.3.3比较使用遗传算法前后的差别3.3.4结果分

12、析3.4延伸阅读3.5参考文献3、主程序:clcclear allclose all% 加载神经网络的训练样本 测试样本每列一个样本 输入P 输出T%样本数据就是前面问题描述中列出的数据load data% 初始隐层神经元个数hiddennum=31;% 输入向量的最大值和最小值threshold=0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1;inputnum=size(P,1); % 输入层神经元个数outputnum=size(T,1); % 输出层神经元个数w1num=inputnum*hiddennum; % 输

13、入层到隐层的权值个数w2num=outputnum*hiddennum;% 隐层到输出层的权值个数N=w1num+hiddennum+w2num+outputnum; %待优化的变量的个数% 定义遗传算法参数NIND=40; %个体数目MAXGEN=50; %最大遗传代数PRECI=10; %变量的二进制位数GGAP=0.95; %代沟px=0.7; %交叉概率pm=0.01; %变异概率trace=zeros(N+1,MAXGEN); %寻优结果的初始值FieldD=repmat(PRECI,1,N);repmat(-0.5;0.5,1,N);repmat(1;0;1;1,1,N); %区域

14、描述器Chrom=crtbp(NIND,PRECI*N); %初始种群% 优化gen=0; %代计数器X=bs2rv(Chrom,FieldD); %计算初始种群的十进制转换ObjV=Objfun(X,P,T,hiddennum,P_test,T_test); %计算目标函数值while gen7104129148135236111总距离:71.1144优化后的路线图:图4.2最优解路线图最优解路线:54314211091181371265总距离:29.3405优化迭代过程:图4.3 遗传算法进化过程图4、主程序:clearclcclose allload CityPosition1;%个城市坐标位置NIND=100; %种群大小MAXGEN=200;Pc=0.9; %交叉概率Pm=0.05; %变异概率GGAP=0.9; %代沟(Generation gap)D=Distanse(X); %生

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2