系统辨识实验报告30288
系统辨识实验报告

i=1:800; figure(1) plot(i,Theta(1,:),i,Theta(2,:),i,Theta(3,:),i,Theta(4,:),i,Theta(5,:),i,T title('待估参数过渡过程') figure(2) plot(i,Pstore(1,:),i,Pstore(2,:),i,Pstore(3,:),i,Pstore(4,:),i,Pstore(5,: title('估计方差变化过程')
最小二乘法建模:
二、三次实验 本次实验要完成的内容: 1.参照index2,设计对象,从workspace空间获取数据,取二阶,三阶 对象实现最小二乘法的一次完成算法和最小二乘法的递推算法(LS and RLS); 2.对设计好的对象,在时间为200-300之间,设计一个阶跃扰动,用最 小二乘法和带遗忘因子的最小二乘法实现,对这两种算法的特点进行说 明; 实验内容结果与程序代码: 利用LS和RLS得到的二阶,三阶参数 算法 阶次 A1 A2 A3 B0 B1 B2 B3 LS 二阶 -0.78420.1373 -0.00360.5668 0.3157 RLS 二阶 -0.78240.1373 -0.00360.5668 0.3157 LS 三阶 -0.4381-0.12280.0407 -0.00780.5652 0.5106 0.1160
测试对象流程图 实验结果为:
2、加入噪声干扰 搭建对象
实验结果:
加入噪声干扰之后水箱输出不平稳,有波动。
实验二:相关分析法 搭建对象:
处理程序: for i=1:15 m(i,:)=UY(32-i:46-i,1);
end y=UY(31:45,2); gg=ones(15)+eye(15); g=1/(25*16*2)*gg*m*y; plot(g); hold on; stem(g); 实验结果: 相关分析法
系统辨识实验报告

系统辨识仿真实验根据系统已知的输入输出测量值(200个),进行最小二乘递推辨识(三阶)。
解:假设33221111)(----+++=z a z a z a z A221101)(---++=z b z b b z B 选择数据输入输出为:19510.26463 28.59951801 19621.976 34.33532814 19742.25396 35.76927848 20026.74433 38.3185258 19956.81167 40.23046349 19678.31876 44.21366407 19823.0536 45.32895813 19903.22043 47.08156767 20017.90925 47.08156767 20068.86682 47.71888023 20330.54353 56.00393622 20235.55444 61.73974343 20371.11527 61.42108715 20267.92301 63.49235151 20354.37094 63.65167965 20313.237 65.08563145 20378.58646 66.83823953 20430.65934 67.31622395 20354.91136 69.06883204 20596.50492 67.63488023 20584.24921 68.75017575 20539.29139 70.18412756 20413.59405 72.41472006 20461.48464 72.89270375 20588.68067 72.5740482 20429.32533 75.12329625 20491.1173 75.4419518 20616.40139 75.12329625 20486.99974 77.35388802 20451.52196 78.62851168 20510.68495 78.94716796 20489.94502 80.06246349 20516.16691 80.69977605 20605.64208 80.69977605 20567.65474 81.97440117 20544.64453 83.08969523 20488.93193 84.52364849 20543.67357 84.84230477 20534.4451 85.79827215 20476.70122 87.23222395 20545.34424 87.39155209 20550.1365 88.18819279 20522.46566 89.30348978 20525.82397 90.10013048 20783.50983 88.34752094 20516.72757 91.8527371 20502.24143 92.80870302 20582.6349 92.80870302 20503.70023 94.40198442 20551.03311 94.7206407 20518.46294 95.83593768 20532.85473 96.47325024 20514.9032 97.42921616 20480.30159 98.54451315 20508.59476 99.02249757 20663.99196 98.22585686 20533.19627 100.2971198 20464.57811 101.731073 20490.48136 102.2090574 20516.02613 102.6870419 20493.41425 103.6430078 20438.21948 104.9176329 20493.59845 105.0769611 20453.26103 106.192258 20475.81868 106.6702395 20450.21912 107.6262084 20423.90258 108.5821772 20412.80188 109.3788179 20401.10398 110.1754557 20404.74114 110.8127683 20391.96749 111.609409 20378.59636 112.406049720380.56057 113.0433622 20397.9799 113.5213437 20351.30919 114.6366407 20399.3989 114.7959688 20351.77222 115.9112658 20351.1081 116.5485725 20349.96542 117.1858851 20332.41135 117.9825316 20330.19319 118.6198442 20295.63143 119.575813 20308.15171 120.0537916 20288.4473 120.8504323 20300.01103 121.3284167 20263.41783 122.2843856 20273.9061 122.76237 20268.10307 123.3996826 20245.88924 124.1963233 20239.01074 124.8336358 20215.72202 125.6302707 20207.76807 126.2675833 20151.53768 127.3828802 20174.13489 127.7015365 20180.5603 128.1795209 20170.6944 128.8168335 20144.4177 129.6134742 20133.47634 130.2507868 20153.92262 130.569443 20110.39866 131.5254119 20129.88956 131.8440623 20117.27525 132.4813749 20072.31734 133.4373437 20074.44089 133.9153281 20028.40751 134.871297 20013.52278 135.5086095 19998.16007 136.1459221 19998.25218 136.6239065 19982.053 137.2612191 19965.37583 137.8985316 19996.01911 138.0578598 19946.87942 139.0138228 19928.88779 139.6511353 19910.41819 140.2884479 19891.4706 140.9257605 19872.04502 141.563073 19852.14146 142.2003856 19831.75991 142.8376982 19826.8332 143.3156826 19805.61518 143.9529951 19783.91918 144.5903077 19761.74519 145.2276203 19739.0938 145.864927 19731.89667 146.3429114 19708.40823 146.980224 19700.37462 147.4582084 19691.98252 147.9361928 19667.29912 148.5735054 19642.13773 149.2108179 19616.49836 149.8481305 19606.31382 150.3261149 19595.77079 150.8040993 19568.93646 151.4414119 19541.62415 152.0787244 19513.83443 152.7160312 19517.43178 153.0346874 19488.92451 153.672 19444.00644 154.4686407 19414.4237 155.1059533 19400.2958 155.5839377 19401.74221 155.902594 19387.01683 156.3805784 19340.06732 157.1772191 19340.31878 157.4958754 19308.46562 158.1331879 19276.13447 158.7705005 19259.25874 159.2484791 19242.02394 159.7264635 19224.43065 160.2044479 19222.41168 160.5231042 19188.2881 161.1604167 19169.61934 161.6384012 19166.52492 161.9570574 19131.32528 162.5943759 19111.58164 163.0723544 19107.41175 163.3910107 19071.13723 164.0283233 19066.25036 164.3469796 19045.19227 164.8249581 19007.8423 165.4622707 19001.87997 165.780927 18979.74524 166.2589172 18973.1866 166.5775618 18934.52217 167.214874418911.31199 167.6928647 18887.74331 168.1708549 18879.75071 168.4894995 18855.58456 168.9674898 18862.92671 169.1268121 18838.28258 169.6048023 18813.27995 170.0827926 18787.92 170.5607712 18762.20156 171.0387498 18736.12347 171.51674 18725.62029 171.8353963 18698.94588 172.3133749 18687.84523 172.6320312 18660.57218 173.1100214 18648.87403 173.4286777 18621.00467 173.9066563 18608.70905 174.2253126 18580.24103 174.7033028 18551.4157 175.1812814 18554.09634 175.3406154 18540.72525 175.6592717 18511.18294 176.1372502 18497.21437 176.4559065 18467.07459 176.9338851 18436.57515 177.4118754 18437.58401 177.5711977 18422.53998 177.8898539 18407.25696 178.2085102 18375.80156 178.6865005 18343.98882 179.1644791 18343.68206 179.323813 18327.32358 179.6424693 18294.79387 180.1204479 18293.77013 180.2797819 18260.76244 180.7577605 18259.26072 180.9170945保存为shuju.txt 文件。
系统辨识实验三

《系统辨识》课程报告题目:最小二乘参数估计法班级:工控08.1姓名:学号:日期:2011.6.1成都信息工程学院控制工程学院最小二乘参数估计摘要:最小二乘法提供了一个估算方法,使之能得到一个在最小方差意义上与实验数据最好拟合的数学模型。
最小二乘的一次性完成辨识算法,他的特点是直接利用已经获得的观测数据进行运算处理。
求出一个使各次实际观测和计算值之间的差值的平方乘以度量其精度的数值以后的和为最小的数值,求出带辨识参数。
最小二乘辩识方法在系统辩识领域中先应用上已相当普及,方法上相当完善,可以有效的用于系统的状态估计,参数估计以及自适应控制及其他方面。
关键词:最小二乘法,AIC 准则,M 序列1 引言:最小二乘法是 1795 年高斯在预测星体运行轨道最先提出的 , 它奠定了最小二乘估计理论的基础 . 到 20 世纪 60 年代瑞典学者 Austron 把这个方法用于动态系统的辨识中 , 在这种辨识方法中 , 首先给出模类型 , 在该类型下确定系统模型的最优参数 .这种具有格式规范的辨识方法可以演绎成递推形式 .递推最小二乘算法计算量小 , 可以用于在线辨识 , 即使辨识对象随时间发生化 , 模型也可以对其进行跟踪断地进行更新和修正辨识参数 , 从而成为一种被广泛采用的辨识方法,最小二乘法有一次完成算法和递推算法,其中 一次完成算法存在一定的局限性,工业系统辨识常采用递推算法进行系统辨识。
2 实验原理:由于运用最小二乘一次完成算法进行系统参数辨识的时候,存在一定的限定条件,并且需要用到全部的观测数据,每采样一次就需要增添一组新的观察数据,所以引入递推最小二乘法来辨识系统参数,递推最小二乘法是用旧的估计值加上修正值得到的新的估计值,用新的测量数据对上一次的估计结果进行修正,直到估计值达到需要的精度为止。
2.1根据汉格尔矩阵估计模型的阶次设一个可观可控的SISO 过程的脉冲响应序列为{个g(1),g(2),……g(L)},可以通过汉格尔(Hankel )矩阵的秩来确定系统的阶次。
系统辨识实验报告

系统辨识实验报告自动化0903班09051302 李姣实验一、系统辨识的经典方法系统的模块如图:(1)、对系统的传递函数进行辨识。
对于一阶系统而言,未加入干扰信号时,其稳定值 t0=20.0,h0=42.2040, 加入干扰信号后其稳定值为 t=40,h1=60.4937。
现在分别取两个点为y1=30%对应的实际点为 h1’=42.2040+(60.4937-42.2040)*30%=47.6909; 根据实际测试值,选取h1’=47.8909,t1’=20.6,对应的 y1’=(47.89*09-42.2040)/(60.4939-42.2040)=0.3109 所以第一个点的取值为 y1’=0.3109;t1’=0.6; 同理可得第二个点的数值为 y2’=0.8033;t2’=2.7; 由公式 :可得 T=1.6750;=0; 由公式可得 k=1.82899(2)、对传递函数进行检验下面对系统的辨识结果进行验证,用一个幅值为10的阶跃信号进行验证,程序如下: num=[1.82899]; den=[1.675,1];()()()()()()2112211212t t T ln 1Y ln 1Y t ln 1Y t ln 1Y ln 1Y ln 1Y -⎧=⎪---⎪⎨---⎪τ=⎪---⎩()y y K u u∞∆==∆∆t=[0:0.1:10];[y,x,t]=step(num,den,t);plot(t,10*y)grid on;title('一阶系统模型的验证');xlabel('仿真时间');ylabel('系统的响应值');set(gca,'xtick',[0:0.5:10]);set(gca,'ytick',[0:1:20]);所得的仿真图形如下,实际系统加入测试信号后0.5s,从workspace中可发现系统的响应值为h=47.0929-42.2040=4.8889;验证是的对应仿真值为h’=4.4720;其误差大小为:(4.8889-4.4720)/4.8889*100%=8.536%;同理,当仿真时间为3.8s时,h=16.3993;h’=16.398;误差大小为:(16.3993-16.398)/16.3993*100%=0.08%;所以经过验证个,可以确定该辨识结果可以反应该系统的传递函数。
系统辨识实验报告

实验一:系统辨识的经典方法一、实验目的掌握系统的数学模型与输入、输出信号之间的关系,掌握经辨辨识的实验测试方法和数据处理方法,熟悉MATLAB/Simulink环境。
二、实验内容1、用阶跃响应法测试给定系统的数学模型在系统没有噪声干扰的条件下通过测试系统的阶跃响应获得系统的一阶加纯滞后或二阶加纯滞后模型,对模型进行验证。
2、在被辨识系统中加入噪声干扰,重复上述1的实验过程。
三、实验方法在MATLAB环境下用Simulink构造测试环境,被测试的模型为水槽液位控制对象。
利用非线性水槽模型(tank)可以搭建单水槽系统的模型,也可以搭建多水槽系统的模型,多水槽模型可以是高低放置,也可以并排放置。
1.噪声强度0.5,在t = 20的时候加入阶跃测试信号相应曲线2.乘同余法产生白噪声A=19;N=200;x0=37;f=2;M=512; %初始化;for k=1: N %乘同余法递推100次;x2=A*x0; %分别用x2和x0表示xi+1和xi-1;x1=mod(x2,M); %取x2存储器的数除以M的余数放x1(xi)中;v1=x1/M; %将x1存储器中的数除以256得到小于1的随v(:,k)=(v1-0.5 )*f;x0=x1; % xi-1= xi;v0=v1;end %递推100次结束;v2=v;k1=k;h=k1;%以下是绘图程序;k=1:1:k1;plot(k,v,'r');grid onset(gca,'GridLineStyle','*');grid(gca,'minor')3.白噪声序列图像020406080100120140160180200-1-0.8-0.6-0.4-0.20.20.40.60.81四、 思考题(1) 阶跃响应法测试系统数学模型的局限性。
答:只适用于某些特殊对象或者低阶简单系统;参数估计的精度有限,估计方法缺乏一般性。
系统辨识与自适应控制实验报告

系统辨识与自适应控制实验报告一、实验目的1.了解最小二乘算法的实现;2.使用最小二乘法一次完成算法、递推最小二乘法以及广义最小二乘法对系统进行辨识。
二、实验容设单输入-单输出系统的差分方程为y(k)=-取真实值=[ 1.642 0.715 0.39 0.35] ,输入数据如下表所列。
k u(k) k u(k) k u(k)1 1.147 11 -0.958 21 0.4852 0.201 12 0.810 22 1.6333 -0.787 13 -0.044 23 0.0434 -1.589 14 0.947 24 1.3265 -1.052 15 -1.474 25 1.7066 0.866 16 -0.719 26 -0.3407 1.152 17 -0.086 27 0.8908 1.157 18 -1.099 28 1.1449 0.626 19 1.450 29 1.177 10 0.43320 1.15130 -0.390用的真实值利用查分方程求出作为测量值,为均值为0,方差为0.1,0.5的不相关随机序列。
(1) 用最小二乘法估计参数(2) 用递推最小二乘法估计参数θ。
(3) 用辅助变量法估计参数θ。
(4) 设,用广义最小二乘法估计参数θ。
(5) 用增广矩阵法估计参数θ详细分析和比较所获得的参数辨识结果,并说明上述参数辨识方法的优点。
三、 实验设备Matlab 软件,PC 机一台。
四、实验原理4.1 最小二乘一次完成算法 4.1.1 公式 辨识参数L T LL TL LS y XX X 1)(-Λ=θ上式中4.1.2 程序流程图图 1最小二乘一次完成程序流程图4.2 递推最小二乘算法4.2.1 递推公式公式为其中,4.2.2 算法流程图图 2 递推最小二乘法实现程序框图4.3 增广最小二乘递推算法4.3.1 递推公式公式为:其中,4.3.2 算法流程图图 3 增广最小二乘法算法流程图五、实验结果5.1 最小二乘法一次完成实验结果XL =0 0 0 00 0 0 00 0 0.2010 1.1470-0.4798 0 -0.7870 0.20101.0245 -0.4798 -1.5890 -0.7870-0.4439 1.0245 -1.0520 -1.5890 0.9629 -0.4439 0.8660 -1.0520 -1.2332 0.9629 1.1520 0.8660 0.5840 -1.2332 1.5730 1.1520 -1.0939 0.5840 0.6260 1.5730 0.5840 -1.0939 0.4330 0.6260 -0.5647 0.5840 -0.9580 0.4330 0.7317 -0.5647 0.8100 -0.9580 -0.7784 0.7317 -0.0440 0.8100 0.4885 -0.7784 0.9470 -0.0440 -0.5996 0.4885 -1.4740 0.9470 0.8786 -0.5996 -0.7190 -1.4740 -0.2177 0.8786 -0.0860 -0.7190 0.0144 -0.2177 -1.0990 -0.0860 0.5907 0.0144 1.4500 -1.0990 -1.1611 0.5907 1.1510 1.4500 0.5277 -1.1611 0.4850 1.1510 -0.6284 0.5277 1.6330 0.4850 -0.1521 -0.6284 0.0430 1.6330 0.1108 -0.1521 1.3260 0.0430 -0.6053 0.1108 1.7060 1.3260 -0.2147 -0.6053 -0.3400 1.70600.3208 -0.2147 0.8900 -0.3400 -0.6014 0.3208 1.1440 0.8900 0.0005 -0.6014 1.1770 1.1440 yL =0.4798-1.02450.4439-0.96291.2332-0.58401.0939-0.58400.5647-0.73170.7784-0.48850.5996-0.87860.2177-0.0144-0.59071.1611-0.52770.62840.1521-0.11080.60530.2147-0.32080.6014-0.00050.4302辨识参数矩阵c =1.64200.71500.39000.3500a1 =1.6420;a2 =0.7150;b1 =0.3900;b2 =0.3500 下图为输入、输出矩阵的根径图图 4最小二乘法一次实现输入输出根径图5.2 递推最小二乘法算法辨识结果系统输出矩阵:y =Columns 1 through 130 0 0.4798 -1.0245 0.4439 -0.9629 1.2332 -0.5840 1.0939 -0.5840 0.5647 -0.7317 0.7784Columns 14 through 26-0.4885 0.5996 -0.8786 0.2177 -0.0144 -0.5907 1.1611 -0.5277 0.6284 0.1521 -0.1108 0.6053 0.2147Columns 27 through 30-0.3208 0.6014 -0.0005 0.4302辨识参数矩阵(辨识过程执行26次即满足了误差要求):c =Columns 1 through 130.0010 0 0.0010 0.5690 1.3863 1.64201.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.64200.0010 0 0.0010 0.0010 -0.2821 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.71500.0010 0 0.0719 1.0162 0.5392 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.39000.0010 0 0.4057 0.2403 0.3239 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500Columns 14 through 261.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.64200.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.71500.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.39000.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500辨识误差矩阵:e =Columns 1 through 130 0 0 567.9876 1.4365 0.1844 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.00000 0 0 0 -283.1457 -3.5341 -0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.00000 0 70.9263 13.1283 -0.4694 -0.2767 0.0000 0.0000 -0.0000 -0.0000 0.0000 -0.0000 -0.00000 0 404.7388 -0.4078 0.3479 0.0807 -0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000Columns 14 through 260.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 -0.0000 -0.0000 0.0000 0.0000 0.00000.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 -0.00000.0000 -0.0000 -0.0000 0.0000 0.0000 0.0000 0.0000 -0.0000 0.0000 0.0000 0.0000 0.0000 -0.00000.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000输入输出根径图图 5 递推最小二乘法输入输出根径图辨识参数过程图 6 递推最小二乘法辨识参数(辨识过程)辨识误差:图 7 递推最小二乘法辨识过程中的误差曲线5.3 增光最小二乘法实验结果随机噪声e0 =Columns 1 through 130.8017 0.3112 0.0400 1.5927 2.1796 -0.2063 0.4197 -0.4914 0.9967 -2.0484 1.3063 0.5351 0.5779Columns 14 through 261.5297 0.0416 0.1831 -0.9543 -1.3474 -0.3873 0.5971 -0.2250 -1.0173 1.3889 -0.3959 0.3049 0.3154Columns 27 through 300.0668 0.7128 0.0522 -1.3478考虑噪声的系统输出矩阵y =Columns 1 through 130 0 1.3292 -2.8976 3.0444 -3.4535 4.0637 -1.2169 1.8419 -1.5061 0.3942 -3.0734 2.3278Columns 14 through 26-0.7705 1.1973 -0.1962 0.3711 -0.4941 -1.4314 1.2987 -1.5689 0.0303 1.8310 0.3403 -0.3472 0.5176Columns 27 through 30-1.1419 -0.4368 0.0696 1.6791不考虑噪声的系统输出矩阵ys =Columns 1 through 130 0 0.4798 -2.4191 2.9124 -3.8936 3.4635 -3.4509 0.1092 -1.3596 1.5440 0.2076 4.7453Columns 14 through 26-1.3584 -0.0452 -1.6585 -1.3303 -0.7543 0.0873 2.8846 -0.1526 2.2396 1.8786 -2.4398 -1.3358 1.4562Columns 27 through 30-0.1371 1.7331 2.2914 1.0575不考虑噪声时的模型输出ym =Columns 1 through 130 0 0.8502 -2.7124 3.2115 -4.4770 4.5771 -3.4086 0.1092 -1.3596 1.5440 0.2076 4.7453Columns 14 through 26-1.3584 -0.0452 -1.6585 -1.3303 -0.7543 0.0873 2.8846 -0.1526 2.2396 1.8786 -2.4398 -1.3358 1.4562Columns 27 through 30-0.1371 1.7331 2.2914 1.0575考虑噪声时的模型输出ymd =Columns 1 through 130 0 1.3292 -2.8976 3.0444 -3.4535 4.0637 -1.2169 1.8419 -1.5061 0.3942 -3.0734 2.3278Columns 14 through 26-0.7705 1.1973 -0.1962 0.3711 -0.4941 -1.4314 1.2987 -1.5689 0.0303 1.8310 0.3403 -0.3472 0.5176Columns 27 through 30-1.1419 -0.4368 0.0696 1.6791辨识参数矩阵:c =Columns 1 through 130.0010 0 0.0010 1.5171 1.6829 1.84351.8250 1.6529 1.6420 1.6420 1.6420 1.6420 1.64200.0010 0 0.0010 0.0010 -0.1409 0.7419 0.6281 0.7388 0.7150 0.7150 0.7150 0.7150 0.71500.0010 0 0.1268 1.0576 0.8180 0.3002 0.4168 0.3921 0.3900 0.3900 0.3900 0.3900 0.39000.0010 0 0.7190 0.6789 0.7019 0.4396 0.1656 0.3522 0.3500 0.3500 0.3500 0.3500 0.35000.0010 0 -0.1988 0.0261 0.0572 -0.0988 -0.0852 1.0030 1.0000 1.0000 1.0000 1.0000 1.00000.0010 0 0.2540 0.6848 0.6545 1.34961.4284 1.6100 1.6420 1.6420 1.6420 1.6420 1.64200.0010 0 0.4430 0.0984 0.1605 0.2657 0.6386 0.7305 0.7150 0.7150 0.7150 0.7150 0.7150Columns 14 through 261.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.64200.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.71500.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.39000.3500 0.3500 0.3500 0.3500 0.3500 0.35000.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.35001.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.00001.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.64200.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150Columns 27 through 301.6420 1.6420 1.6420 1.64200.7150 0.7150 0.7150 0.71500.3900 0.3900 0.3900 0.39000.3500 0.3500 0.3500 0.35001.0000 1.0000 1.0000 1.00001.6420 1.6420 1.6420 1.64200.7150 0.7150 0.7150 0.7150辨识参数误差矩阵e =1.0e+003 *Columns 1 through 130 0 0 1.5161 0.0001 0.0001 -0.0000 -0.0001 -0.0000 -0.0000 -0.0000 -0.0000 -0.00000 0 0 0 -0.1419 -0.0063 -0.0002 0.0002 -0.0000 0.0000 0.0000 -0.0000 -0.00000 0 0.1258 0.0073 -0.0002 -0.0006 0.0004 -0.0001 -0.0000 -0.0000 -0.0000 -0.0000 -0.00000 0 0.7180 -0.0001 0.0000 -0.0004 -0.0006 0.0011 -0.0000 0.0000 -0.0000 -0.0000 0.00000 0 -0.1998 -0.0011 0.0012 -0.0027 -0.0001 -0.0128 -0.0000 0.0000 0.0000 0.0000 -0.00000 0 0.2530 0.0017 -0.0000 0.0011 0.0001 0.0001 0.0000 -0.0000 0.0000 0.0000 0.00000 0 0.4420 -0.0008 0.0006 0.0007 0.0014 0.0001 -0.0000 0.0000 0.0000 -0.0000 0.0000Columns 14 through 260.0000 0.0000 0.0000 -0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 -0.0000 0.0000 0.0000 0.00000.0000 0.0000 0.0000 -0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 -0.0000-0.0000 -0.0000 0.0000 -0.0000 0.0000 0.0000 0.0000 -0.0000 0.0000 0.0000 0.0000 0.0000 -0.00000.0000 0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 0.0000 -0.0000 -0.0000 -0.0000-0.0000 -0.0000 -0.0000 0.0000 -0.0000 0.0000 -0.0000 0.0000 0.0000 0.0000 -0.0000 -0.0000 -0.00000.0000 0.0000 0.0000 0.0000 0.0000 0.00000.0000 0.0000 0.0000 -0.0000 -0.0000 0.0000 0.0000-0.0000 -0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 -0.0000 0.0000 0.0000 -0.0000Columns 27 through 300.0000 -0.0000 -0.0000 0.00000.0000 -0.0000 -0.0000 0.00000.0000 -0.0000 -0.0000 -0.0000-0.0000 0.0000 -0.0000 -0.00000.0000 0.0000 0.0000 -0.00000.0000 0.0000 0.0000 0.00000.0000 -0.0000 0.0000 0.0000输入输出根径图:图 8 增广最小二乘法输入输出根径图辨识过程的参数:图 9 增广最小二乘法辨识过程参数辨识过程中的误差图 10 增广最小二乘法辨识过程中的误差系统输出矩阵和模型输出矩阵的对比:图 11 系统输出矩阵和模型输出矩阵的对比图六、结果分析利用最小二乘法对系统进行辨识,能够在最小误差平方的意义上对实验数据实现最好的拟合。
系统辨识课程报告

X1
X2
X3
X4
图 1.1
M 序列产生原理图
2 最小二乘法原理
最小二乘理论是高斯(K.F.Gauss)在 1795 年预测行星和彗星运动的轨道时提出的, 高斯提出: “未知量的最大可能的值是这样一个数值, 它使各次实际观测和计算值之间的差 值的平方乘以度量其精确度的数值以后的和为最小。 ” 2.1 最小二乘格式
利用数据序列{z(k)}和{u(k)},极小化下列准则函数
l
T
J z (k ) (k )
T k 1
2
(2.6)
使 J(θ )=min 的θ 估计值记作 ,称之为参数的最小二乘估计值。 2.2 最小二乘问题的求解 用表示根据 l 次数采样数据所求得的参数的估计值 。
《系统辨识》课程报告Fra bibliotek被辨识的系统
图 2.1
SISO 辨识系统示意图
《系统辨识》课程报告
学号:2007073124
假设被辨识系统为一个单输入单输出(SISO)离散时间动态系统,如图 2.1 所示。其 系统数学关系式可用如下随机差分方程描述
z (k ) ai z (k i) bi u (k i) v(k )
2 其中,u(k) ,z(k)为系统的输入输出变量,v(k)是服从 N (0, v ) 分布的不相关随机噪
声,上述模型可写成最小二乘矩阵格式
z n H n n Vn
则有
(3.2)
L 2
L( n ) (2 )
2 v
1 T exp ( z H ) ( z H ) n n n n n n 2 2 v
(3.3)
故
系统辨识实验报告1

14
四.实验运行结果:
函数界面示意图: 6. 只显示结果界面: 7. 显示过程的参考界面:
15
心得体会
我很喜欢这个课程的期末考核方式,不用再拘泥于在题目当中对该课程的了 解,而是通过 4 个 C 语言设计的练习来达到学习的目的,而且对以后的学习还有 很大的帮助。
在编写 C 语言的过程中,也遇到了一些阻碍,特别是在编写第 3,4 个的时候。 比如:用的数组太多,并且未将其初始化,运行出来的结果经常是很长的一段随 机数;或者一模一样的程序有时候就可以正常运行,有时候就总是出现报错…… 这些都是让我心塞了两周的问题。在这些问题解决之后,运行出来的结果却与实 际模型参数的出入有点大,于是又重新查找第 2 个实验是否是 M 序列产生的方式 有问题。通过对初始化寄存器赋给不同的值,可以让结果与真实模型参数之间的 误差达到最小。
实验 4 ................................................ 错误!未定义书签。 一.实验内容及要求: ............................... 错误!未定义书签。 二.实验原理: ..................................... 错误!未定义书签。 三.数据递推关系图: ............................... 错误!未定义书签。
编写并调试动态离散时间模型 LS 成批算法程序。 要求:(1)原始数据由 DU 和 DY 读出。 (2)调用求逆及相乘子程序。 (3)显示参数辨识结果。
二.实验原理:
1.批次处理的方法就是把所有的数据采集到一次性进行处理,但前提是 白色噪声、及 M 序列所共同作用而产生的输出,才能使用最小二乘法。虽然 这种方法的计算量庞大,但经常用于处理时不变系统,方法简单。
系统辨识实验报告

系统辨识实验报告SA08157051 杜鹏超一 选择的系统模型类选择系统模型如下:se TsK τ-=G(S)然后多系统模型离散化,即;⎩⎨⎧⎭⎬⎫=--s s e TsK s e z ττG(z)二 辨识的原理,方法和公式 y(i)=-a*y(i-1)+b*u(i-1)⎪⎪⎩⎪⎪⎨⎧-+--=+-=+-=)1()1()()2()2()3()1()1()2(n bu n ay n y bu ay y bu ay y 令 T θ=[-a b] x(k)=[y(k-1) u(k-1)]或⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡--=)1()1()2()2()1()1(X n u n y u y u y⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=)()3()2(y(N) n y y y 即y=x θ+e1.批量最小二乘估计算法最小二乘估计准则:模型拟合残差为θϕε)()()(k k y k T-=则有目标函数J 为:∑==ki i k J 12)()(ε把数据代入拟合残差得:θϕε)()()(n n y n T-=下面从最小二乘准则推导正规方程。
根据术极值原理可知,最小二乘估计θ满足⎪⎪⎩⎪⎪⎨⎧∂∂∂∂=∂∂-为正定T J J LS )(0θθθθθJ 还可写成)()()(k k k J T εε=θφφθθφθφεε T T T T Ty y y y k k k J 2)()()()(-=--==)(上式中为简单起见,略去了有关各项的(n)。
⎪⎪⎩⎪⎪⎨⎧=∂∂∂∂=+-=∂∂-为正定φφθθθφφφθθθTT LS TT J y J LS 2)(022于是得:y TT ls φφφθ1)(-=的最小二乘估计为)()())()(()(1k y k x k x k x k T T -=θ2.递推最小二乘估计算法原式为)()1()1(1k e k xk y T ++=++θ得新解)1()1())1()1(()1(1++++=+-k y k x k x k x k TTθ其中:⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡+=+⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡+=+)1()()1()1()()1(k y k y k y k x k x k x T T 令:2)]1()1([)1(++=+k x k x k p T可求得)1()()1(1)1()()1(++++=+k X k p k X k x k p k k T T)]()1()1()[1()()1(k k x k y k K k k Tθθθ +-+++=+)]()1(1[)1(k x k K k p T θ++=+3 渐消记忆递推最小二乘估计算法修改目标两数J ,对残差平方加指数权λ∑=-=ki ik i k J 12)()(ελ其巾λ=0.9—0.999愈大遗忘愈慢。
系统辨识实习2

第二次上机实验报告实验人:曾鑫鹏学号:07302657 班级:07自动化一、实验目的用MATLAB工具,采用相应的时域方法完成各种传递函数的辨识。
从而验证所学各种时域辨识方法(如切线法、两点法、面积法等)的有效性。
另外,通过对各种辨识方法的MATLAB编程实现,加深对各种方法原理的理解、步骤的掌握,提高对系统辨识的认识。
二、实验内容1、自己设定一个一阶自衡惯性系统(自行选定放大系数、惯性时间参数和时滞参数),分别验证切线法和两点法的有效性。
实现切线法和两点法辨识及效果验证的MATLAB程序如下:注:用切线法和两点法辨识一阶系统的整个过程已经在程序注释中一目了然,辨识效果将在实验结果中呈现。
以下的各种辨识方法的实验也作此处理,不再说明。
2、自己设定一个由两个一阶无滞后惯性系统(放大系数选为1、时滞参数为0)串联形成的二阶自衡系统(自行选定两个惯性时间参数),验证所学惯性参数T1和T2辨识方法的有效性。
实现该辨识及效果验证的MATLAB程序如下:3、自己设定一个二阶欠阻尼自衡系统(放大系数为1,自行选定自然频率、阻尼系数),验证所学参数辨识方法的有效性。
实现该辨识及效果验证的MATLAB程序如下:4、自己设定一个由三个一阶无滞后惯性系统(放大系数选为1、时滞参数为0)并联形成的高阶自衡系统(自行选定三个惯性时间参数,T1〉T2〉T3 ),验证所学惯性参数辨识方法的有效性。
实现该辨识及效果验证的MATLAB程序如下:5、自己设定一个自衡等容系统,分别针对二阶和三阶系统验证所学方法的有效性。
1)二阶时实现该辨识及效果验证的MATLAB程序如下:2)三阶时实现该辨识及效果验证的MATLAB程序如下:6、自己设定教材(2.43)描述的三阶系统(自行选定a1, a2, a3),验证所学面积法的有效性。
实现该辨识及效果验证的MATLAB程序如下:三、实验结果运行以上编写的各程序,按提示输入所需参数,即可得到辨识的结果,将辨识结果与原系统比较即可验证各种辨识方法的有效性。
系统辨识及自适应控制实验报告

系统辨识及自适应控制实验报告实验报告:系统辨识及自适应控制1.引言系统辨识和自适应控制是现代自动控制领域中的重要研究内容。
系统辨识是通过采集系统输入输出数据,建立数学模型描述系统的动态行为。
自适应控制则是根据系统辨识得到的模型,调整控制器参数以适应系统的变化和外部干扰。
本实验旨在通过实际操作,掌握系统辨识和自适应控制的基本原理和方法。
2.实验目的1)了解系统辨识的基本原理和方法;2)掌握常见的系统辨识方法,包括参数辨识和频域辨识;3)理解自适应控制的基本原理和方法;4)熟悉自适应控制的实现过程;5)通过实验验证系统辨识和自适应控制的有效性。
3.实验原理3.1系统辨识原理系统辨识的目标是通过采集系统输入输出数据,建立数学模型来描述系统的动态特性。
常见的系统辨识方法包括参数辨识和频域辨识两种。
参数辨识是通过拟合实际测量数据,找到最佳的模型参数。
常用的参数辨识方法有最小二乘法、极大似然法和最小误差平方等。
频域辨识则是通过对输入输出信号的频谱分析,得到系统的频率响应特性。
常用的频域辨识方法有傅里叶变换法、相关分析法和谱估计法等。
3.2自适应控制原理自适应控制是根据系统辨识得到的模型,调整控制器参数以适应系统的变化和外部干扰。
自适应控制分为基于模型的自适应控制和模型无关的自适应控制。
基于模型的自适应控制利用系统辨识得到的模型参数,设计相应的控制器来实现自适应控制。
常见的基于模型的自适应控制方法有模型参考自适应控制和模型预测自适应控制等。
模型无关的自适应控制则不依赖于系统辨识的模型,而是根据实际测量数据直接调整控制器参数。
常见的模型无关的自适应控制方法有自适应滑模控制和神经网络控制等。
4.实验内容4.1系统辨识实验在实验中,我们通过采集系统输入输出数据,根据最小二乘法进行参数辨识。
首先设置系统的输入信号,如阶跃信号或正弦信号,并记录对应的输出数据。
然后根据采集到的数据,选取适当的模型结构,通过最小二乘法求解最佳的模型参数。
系统辨识实验报告

系统辨识实验报告学院:信息科学与技术学院专业:自动化日期:2016/4/26目录实验1 .................................................... 错误!未定义书签。
一.实验内容及要求: ................................... 错误!未定义书签。
二.实验原理:......................................... 错误!未定义书签。
三.软件设计思想: ..................................... 错误!未定义书签。
四.程序结构框图: ..................................... 错误!未定义书签。
五.运行示意图: ....................................... 错误!未定义书签。
实验2 .................................................... 错误!未定义书签。
一.实验内容及要求: ................................... 错误!未定义书签。
二.实验原理:......................................... 错误!未定义书签。
三.软件设计思想: ..................................... 错误!未定义书签。
四.程序设计框图: ..................................... 错误!未定义书签。
五.程序运行流程图: ................................... 错误!未定义书签。
实验3 .................................................... 错误!未定义书签。
一.实验内容及要求: ................................... 错误!未定义书签。
系统辨识实验报告 中科大

1.5 预处理后检验
把原始数据分成两部分,一部分用来辨识,一部分用来检验模型。 预处理后便是部分输入的图像
预处理后便是部分输出的图像
预处理后检验数据部分输入图像
预处理后检验部分输出部分
2 辨识算法
以下 n 的取值均为 2,在以下部分为给出为什么 n 取 2 最好
2.1 批量最小二乘
2.1.1 源代码 %批量最小二乘算法 dafi=ones(N,2*n); for i=0:N-1 dafi(i+1,:)=[-vo_iden(i+1:i+n)' vi_iden(i+1:i+n)']; end cta=inv(dafi'*dafi)*dafi'*vo_iden(n+1:n+N); Y1=test*cta; %plot(Y1); E1=Y1-vo_test(n+1:n+N); En1(1,n)=E1'*E1; cta 2.1.2 辨识结果
2.3.2 辨识结果
2.3.3 模型检验 (1)用测试数据输入后得到的图像
(2)和实际偏差的曲线
2.4 增广最小二乘法
2.4.1源代码 %增广最小二乘算法 p=eye(3*n)*1000; cta=ones(3*n,1); w=zeros(n,1); W=ones(N,n); for i=0:N-1 fi=[-vo_iden(i+1:i+n)' vi_iden(i+1:i+n)' w']; k=(p*fi')/(1+fi*p*fi'); cta=cta+k*(vo_iden(i+1)-fi*cta); p=p-k*fi*p; for j=1:n-1 w(j,1)=w(j+1,1); end w(n,1)=vo_iden(i+1)-fi*cta; end w=zeros(n,1); for i=0:N-1 W(i+1,:)=w; s=[-vo_test(i+1:i+n)' vi_test(i+1:i+n)' w']; for j=1:n-1 w(j,1)=w(j+1,1); end w(n,1)=vo_test(i+1)-fi*cta; end teste=[test W]; Y4=teste*cta; %plot(Y4); E4=Y4-vi_test(n+1:n+N); En4(1,n)=E4'*E4; cta 2.4.2 辨识结果
系统辨识实验报告

系统辨识实验报告——C语言版目录实验一 .......................................................错误!未定义书签。
实验分析..................................................错误!未定义书签。
实验代码..................................................错误!未定义书签。
运行结果..................................................错误!未定义书签。
实验二 .......................................................错误!未定义书签。
实验分析..................................................错误!未定义书签。
实验代码..................................................错误!未定义书签。
运行结果..................................................错误!未定义书签。
实验三 .......................................................错误!未定义书签。
实验分析..................................................错误!未定义书签。
实验代码..................................................错误!未定义书签。
运行结果..................................................错误!未定义书签。
实验四 .......................................................错误!未定义书签。
系统辩识实验报告

一、实验目的1. 理解系统辨识的基本概念和原理。
2. 掌握递推最小二乘算法在系统辨识中的应用。
3. 通过实验,验证算法的有效性,并分析参数估计误差。
二、实验原理系统辨识是利用系统输入输出数据,对系统模型进行估计和识别的过程。
在本实验中,我们采用递推最小二乘算法对系统进行辨识。
递推最小二乘算法是一种参数估计方法,其基本思想是利用当前观测值对系统参数进行修正,使参数估计值与实际值之间的误差最小。
递推最小二乘算法具有计算简单、收敛速度快等优点。
三、实验设备1. 电脑一台,装有MATLAB软件。
2. 系统辨识实验模块。
四、实验步骤1. 打开MATLAB软件,运行系统辨识实验模块。
2. 在模块中输入已知的系数a1、a2、b1、b2。
3. 生成输入序列u(t)和噪声序列v(t)。
4. 将输入序列u(t)和噪声序列v(t)加入系统,产生输出序列y(t)。
5. 利用递推最小二乘算法对系统参数进行辨识。
6. 将得到的参数估计值代入公式计算参数估计误差。
7. 仿真出参数估计误差随时间的变化曲线。
五、实验结果与分析1. 实验结果根据实验步骤,我们得到了参数估计值和参数估计误差随时间的变化曲线。
2. 结果分析(1)参数估计值:通过递推最小二乘算法,我们得到了系统参数的估计值。
这些估计值与实际参数存在一定的误差,这是由于噪声和系统模型的不确定性所导致的。
(2)参数估计误差:从参数估计误差随时间的变化曲线可以看出,递推最小二乘算法在短时间内就能使参数估计误差达到较低水平。
这说明递推最小二乘算法具有较好的收敛性能。
(3)参数估计误差曲线:在实验过程中,我们发现参数估计误差曲线在初期变化较快,随后逐渐趋于平稳。
这表明系统辨识过程在初期具有较高的灵敏度,但随着时间的推移,参数估计误差逐渐减小,系统辨识过程逐渐稳定。
六、实验结论1. 递推最小二乘算法在系统辨识中具有较好的收敛性能,能够快速、准确地估计系统参数。
2. 实验结果表明,递推最小二乘算法能够有效减小参数估计误差,提高系统辨识精度。
系统辨识实验报告

系统辨识实验报告学院:信息科学与技术学院专业:自动化日期:2016/4/26目录实验1 (4)一.实验内容及要求: (4)二.实验原理: (4)三.软件设计思想: (4)四.程序结构框图: (5)五.运行示意图: (5)实验2 (8)一.实验内容及要求: (8)二.实验原理: (8)三.软件设计思想: (9)四.程序设计框图: (10)五.程序运行流程图: (10)实验3 (12)一.实验内容及要求: (12)二.实验原理: (12)三.程序数据流程图: (12)四.实验运行结果: (13)实验4 (14)一.实验内容及要求: (14)二.实验原理: (14)三.数据递推关系图: (14)四.实验运行结果: (15)心得体会 (16)附录(实验代码) (17)bWork1 (17)bWork2 (21)bWork3 (23)bWork4 (26)实验1一.实验内容及要求:1.编出矩阵A与B相乘得到的矩阵R的运算计算机程序要求:(1)A和B的维数及数值可通过键盘及数据文件输入(2)计算结果R可由屏幕及文件输出2.将1改写为子程序3.查找有关的资料,读懂及调通矩阵求逆程序,并改写为子程序。
二.实验原理:1.两个矩阵A、B相乘得到C矩阵,首先要满足的条件是A的列数与B行数相等,否则不能相乘。
当满足条件后,根据C(i,k)=可以求得C矩阵。
2.当求矩阵的逆时,首先要判断其是否为方阵,若是则可以对其进行下一步的操作。
本次实验中求逆主要是通过构造一个增广矩阵(FangZ | E)矩阵的初等行变换得到(E | FZNi)的这样的一个矩阵就可以求得矩阵的逆。
若矩阵FangZ不是满秩矩阵时,FangZ没有FZNi 。
通过这样的求逆方式,避免了大方阵的求取行列式运算。
三.软件设计思想:1.确定该软件的功能主要有:键盘输入两个矩阵然后相乘;文本data输入两个矩阵将结果放在文本result中;键盘输入一个方阵求得其逆矩阵。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、相关分析法(1)实验原理图1 实验原理图本实验的原理图如图1。
过程传递函数()G s 中12120,8.3, 6.2K T Sec T Sec ===;输入变量()u k ,输出变量()z k ,噪声服从2(0,)v N σ,0()g k 为过程的脉冲响应理论值,ˆ()gk 为过程脉冲响应估计值,()g k 为过程脉冲响应估计误差。
过程输入()u k 采用M 序列,其输出数据加白噪声()v k 得到输出数据()z k 。
利用相关分析法估计出过程的脉冲响应值ˆ()gk ,并与过程脉冲响应理论值0()g k 比较,得到过程脉冲响应估计误差值()g k 。
M 序列阶次选择说明:首先粗略估计系统的过渡过程时间T S (通过简单阶跃响应)、截止频率f M (给系统施加不同周期的正弦信号或方波信号,观察输出)。
本次为验证试验,已知系统模型,经计算Hz T T f M 14.0121≈=,s T S 30≈。
根据式Mf t 3.0≤∆及式S T t N ≥∆-)1(,则t ∆取值为1,此时31≥N ,由于t ∆与N 选择时要求完全覆盖,则选择六阶M 移位寄存器,即N =63。
(2)编程说明图2 程序流程图(3)分步说明 ① 生成M 序列:M 序列的循环周期63126=-=N ,时钟节拍1t Sec ∆=,幅度1a =,移位寄存器中第5、6位的内容按“模二相加”,反馈到第一位作为输入。
其中初始数据设为{1,0,1,0,0,0}。
程序如下:② 生成白噪声序列: 程序如下:③ 过程仿真得到输出数据:如图2所示的过程传递函数串联,可以写成形如121211()1/1/K Gs TT s T s T =++,其中112KK TT =。
图2 过程仿真方框图程序如下:④ 计算脉冲响应估计值:互相关函数采用公式)()(1)(10k i y i x Nr k R N r i xy +⋅⋅=∑-⋅=,互相关函数所用的数据是从第二个周期开始的,其中r 为周期数,取1-3之间。
则脉冲响应估计值为:])([1)(ˆc k R k k g xy -=,ta N N k ∆⋅⋅+=2)1(。
补偿量)1(-=N R c xy 。
程序如下:⑤ 计算脉冲响应估计值: 脉冲响应的理论值由式12//012()[]k t T k t T Kg k e e T T -∆-∆=--可计算得到。
这时可得到过程脉冲相应估计误差0ˆ()()()g k g k gk =-。
脉冲响应估计误差为: ∑∑===Nk Nk g k g k g12012))(())(~(δ程序如下:(4)数据记录①当噪声标准差sigma=,生成数据周期r为2时:脉冲响应估计误差为。
脉冲响应估计曲线为图3所示。
②当噪声标准差sigma=,生成数据周期r为1时:脉冲响应估计误差为。
脉冲响应估计曲线为图4所示。
③当噪声标准差sigma=,生成数据周期r为3时:脉冲响应估计误差为。
脉冲响应估计曲线为图5所示。
④当噪声标准差sigma=1,生成数据周期r为3时:脉冲响应估计误差为。
脉冲响应估计曲线为图6所示。
图3 sigma=,r=2时脉冲响应估计曲线图4 sigma=,r=1时脉冲响应估计曲线图5 sigma=,r=3时脉冲响应估计曲线 图6 sigma=1,r=3时脉冲响应估计曲线(5)结果分析实验中可以看到脉冲响应估计的曲线与理论曲线的重合度还是比较高的,脉冲响应估计误差也比较小,实验证明相关分析法的估计效果还是不错的。
同时,经过实验可以得出结论:固定数据周期r ,给定不同的噪声标准差sigma 可以发现,噪声的方差越大,也就是信噪比越大,估计的效果越不好;固定噪声标准差sigma ,选择不同的数据生成周期r 可以发现,数据周期越大,估计的周期越多,估计的效果越好。
二、最小二乘法1. 基本最小二乘(离线辨识)ζφθζ+=+⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=b a U Y Y ][残差为: )(ˆ)()(k yk y k e -= 最小二乘目标:残差平方和最小(一阶导为0,二阶导>0)。
[][]正定,且φφφφφθT T T LSY 1ˆ-=⇒ 从上式看出,逆存在才有解,满足条件的u(k):(1) 伪随机;(2) 白噪声;(3)有色随机信号。
程序如下:结果如下:result1 =[ ; ; ; ; ]2. 递推最小二乘(在线辨识)RLS )1()]()([)()()1()(1)()1()()]1(ˆ)()()[()1(ˆ)(ˆ--=-+-=--+-=k P k k K I k P k k P k k k P k K k k k y k K k k T T T φφφφθφθθ修正项老估值新估值+=+NN θθˆ)(ˆ)(1 为了启动RLS ,需给初值:I c P 20,0ˆ==θ。
计算框图见书P66。
程序如下:结果如下:result2 =[ ; ; ; ; ]图7 递推最小二乘法参数过渡过程数据饱和:(1)原因:01→+N K ,不再起修正作用,引起误差变大。
(2)为了克服数据饱和现象,可以用降低老的数据影响的方法:①渐消记忆法(遗忘因子法)②限定记忆法(固定窗法)当)(k ζ为不相关序列,最小二乘有一致性与无偏性,但)(k ζ往往为相关序列,为克服最小二乘有偏估计的缺点,引入辅助变量法和广义最小二乘法,增广最小二乘法等。
3. 渐消记忆法(遗忘因子法)αφφφαφθφθθ)1()]()([)()()1()()()1()()]1(ˆ)()()[()1(ˆ)(ˆ--=-+-=--+-=kPkkKIkPkkPkkkPkKkkkykKkkTTT一般99.0~95.0=α程序如下:结果如下:result3 =[ ; ; ; ; ]图8 渐消记忆法参数过渡过程4. 限定记忆法(固定窗法) 程序如下:结果如下:(较前三种方法偏差较大)result4 =[ ; ; ; ; ]5. 辅助变量法(IV ) (1).辅助变量ZY Z Z Z Z Y Z Z Z Z Y Z Z Q Q Z E Z E T T TT T T T T T T T 111)(ˆ)()()(噪声不相关Z ,0)(---=-=⇒+===φθζφφθζφθφφζ其中,辅助变量估计值由强烈相关与为非奇异阵,,与(2).计算步骤:①先根据实测数据最小二乘求粗略θˆ(为有偏估计) ②)(ˆ)()(ˆ)(ˆ)(ˆ11k y k u z b k y z a,得到辅助变量代入--= ③n )()(ˆ)(),(Z k u k yk u k y 构造,用构造用φ ④n T n T Y Z Z =θφ (3).递推:RIV )1()]()([)()()1()()()1()()]1(ˆ)()()[()1(ˆ)(ˆ--=-+-=--+-=k P k z k K I k P k z k P k k z k P k K k k k y k K k k T T T φαθφθθ初始条件:I c P 20,0ˆ==θ缺点: P0的选择非常敏感,一个改进方法是,用递推最小二乘辨识算法作为启动方法,然后转换到辅助变量法。
程序如下:结果如下:result5 =[ ; ; ; ; ]图9 辅助变量法参数过渡过程6. 广义最小二乘法(GLS )(1)广义最小二乘法的基本思想:由于)(k ξ在n+k 个采样周期的时差范围内具有自相关性,从而使θ的最小二乘估计为有偏的,所以引入一个所谓成形滤波器(白化滤波器),把相关噪声)(k ξ转化成白噪声)(k ε。
如果知道有色噪声序列的相关性:)()()()(11k z d k z c εξ--= 令)()()(111---=z d z c z f ,有)()(1)(1k z f k εξ-= 广义最小二乘法(GLS)是建立在最小二乘法(LS)的基础上的。
基本最小二乘法只是广义最小二乘法在1)(1=-z f 时的特例。
(2)广义最小二乘法计算步骤:广义最小二乘法的关键问题是如何用比较简单的方法找到成形滤波器的系数。
其计算是逐次逼近法。
①应用输入输出数据按最初模型求出θ的最小二乘估计。
这个估计值是不精确的,它只是被估参数的一次近似。
②计算残差e (k ),并拟合成形滤波器的模型:)(ˆ)1(ˆ)(ˆ)(ˆ)1(ˆ)(y )(101n k y b k u b k u b n k y a k y a k k e nn -------++-+= 得到 T mT T f f f e f ]ˆˆˆ[][ˆ211 =ΩΩΩ=- 其中 ⎥⎥⎦⎤⎢⎢⎣⎡+--+-+--=Ω)()1()1()(N m n e N n e m n e n e ③应用所得的成形滤波器,对输入输出数据滤波:⎩⎨⎧-++-+=-++-+=)(ˆ)1(ˆ)()()(ˆ)1(ˆ)()(11m k u f k u f k u k u m k y f k y f k y k y m m 其中,m 为噪声模型的阶,一般事先不知道,实际经验表明指定m 为2或3可以得到比较满意的输出。
④按新的输入、输出模型求出参数θ的第二次估计值θˆ。
结果如下:Result6 =[ ; ; ; ; ]7. 广义递推最小二乘法(GLS )广义最小二乘法的递推计算过程可分成两个部分:(1)按递推最小二乘法(RLS),随着N 的增大,不断计算Nθˆ(逐步接近于无偏)和Nf ˆ(逐步使噪声白化); (2)在递推过程中,N θˆ和Nf ˆ是时变的,则过滤信号)(),(k y k u 及残差)(k e 是由时变系统产生,要不断计算。
因而,递推广义最小二乘法由两组普通的递推最小二乘法组成,它们是通过滤波算法联系起来的: ⎪⎪⎪⎩⎪⎪⎪⎨⎧ΦΦ=+-=+=-+=-+++++++++++++++1)1(1)1(1)1(11)1(1)1()1(11)1(11)1(1)1(111)1(11][11)ˆ(ˆˆT N N N T N N T N N N N N N N T N N N N N T N N N N N P P P P P P P P K y K ϕϕϕϕϕϕϕθϕθθ ⎪⎪⎪⎩⎪⎪⎪⎨⎧ΩΩ=+-=+=-+=-+++++++++++++++1)2(1)2(1)2(11)2(1)2()2(11)2(11)2(1)2(111)2(11][11)ˆ(ˆˆT N N N T N N T N N N N N N N T N N N N N T N N N N N P P P P P P P P K f e K f f ωωωωωωωω 结果如下:result7 =[ ; ; ; ; ]噪声传递系数的估计结果:[; ]图10 广义递推最小二乘参数过渡过程8.增广矩阵法(ELS/RELS)(增广最小二乘法)增广矩阵法是把观测矩阵适当增大,使得有偏估计的程度得到一定改善。