- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于遗传算法的模糊控制器优化设计
基于遗传算法的模糊控制器优化设计思想:
通常FLC是基于专家经验和知识进行设计的,但很多情况下专家经验不可得。这时可采用遗传算法来优化模糊控制规则,进而优化控制系统,使系统达到理想输出。
模糊PID控制系统结构图
基于遗传算法的模糊PID控制系统结构图
设计思想
第一步:初始化各项参数,设定种群规模(随机选择10条染色体),遗传代数(3代)。
被控对象的传递函数为:。
第二步:当遗传代数为1时,将各条染色体代入系统,计算系统输出,染色体适配值。
将具有最大适配值的染色体取出,将具有最大适配值染色体运算所得的系统输出取出。将10条染色体传入第二代,按适配值大小,交叉概率,变异概率进行复制,交叉和变异,从而产生第二代染色体。
第三步:将新产生的染色体重新代入系统进行第二代计算。同理进行第三代染色体的计算。
第四步:进行完三代染色体的系统输出,绘制每代中具有最大适配值时的系统输出图像。
三:程序
clc
close all
T=0.1; %控制系统采样时间
TM=1000; %控制系统运行次数
time=zeros(1,TM);
%E=zeros(1,TM);
kp=0.2;ki=0.002;kd=10;
tr=0;
%定义初始种群参数
N=10; %初始种群数目
M=3; %遗传代数
varb=3; %语言值个数
yout1=zeros(N,TM);
yout=zeros(M,TM);%存放
fitness=zeros(1,N);
%************************************************
%产生初始种群W
n=varb^2;
n1=varb^2+varb*2; %每条染色体的长度
mfpara1=randint(N,n,[1,varb]); %rule table
mfpara2=-1*rand(N,varb); %mfpara2(1),mfpara2(2),mfpara2(3)分别为an,bn,cn
mfpara3=rand(N,varb); %mfpara3(1),mfpara3(2),mfpara3(3)分别为ap,bp,cp
init=[mfpara1,mfpara2,mfpara3];
%离散化被控对象
num=[1];
den=conv(conv([1,0.1],[1,0.2]),[1,0.7]);
g=tf(num,den);
yn=c2d(g,T,zoh);
[tt,ff]=tfdata(yn,v);
%循环开始
p=1;
while p=M %循环代数从1到3
q=1
while q=N %染色体数从1到10
y=zeros(1,TM);
u=zeros(1,TM);
er=zeros(1,TM);
yr=zeros(1,TM);
e1=0;e2=0;E1=0;
y1=0;y2=0;y3=0;
u1=0;u2=0;u3=0;
e=zeros(1,TM);
E=zeros(1,TM);
for k=1:TM %运行系统
yr(k)=1;
y(k)=-ff(2)*y1-ff(3)*y2-ff(4)*y3+tt(2)*u1+tt(3)*u2+tt(4)*u3;
y3=y2;y2=y1;y1=y(k);
u3=u2;u2=u1;
e(k)=yr(k)-y(k);
er(k)=(e(k)-e1)/T;
detae=fu_zzy(init(q,:),e(k),er(k),varb); %调用模糊控制规则程序
E(k)=e(k)+detae;
u(k)=kp*E(k)+ki*sum(E)+kd*(E(k)-E1);
E1=E(k);
u1=u(k);
e2=e1;e1=e(k);
end
for k=1:TM
if abs(y(k)-1)=0.1
tr=k*T; %上升时间tr
break
end
end
ymax=0;
for k=1:TM
if ymaxy(k)
ymax=y(k); %最大输出ymax
end
end
for k=1:TM
您可能关注的文档
最近下载
- 2025.6.27--12、博微配电网工程设计软件使用手册.pdf VIP
- 阿里巴巴集团股权结构分析.doc VIP
- 锡安长老纪要1-24本.pdf VIP
- YYT 0735.1-2009 麻醉和呼吸设备 湿化人体呼吸气体的热湿交换器(HME) 第1部分:用于最小潮气量为250mL的HME.docx VIP
- 汽车仪表盘图标全解.docx VIP
- 阿里巴巴上市后的股权结构(阿里巴巴最新股权结构).doc VIP
- 氧气、乙炔管理制度.docx VIP
- 上海众辰NZ100变频器用户使用说明书调试手册.pdf
- 伴有肺炎的肺脓肿多学科决策模式中国专家共识(2025版).docx VIP
- fwd系列高静压风机盘管机组-特灵空调.pdf VIP
原创力文档


文档评论(0)