智能控制(神经网络)作业
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 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(2,6); % value of w1,initially by random w1_1=w1;w1_2=w1;
w2=rands(6,1); % value of w2,initially by random w2_1=w2;w2_2=w2_1;
dw1=0*w1;
x=[0,0]';
u_1=0;
y_1=0;
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]';
ts=0.001;
for k=1:1:1000
time(k)=k*ts;
u(k)=0.5*sin(3*2*pi*k*ts);
y(k)=(u_1-0.9*y_1)/(1+y_1^2);
for j=1:1:6
I(j)=x'*w1(:,j);
Iout(j)=1/(1+exp(-I(j)));
end
yn(k)=w2'*Iout; %output of network
e(k)=y(k)-yn(k); % error calculation
w2=w2_1+(xite*e(k))*Iout+alfa*(w2_1-w2_2); % rectify of w2 for j=1:1:6
FI(j)=exp(-I(j))/(1+exp(-I(j))^2);
end
for i=1:1:2
for j=1:1:6
dw1(i,j)=e(k)*xite*FI(j)*w2(j)*x(i); % dw1 calculation end
end
w1=w1_1+dw1+alfa*(w1_1-w1_2); % rectify of w1 % jacobian information
yu=0;
for j=1:1:6
yu=yu+w2(j)*w1(1,j)*FI(j);
end
dyu(k)=yu;
x(1)=u(k);
x(2)=y(k);
w1_2=w1_1;w1_1=w1;
w2_2=w2_1;w2_1=w2;
u_1=u(k);
y_1=y(k);
end
figure(1);
plot(time,y,'r',time,yn,'b');
xlabel('times');ylabel('y and yn');
figure(2);
plot(time,y-yn,'r');
xlabel('times');ylabel('error');
figure(3);
plot(time,dyu);
xlabel('times');ylabel('dyu');
运行结果为:
(二)采用RBF 网络仿真
网路结构为2-4-1,采样时间1ms ,输入信号)2sin(5.0)(t k u ⨯=π,权值的初值随机取值,05.0,05.0==αη,高斯基函数初值T j C ]5.0,5.0[=,
T B ]5.1,5.1,5.1,5.1[=。
仿真m 文件程序如下:
%RBF simulation
clear all
clear all
alfa=0.05;
xite=0.5;
x=[0,0]';
b=1.5*ones(4,1);
c=0.5*ones(2,4);
w=rands(4,1);
w_1=w;w_2=w_1;
c_1=c;c_2=c_1;
b_1=b;b_2=b_1
d_w=0*w;
d_b=0*b;
y_1=0;
ts=0.001;
for k=1:1:2000;
time(k)=k*ts;
u(k)=0.5*sin(1*2*pi*k*ts);
y(k)=(u(k)-0.9*y_1)/(1+y_1^2);
x(1)=u(k);
x(2)=y_1;
for j=1:1:4
h(j)=exp(-norm(x-c(:,j))^2/(2*b(j)*b(j)));
end
ym(k)=w'*h';
em(k)=y(k)-ym(k);
for j=1:1:4
d_w(j)=xite*em(k)*h(j);
d_b(j)=xite*em(k)*w(j)*h(j)*(b(j)^-3)*norm(x-c(:,j))^2;
for i=1:1:2
d_c(i,j)=xite*em(k)*w(j)*h(j)*(x(i)-c(i,j))*(b(j)^-2); end
end
w=w_1+d_w+alfa*(w_1-w_1);
b=b_1+d_b+alfa*(b_1-b_2);
c=c_1+d_c+alfa*(c_1-c_2);
% Jacobian information
yu=0;
for j=1:1:4
yu=yu+w(j)*h(j)*(c(1,j)-x(1))/b(j)^2;
end
dyu(k)=yu;
y_1=y(k);
w_2=w_1;
w_1=w;