吴爱国.系统辨识讲义
丁峰.系统辨识新论
最近看完了系统辨识课程的讲义,总结一下讲义上的内容:
系统辨识分为系统结构辨识和系统参数辨识。课程的内容是系统参数的辨识,即假设系统结构已知。
辨识的四要素:输入输出数据,模型集,准则函数,优化方法。
课程中模型的结构已知,实际的辨识中会存在多个可能的模型结构,构成待辨识的模型集。
A(z)=1+a1z−1+a2z−2+.....+anaz−naB(z)=b1z−1+b2z−2+.....+bnbz−nbC(z)=1+c1z−1+c2z−2+.....+cncz−ncD(z)=1+d1z−1+d2z−2+.....+dndz−ndF(z)=1+f1z−1+f2z−2+.....+fnfz−nf
随机白噪声 v(t),E(v(t))=0,D(v(t))=σ2
一.常用随机系统模型
常用的辨识模型有以下几类:
1.时间序列模型
(1)自回归模型(AR)A(z)y(t)=v(t)
该模型表示当前值是过去值的组合。
(2)滑动平均模型(MA)y(t)=D(z)v(t)
当前值是过去白噪声的组合。
(3)滑动平均自回归模型(ARMA)A(z)y(t)=D(z)v(t)
(4)确定性模型(ARMA)A(z)y(t)=B(z)u(t)
2.方程误差模型
误差是指描述输入和输出之间的差分方程的误差.
(1)受控自回归模型(ARX)A(z)y(t)=B(z)u(t)+v(t)
(2)受控自回归滑动平均模型(ARMAX)A(z)y(t)=B(z)u(t)+D(z)v(t)
(3)受控ARAR模型(ARARX)A(z)y(t)=B(z)u(t)+v(t)/C(z)
(4)受控ARARMA模型(ARARMAX)A(z)y(t)=B(z)u(t)+C(z)D(z)v(t)
3.输出误差模型
(1)输出误差模型(OE)y(t)=A(z)B(z)u(t)+v(t)
(2)输出误差滑动平均模型(OEMA)y(t)=A(z)B(z)u(t)+D(z)v(t)
(3)输出误差自回归模型(OEAR)y(t)=A(z)B(z)u(t)+C(z)1v(t)
(4)输出误差自回归滑动平均模型(OEARMA)y(t)=A(z)B(z)u(t)+C(z)D(z)v(t)
二.辨识模型
为了辨识系统参数,一般把系统的参数写成一个参数向量形式,输入输出写成一个信息向量形式,就得到系统的辨识模型,也称为辨识表达式.一般单输入单输出线性参数系统的辨识模型可以表达为:y(t)=φT(t)θ+v(t)
三. 最小二乘基本原理
以一个典型的受控自回归模型为例:
设系统的模型为y(t)+a1y(t−1)+a−2y(t−2)=b1u(t)+b2u(t−1)+v(t)
将其写为如下的形式:y(t)=−a1y(t−1)−a2y(t−2)+b1u(t)+b2u(t−1)+v(t)
设观测的数据长度为t,对这个模型有:y(3)=−a1y(2)−a2y(1)+b1u(3)+b2u(2)+v(3)y(4)=−a1y(3)−a2y(2)+b1u(4)+b2u(3)+v(4)...............y(t)=−a1y(t−1)−a2y(t−2)+b1u(t)+b2u(t−1)+v(t)
令Y=[y(3),y(4)....y(t)]TφT(i)=[−y(i−1),−y(i−2),u(i),u(i−1)]θ=[a1,a2,b1,b2]H=[φ(3),φ(4),.....φ(t)]TV=[v(3),v(4)....v(t)]T
我们可以得到:Y=Hθ+V
令准则函数为J(θ)=(Y−Hθ)T(Y−Hθ)
J对θ求偏导,并令其偏导数为零.得到θ的估计值θLS=(HTH)−1HTY
四.最小二乘估计的统计特性
1.无偏性定理
已知θ的最小二乘估计θLS=(HTH)−1HTY,辨识模型可以写成:Y=Hθ+W,W代表任意形式的噪声.在这里先不考虑W中未知参数的辨识,只考虑与输入和输出(可测)有关的待估计参数.
则θLS的数学期望E(θLS)=E[(HTH)−1HTY]=E[(HTH)−1HT(Hθ+W)]θ=E[θ+(HTH)−1HTW]=θ+E[(HTH)−1HTW]其中(HTH)−1HT为常数,所以E(θLS)=θ+(HTH)−1HTE[W]当W为白噪声,则E(θLS)=θ.E(θLS)为θ的无偏估计.
或当噪声向量W的均值为0,且与H无关时,E(θLS)为θ的无偏估计.
2.估计误差协方差定理
对一个系统Y=Hθ+W,设噪声向量W的均值为零,协方差矩阵cov[W]=Rv,且W与H相互独立,则参数估计误差θLS~=θLS−θ的协方差矩阵为cov[θLS~]=E[(HTH)−1HTRvH(HTH)−1]
cov[θLS~]=σ2E[(HTH)−1]
如果W是一白噪声序列,且其方差为σ2,则cov[θLS~]=σ2E[(HTH)−1]
3.噪声方差估计定理
对一个系统Y=Hθ+W,设W和H是统计独立的零均值白噪声向量,W的分量为零均值白噪声向量v(t),则v(t)的方差σ2的估计为:σ2^=t−nJ[θLS~],t充分大时其中n:=dimθ=θ的维数
五.常用的各类最小二乘辨识算法
1.递推最小二乘辨识
适用模型
受控自回归模型(ARX):A(z)y(t)=B(z)u(t)+v(t)
将上述模型写为辨识模型的形式:Y=Hθ+W
递推最小二乘的算法如下:θ^(t)=θ^(t−1)+L(t)[y(t)−φT(t)θ^(t−1)]L(t)=1+φT(t)P(t−1)φ(t)P(t−1)φ(t)P(t)=[I−L(t)φT(t)]P(t−1),P(0)=p0Iφ(t)=[−y(t−1),−y(t−2)....,−y(t−na),u(t−1),u(t−2),.....u(t−nb)]
计算顺序如下:
P(0)−>L(1)−>θ^(1)−>P(1)−>L(1)−>θ^(2)−>.....
其中P(0)一般取106数量级.
2.带遗忘因子最小二乘系统辨识
适用模型
受控自回归模型(ARX):A(z)y(t)=B(z)u(t)+v(t)
将上述模型写为辨识模型的形式:Y=Hθ+W.
算法如下:
θ^(t)=θ^(t−1)+L(t)[y(t)−φT(t)θ^(t−1)]L(t)=λ+φT(t)P(t−1)φ(t)P(t−1)φ(t)P(t)=λ1[I−L(t)φT(t)]P(t−1),P(0)=p0I
λ一般取0.9~1,当λ取1时即为标准最小二乘算法.
3.新息与残差之间的关系
新息:e(t)=y(t)−φT(t)θ^(t−1)
残差:ε(t)=y(t)−φT(t)θ^(t)
e(t)=[1+λ1φT(t)θ^(t)]ε(t)
4.有限数据窗最小二乘系统辨识
适用模型
受控自回归模型(ARX):A(z)y(t)=B(z)u(t)+v(t)
将上述模型写为辨识模型的形式:Y=Hθ+W.
算法如下:
θ^(t)=θ^(t−1)+P(t)[φ(t),−φ(t−p)][y(t)−φT(t)θ^(t−1),y(t−p)−φT(t−p)θ^(t−1)]TQ(t)=P(t−1)−1+φT(t)P(t−1)φ(t)P(t−1)φ(t)φT(t)P(t−1)P(t)=Q(t)+1−φT(t−p)Q(t)φ(t−p)Q(t)φ(t−p)φT(t−p)Q(t)
5.带遗忘因子的有限数据窗最小二乘算法
适用模型
受控自回归模型(ARX):A(z)y(t)=B(z)u(t)+v(t)
将上述模型写为辨识模型的形式:Y=Hθ+W.
θ^(t)=α(t−1)+P(t)φ(t)[y(t)−φT(t)α(t−1)]P(t)=λ1[Pα(t−1)−λ+φT(t)Pα(t−1)φ(t)Pα(t−1)φ(t)φT(t)Pα(t−1)]α(t−1)=θ^(t−1)−λp−1Pα(t−1)φ(t−p)[y(t)−φT(t−p)θ^(t−1)]Pα(t−1)=P(t−1)+λ−1−φT(t−p)Pα(t−1)φ(t−p)Pα(t−1)φ(t−p)φT(t−p)Pα(t−1)