一、实验题目:最小二乘法在系统辨识中的应用二、实验目的 1
掌握系统辨识的理论、方法及应用 2
熟练 Matlab 下最小二乘法编程 3
掌握 M 序列产生方法三、实验设备1、硬件设备:计算机配置,P4、32 位 CPU、512M 内存2、软件设备: windows xp 操作系统 、matlab6
5 软件包四、实验原理最小二乘理论是有高斯(K
Gauss)在 1795 年提出:“未知量的最大可能值是这样一个数值,它使各次实际观测值和计算值之间的差值的平方乘以度量其精度的数值以后的和最小
单输入单输出离散时间动态系统差分方程为:其中 Z(k)为输出变量,u(k)为输入变量,e(k)为偏差
上式可以表示为各参数用矩阵表示(1) (2)其中 l 为所需要采集的点数
(3) (4)Z=H*+E,E=Z-H*,根据最小二乘理论 E 必须最小对上式进行求导,推出 根据表达式带入(1)(2)(4)即可求出 a1
五、实验代码以及实验结果 m=20; %置M序列总长度y1=1;y2=1;y3=1;y4=0;for i=1:m x1=xor(y3,y4);%异或运算x2=y1;x3=y2;x4=y3; if y4==0; u(i)=1; else u(i)=-1; endy1=x1;y2=x2;y3=x3;y4=x4;endz=zeros(21,1);%定义输出观测值的长度21行*1列的0矩阵ZL=zeros(19,1);%定义输出观测值的长度19行*1列的0矩阵for k=3:21 z(k)=-1
5*z(k-1)-z(k-2)+u(k-1)+3*u(k-2) ;%用理想输出值作为观测值ZL(k-2)=z(k);end%subplot(3,1,1) %画三行一列图形窗口中的第一个图形%stem(u) %画出输入信号u的图形%subplot(3