第八讲基于群体智能的参数辨识.ppt

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第八讲基于群体智能的参数辨识

基于群体智能算法的参数辨识;遗传算法(Genetic Algorithm);;优化目标目标函数?适应度函数;遗传编码;选择方法;交叉操作(二进制);交叉操作(实值);变异(二进制);变异(实数);?;clc; clear all; close all; Ge=100; %代数 m=80; %一次选择个体数目 Pc=0.9; %交叉概率 Pm=0.05; %变异概率 ts=0.5; %采样周期 %用于记忆最优个体对应适应值 %对应参数值 bestQQ=10000; k_s=0; T1_s=0; T2_s=0; %被拟合对象参数 st=70; lp=st/ts; yout0=0; yout=0;;for kk=1:Ge x1l=3.8; x1r=4.2; %k x2l=4; x2r=6; %T1 x3l=7; x3r=9; %T2 for i=1:m %产生初始种群 pop1(i)=rand(1)*(x1r-x1l)+x1l; pop2(i)=rand(1)*(x2r-x2l)+x2l; pop3(i)=rand(1)*(x3r-x3l)+x3l; end ;%计算适应度,由于是直接求最小值问题,所以直接将Q取为个体的适应度 sumQQ=sum(QQ); cfitness=QQ/sumQQ; for i=1:m cfitness(i)=(1-cfitness(i))/(m-1); end % 根据适应度大小选择下一代,(比例选择) for i=2:m cfitness(i)=cfitness(i-1)+cfitness(i); end ;for i=1:m %交叉运算 p=rand(1); index1(i)=floor(rand(1)*(m-1))+1; index2(i)=floor(rand(1)*(m-1))+1; index3(i)=floor(rand(1)*(m-1))+1; if (pPc) A=rand(1); pop1(i)=pop1(i)*A+(1-A)*pop1(index1(i)); B=rand(1); pop2(i)=pop2(i)*B+(1-B)*pop2(index2(i)); C=rand(1); pop3(i)=pop3(i)*C+(1-C)*pop3(index3(i)); end end; %变异运算 for i=1:m p=rand(1); if pPm pop1(i)=pop1(i)+Leng1*(rand(1)-0.5)*(x1r-x1l); pop2(i)=pop2(i)+Leng2*(rand(1)-0.5)*(x2r-x2l); pop3(i)=pop3(i)+Leng3*(rand(1)-0.5)*(x3r-x3l); if(pop1(i)x1r) pop1(i)=x1r; end if(pop1(i)x1l) pop1(i)=x1l; end if(pop2(i)x2r) pop2(i)=x2r; end if(pop2(i)x2l) pop2(i)=x2l; end if(pop3(i)x3r) pop3(i)=x3r; end if(pop3(i)x3l) pop3(i)=x3l; end end end ;%循环结束,求出最优个体输出 a1=exp(-ts/T1); b1=1-a1; a2=exp(-ts/T2); b2=1-a2; x=[0,0]; yout=0; for j=1:lp x(1)=a1*

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档