智能控制答案

上传人:ni****g 文档编号:560491015 上传时间:2023-06-12 格式:DOCX 页数:7 大小:15.64KB
返回 下载 相关 举报
智能控制答案_第1页
第1页 / 共7页
智能控制答案_第2页
第2页 / 共7页
智能控制答案_第3页
第3页 / 共7页
智能控制答案_第4页
第4页 / 共7页
智能控制答案_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《智能控制答案》由会员分享,可在线阅读,更多相关《智能控制答案(7页珍藏版)》请在金锄头文库上搜索。

1、智能控制作业1.已知某一炉温控制系统,要求温度保持着600C恒定。针对该控制系统有以下控制经 验。(1)若炉温低于600C,则升压;低得越多升压越高。(2)若炉温高于600C,则降压;高得越多降压越低。(3)若炉温等于600C,则保持电压不变。设模糊控制器为一维控制器,输入语言变量为误差,输出为控制电压。输入、输出变 量的量化等级为7级,取5个模糊集。试设计隶属度函数误差变化划分表,控制电压变化划 分表和模糊控制规则表。解:(1)确定变量定义理想温度为600C,实际炉温为匚则温度差为:e=600-T将温度差e作为输入变量。(2)输入量和输出量的模糊化将偏差e分成5个模糊集:负大(NB),负小(

2、NS),零(ZO),正小(PS),正大(PB)。将偏差e的变化分成7个等级:-3,-2,-1,0,+1,+2, +3,从而得到温 度变化模糊表如表1所示:表1-温度变化e划分表隶属度变化等级-3-2-10+1+2+3模糊集PB000000.51PS000010.50ZO000.510.500NS00.510000NB10.500000控制电压u也分成5个模糊集:负大(NB),负小(NS),零(ZO),正小(PS), 正大(PB)。将偏差u的变化分成7个等级:-3,-2, -1,0,+1,+2, +3,而得到 电压变化模糊表如表2示:表2-电压变化e划分表隶属度变化等级-3-2-10+1+2+3

3、模糊集PB000000.51PS000010.50ZO000.510.500NS00.510000NB10.500000MATLAB仿真程序如下: %Fuzzy Control for water tank clear all;close all;a=newfis(fuzz_tank);a=addvar(a,input,e,-3,3);%Parameter ea=addmf(a,input,1,NB,zmf,-3,-1);a=addmf(a,input,1,NS,trimf,-3,-1,1);a=addmf(a,input,1,Z,trimf,-2,0,2);a=addmf(a,input,1

4、,PS,trimf,-1,1,3);a=addmf(a,input,1,PB,smf,1,3);a=addvar(a,output,u,-4,4);%Parameter ua=addmf(a,output,1,NB,zmf,-4,-1);a=addmf(a,output,1,NS,trimf,-4,-2,1);a=addmf(a,output,1,Z,trimf,-2,0,2);a=addmf(a,output,1,PS,trimf,-1,2,4);a=addmf(a,output,1,PB,smf,1,4);rulelist=1 1 1 1;%Edit rule base2 2 1 1;3

5、3 1 1;4 4 1 1;5 5 1 1;a=addrule(a,rulelist);a1=setfis(a,DefuzzMethod,mom); %Defuzzywritefis(a1,tank);%Save to fuzzy file tank.fisa2=readfis(tank);figure(1);plotfis(a2);figure(2);plotmf(a,input,1);figure(3);plotmf(a,output,1);flag=1;if flag=1showrule(a)%Show fuzzy rule baseruleview(tank);%Dynamic Sim

6、ulationenddisp();disp( fuzzy controller table:e=-3,+3,u=-4,+4);disp();for i=1:1:7e(i)=i-4;Ulist(i)=evalfis(e(i),a2);endUlist=round(Ulist)e=-3;% Erroru=evalfis(e,a2) %Using fuzzy inference2.用高级语言(C、VC+、MATLAB等)编程实现用BP神经网络实现下列函数的 非线性映射:f (x) = 1 log x, 1 x 10x 10分析误差曲线及网络的泛化能力。解:clear all;close all;xi

7、te=0.50;alfa=0.05;w2=rands(6,1);w2_1=w2;w2_2=w2_1;w1=rands(2,6);w1_1=w1;w1_2=w1;dw1=0*w1;x=0,0;u_1=0;y_1=0;I=0,0,0,0,0,0;Iout=0,0,0,0,0,0;FI=0,0,0,0,0,0;ts=0.001;for k=1:1:10000time(k)=k*ts;u(k)=k*ts;y(k)=u_1A(-1)*log10(u_1);for j=1:1:6I(j)=x*w1(:,j);Iout(j)=1/(1+exp(-I(j);endyn(k)=w2*Iout;% Output

8、of NNI networkse(k)=y(k)-yn(k);% Error calculationw2=w2_1+(xite*e(k)*Iout+alfa*(w2_1-w2_2);for j=1:1:6FI(j)=exp(-I(j) )/(1+exp(-I(j)尸2;end for i=1:1:2dw1(i,j)=e(k)*xite*FI(j)*w2(j)*x(i);endendw1=w1_1+dw1+alfa*(w1_1-w1_2);yu=0;for j=1:1:6yu=yu+w2(j)*w1(1,j)*F I(j);enddyu(k)=yu;x(1)=u(k);x(2)=y(k);w1_

9、2=w1_1;w1_1=w1;w2_2=w2_1;w2_1=w2;u_1=u(k);y_1=y(k);endfigure(1);plot(time,y,r,time,yn,b);xlabel(times);ylabel(y and yn);3.已知优化函数为:X 6f (x) = 4X2 - 2.1x4 + 亏 + x X - 4X2 + 4X4, x | tempfor j=n:1:20TempE(i,j)=E(i+1,j);TempE(i+1,j)=E(i,j);endendendTempE(Size,:)=BestS;E=TempE;%pm=0.001;%pm=0.001-1:1:Size*(0.001)/Size; %Bigger fi, smaller Pm%pm=0.0; %No mutationpm=0.1;%Big mutationfor i=1:1:Sizefor j=1:1:2*CodeLtemp=rand;if pmtemp%Mutation Conditionif TempE(i,j)=0TempE(i,j)=1;elseTempE(i,j)=0;endendendendTempE(Size,:)=BestS;E=TempE;endMax_Value=BestfiBestSx1x2

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号