⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 example4_6.m

📁 BP神经网络基于MATLAB实际实现例子
💻 M
字号:
%定义输入信号并绘出其曲线
time1=0:0.005:4;
time2=4.005:0.005:6;
time=[time1 time2];
X=sin(sin(time*4).*time*8);
plot(time,X);
title('输入信号X');
xlabel('时间');
ylabel('输入信号');
%定义系统输出,绘出曲线
steps1=length(time1);
[T1,state]=filter([1 -0.5],1,X(1:steps1));
steps2=length(time2);
T2=filter([0.9 -0.6],1,X((1:steps2) + steps1),state);
T=[T1 T2];
figure;
plot(time,T);
title('系统输出T');
xlabel('时间');
ylabel('系统输出');
%将系统输入和输出转换成序列信号
T=con2seq(T);
P=con2seq(X);
%建立网络
lr=0.5;
delays=[0 1];
net=newlin(minmax(cat(2,P{:})),1,delays,lr);
%训练网络
[net,a,e]=adapt(net,P,T);
%绘出网络输出a与系统输出T
figure;
plot(time,cat(2,a{:}),'+',time,cat(2,T{:}),'--');
title('网络输出a与系统输出T');
xlabel('时间');
ylabel('系统输出--  网络输出+');
%绘出误差曲线
figure;
plot(time,cat(2,e{:}));
title('输出误差');
xlabel('时间');
ylabel('误差');

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -