神经网络辨识系统(二)

clc;close all;clear;

y(1)= 0;
k=1;
u(k)= 2*rand-1;
f(k)= 0.6*sin(pi*u(k))+0.3*sin(3*pi*u(k))+0.1*sin(5*pi*u(k));
y(k+1)= 0.3*y(k)+f(k);

for k=1:100
    u(k)= 2*rand-1;
    f(k)= 0.6*sin(pi*u(k))+0.3*sin(3*pi*u(k))+0.1*sin(5*pi*u(k));
    y(k+1)= 0.3*y(k)+0.6*(k-1)+f(k); 
end

uP= u(1:100);
uT= 0.6*sin(pi*uP)+0.3*sin(3*pi*uP)+0.1*sin(5*pi*uP);
netg= newff(minmax(uP),[20,20,1],{'tansig','tansig','purelin'},'trainlm','learngdm','msereg');
[netg,tr] = train(netg,uP,uT);

uQ= -1:0.1:1;
simu= sim(netg,uQ);
figure;
plot(uQ,0.6*sin(pi*uQ)+0.3*sin(3*pi*uQ)+0.1*sin(5*pi*uQ),'b',uQ,simu,'r');
legend('系统输出','系统辨识');

k=1;
u(k)= 2*rand-1;
f(k)= 0.6*sin(pi*u(k))+0.3*sin(3*pi*u(k))+0.1*sin(5*pi*u(k));
y(k+1)= 0.3*y(k)+f(k);

for k=2:100
    
  • 2
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值