2.1 案例背景
在工程应用中经常会遇到一些复杂的非线性系统,这些系统状态方程复杂,难以用数学方法准确建模。在这种情况下,可以建立BP神经网络表达这些非线性系统。该方法把未知系统看成是一个黑箱,首先用系统输入输出数据训练BP神经网络,使网络能够表达该未知函数,然后用训练好的BP神经网络预测系统输出。
本章拟合的非线性函数为\[y = {x_1}^2 + {x_2}^2\]该函数的图形如下图所示。
t=-5:0.1:5;
[x1,x2] =meshgrid(t);
y=x1.^2+x2.^2;
surfc(x1,x2,y);
shading interp
xlabel(‘x1‘);
ylabel(‘x2‘);
zlabel(‘y‘);
title(‘非线性函数‘);
2.2 模型建立
神经网络结构:2-5-1
从非线性函数中随机得到2000组输入输出数据,从中随机选择1900 组作为训练数据,用于网络训练,100组作为测试数据,用于测试网络的拟合性能。
2.3 MATLAB实现
2.3.1 BP神经网络工具箱函数
newff
BP神经网络参数设置函数。
net=newff(P, T, S, TF, BTF, BLF, PF, IPF, OPF, DD