Matlab最小二乘类辨识方法的比较-辨识作业.rar
很久以前做过的一篇课程论文,是系统辨识中最基础的几种最小二乘类辨识方法的比较,最小二乘法,递推最小二乘和广义最小二乘,发上来和大家分享一下,
注意: 本附件免费提供,但是每下载一次系统会扣一个M币以控制下载流量,右键单击另存为,不要用迅雷.迅雷下载时每线程收费1M币,如默认设置为5个线程时收费就是5个M币!
课题内容为
已知系统模型:x-1.5x 0.7x=2u 0.5u, y=x ν, ν=αγ, u、x、y、ν分别为模型输入、模型输出、测量输出、干扰噪声。输入u为逆m序列:信号幅值a=1、寄存器位数为n=5,重复周期数q=40。α为噪信比调整因子,噪信比定义为:NSR=σv/σx*100% ,σx、σv分别为模型输出x和噪声ν的均方差(标准差),γ有两种模型:γ为白噪声,γ为有色噪声,噪声模型为:
γ=e 0.5e 0.9γ-0.95γ
,e为白噪声。定义辨识误差值:δ=
,其中:N为独立的实验次数,
为模型真值,
为估计值。
完成下列问题:
1.编制Matlab程序,产生u,x,取前1024点绘制u和x图形。(10分)
2.编制Matlab程序,取NSR=20%,用同一噪声源产生两种噪声模型,分别绘制ν、y曲线。(10分)
3.编制Matlab程序,取NSR=0%、5%、10%、15%、20%、25%、30%、35%、40%、45%、50%,ν分别采用白噪声模型和有色噪声模型,每种工况下取独立试验次数N=50(每次独立产生噪声),数据序列取前1024点,用批次最小二乘法辨识模型,分别画出NSR~δ曲线,以此说明噪声对辨识精度的影响。(20分)
4.编制Matlab程序,取NSR=10%、40%,ν分别取白噪声模型和有色噪声模型,用递推最小二乘法辨识模型参数,对比画出各参数辨识结果随递推次数变化的曲线。为了对比研究,必须保证在同一组u、x序列下,用同一白噪声源γ产生给定噪信比的白噪声和有色噪声干扰。(30分)
5.编制Matlab程序,取NSR=10%、30%,ν取有色噪声模型,分别用递推最小二乘和广义最小二乘递推法辨识系统参数,对比画出各参数辨识结果随γ次数变化的曲线。为了对比研究,必须保证在同一组u、y序列下进行辨识试验。(30分)
摘要:本文系统的探讨了三种最小二乘类辨识方法的原理和性能,并对各种方法在各种不同的环境下进行了MATLAB仿真,仿真结果证明:最小二乘法不适合实时处理,在同等情况下,递推最小二乘的辨识速度较快,但在有色噪声干扰下效果不理想,广义最小二乘法的辨识效果最好,且不受噪声是否有色的影响,但是费时最多。
2022-03-22 14:25:50
414KB
matlab
1