智能控制(神经网络)-作业

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

智能控制作业

学生姓名: 学 号: 专业班级:

7-2 采用BP 网路、RBF 网路、DRNN 网路逼近线性对象

2)

1(1)1(9.0)1()(-+-⨯--=k y k y k u k y ,分别进行matlab 仿真。 (一)采用BP 网络仿真

网络结构为2-6-1。采样时间1ms ,输入信号)6sin(5.0)(t k u ⨯=π,权值21,W W 的初值随机取值,05.0,05.0==αη。

仿真m 文件程序为:

%BP simulation

clear all;

clear all;

xite=0.5;

alfa=0.5;

w1=rands(1996,6); % value of w1,initially by random w1_1=w1;w1_2=w1;

w2=rands(6,1996); % value of w2,initially by random w2_1=w2;w2_2=w2_1;

dw1=0*w1;

I=[0,0,0,0,0,0]'; % input of yinhanceng cell

Iout=[0,0,0,0,0,0]'; % output of yinhanceng cell

FI=[0,0,0,0,0,0]';

OUT=2;

K=0;

E=1.0;

NS=3;

While E>=le-020

k=k+1;

times(k)=k;

for s=1:1;NS

x=xs(s,:);

for j=1:1:6

I(j)=x*w1(:,j);

Iout(j)=1/(1+exp(-I(j)));

end

y1=w2’*Iout;

y1=y1’;

e1=0;

y=ys(s,:);

for l=1:1:OUT

e1=e1+0.5*(y(1)-y1(1))^2;

end

es(s)=el;

E=0;

If s==NS

For s=1:1:NS

E=E+es(s);

end

end

ey=y-y1;

w2=w2_1+xite*Iout*ey+alfa*(w2_1-w2_2);

for j=1:1:6

S=1/(1+exp(-I(j)));

FI(j)=S*(1-S);

end

for i=1:1;1996

forj=1:1:6

dw1(i,j)=xite*FI(j)*x(i)*(ey(1)*w2(j,1)+ey(2)*w2(j,2));

end

end

w1=w1_1+dw1+alfa*(w1_1-w1_2);

w1_2=w1_1;w1_1=w1;

w2_2=w2_1;w2_1=w2;

end

Ek(k)=E;

End

Figure(1);

plot(times,EK,’r ’);

xlabel('k');ylabel('E');

save wfile w1 w2;

(二)DRNN 网路仿真

采样时间1ms ,输入信号)4sin(5.0)(t k u ⨯=π,权值I O D W W W ,,的初值随机取值,取35.0,35.0,35.0===I D O ηηη。

仿真m 文件程序为:

%DRNN simulation

clear all;

clear all;

wd=rands(7,1);

wo=rands(7,1);

wi=rands(3,7);

xj=zeros(7,1);

xj_1=xj;

u_1=0;y_1=0;

xitei=0.35;

xited=0.35;

xiteo=0.35;

ts=0.001;

for k=1:1:1000

time(k)=k*ts;

u(k)=0.5*sin(4*pi*k*ts);

y(k)=(u_1-0.9*y_1)/(1+y_1^2);

Ini=[u_1,y_1,1]';

for j=1:1:7

sj(j)=Ini'*wi(:,j)+wd(j)*xj(j);

end

for j=1:1:7

xj(j)=(1-exp(-sj(j)))/(1+exp(-sj(j)));

end

Pj=0*xj;

for j=1:1:7

Pj=wo(j)*(1+xj(j))*(1-xj(j))*xj_1(j);

end

Qij=0*wi;

for j=1:1:7

for i=1:1:3

Qij(i,j)=wo(j)*(1+xj(j))*(1-xj(j))*Ini(i); end

end

ymk=0;

for j=1:1:7

ymk=ymk+xj(j)*wo(j);

end

ym(k)=ymk;

e(k)=y(k)-ym(k);

wo=wo+xiteo*e(k)*xj;

wd=wd+xited*e(k)*Pj;

wi=wi+xitei*e(k)*Qij;

xj_1=xj;

u_1=u(k);

y_1=y(k);

end

figure(1);

plot(time,y,'r',time,ym,'b');

xlabel('time/s');ylabel('y and ym'); figure(2);

plot(time,y-ym,'r');

xlabel('time/s');ylabel('error');

仿真结果为:

相关文档
最新文档