当前位置:   article > 正文

最小二乘系统辨识课 中篇:递归最小二乘

递归最小二乘

前言

本篇记录系统辨识课中的递归最小二乘原理。

最小二乘估计

如下的系统辨识模型:
{ y ( 1 ) = φ T ( 1 ) θ + v ( 1 ) y ( 2 ) = φ T ( 2 ) θ + v ( 2 ) . . . y ( t ) = φ T ( t ) θ + v ( t ) 设 : Y t = [ y ( 1 ) y ( 2 ) . . . y ( t ) ] T H t = [ φ ( 1 ) φ ( 2 ) . . . φ ( t ) ] T V t = [ v ( 1 ) v ( 2 ) . . . v ( n ) ] T 有 : Y t = H t θ + V t \left \{

y(1)=φT(1)θ+v(1)y(2)=φT(2)θ+v(2)...y(t)=φT(t)θ+v(t)
\right . \\ \quad \\
Yt=[y(1)y(2)...y(t)]THt=[φ(1)φ(2)...φ(t)]TVt=[v(1)v(2)...v(n)]T
\\ \quad \\ 有: Y_t=H_t\theta +V_t y(1)y(2)y(t)=φT(1)θ+v(1)=φT(2)θ+v(2)...=φT(t)θ+v(t)YtHtVt=[y(1)y(2)...y(t)]T=[φ(1)φ(2)...φ(t)]T=[v(1)v(2)...v(n)]TYt=Htθ+Vt

参数的最小二乘估计可表示为:
θ ^ L S = ( H t T H t ) − 1 H t T Y t \hat\theta_{LS}=(H_t^TH_t)^{-1}H_t^TY_t θ^LS=(HtTHt)1HtTYt

上面的方法在每个新时刻的输入输出数据更新时,都要重估计,计算负载很大。

递归最小二乘估计

原理

递归最小二乘估计采用了增量思路,推导如下:

P − 1 ( t ) = H t T H t = ∑ i = 1 t φ ( i ) φ T ( i ) = ∑ i = 1 t − 1 φ ( i ) φ T ( i ) + φ ( t ) φ T ( t ) = P − 1 ( t − 1 ) + φ ( t ) φ T ( t ) θ ^ ( t ) = ( H t T H t ) − 1 H t T Y t = P ( t ) H t T Y t = P ( t ) [ H t − 1 T φ ( t ) ] [ Y t − 1 T y ( t ) ] T = P ( t ) H t − 1 T Y t − 1 T + P ( t ) φ ( t ) y ( t ) = P ( t ) P − 1 ( t − 1 ) P ( t − 1 ) H t − 1 T Y t − 1 T + P ( t ) φ ( t ) y ( t ) = P ( t ) P − 1 ( t − 1 ) θ ^ ( t − 1 ) + P ( t ) φ ( t ) y ( t ) = P ( t ) [ P − 1 ( t ) − φ ( t ) φ T ( t ) ] θ ^ ( t − 1 ) + P ( t ) φ ( t ) y ( t ) = θ ^ ( t − 1 ) − P ( t ) φ ( t ) φ T ( t ) θ ^ ( t − 1 ) + P ( t ) φ ( t ) y ( t ) = θ ^ ( t − 1 ) + P ( t ) φ ( t ) [ y ( t ) − φ T ( t ) θ ^ ( t − 1 ) ] 引 理 : 矩 阵 A , B , C , 若 ( I + C A − 1 B ) 与 A 都 可 逆 , 则 : ( A + B C ) − 1 = A − 1 − A − 1 B ( I + C A − 1 B ) − 1 C A − 1 P − 1 ( t ) = P − 1 ( t − 1 ) + φ ( t ) φ T ( t ) 把 后 面 的 式 子 取 逆 , 根 据 引 理 有 : P ( t ) = P ( t − 1 ) − P ( t − 1 ) φ ( t ) φ T ( t ) P ( t − 1 ) 1 + φ T ( t ) P ( t − 1 ) φ ( t ) P ( t ) φ ( t ) = P ( t − 1 ) φ ( t ) 1 + φ T ( t ) P ( t − 1 ) φ ( t ) L ( t ) = P ( t ) φ ( t ) P^{-1}(t)=H_t^TH_t=\sum_{i=1}^t \varphi(i)\varphi^T(i)=\sum_{i=1}^{t-1} \varphi(i)\varphi^T(i) + \varphi(t)\varphi^T(t) = P^{-1}(t-1)+ \varphi(t)\varphi^T(t) \\ \quad \\

θ^(t)=(HtTHt)1HtTYt=P(t)HtTYt=P(t)[Ht1Tφ(t)][Yt1Ty(t)]T=P(t)Ht1TYt1T+P(t)φ(t)y(t)=P(t)P1(t1)P(t1)Ht1TYt1T+P(t)φ(t)y(t)=P(t)P1(t1)θ^(t1)+P(t)φ(t)y(t)=P(t)[P1(t)φ(t)φT(t)]θ^(t1)+P(t)φ(t)y(t)=θ^(t1)P(t)φ(t)φT(t)θ^(t1)+P(t)φ(t)y(t)=θ^(t1)+P(t)φ(t)[y(t)φT(t)θ^(t1)]
\\ \quad \\ 引理:矩阵A,B,C,若(I+CA^{-1}B)与A都可逆,则:\\ (A+BC)^{-1}=A^{-1}-A^{-1}B(I+CA^{-1}B)^{-1}CA^{-1} \\ \quad \\ P^{-1}(t)= P^{-1}(t-1)+ \varphi(t)\varphi^T(t) \\ \quad \\ 把后面的式子取逆,根据引理有:\\ P(t)=P(t-1)-\frac{P(t-1)\varphi(t)\varphi^T(t)P(t-1)}{1+\varphi^T(t)P(t-1)\varphi(t)} \\ \quad \\ P(t)\varphi(t)= \frac{P(t-1)\varphi(t)}{1+\varphi^T(t)P(t-1)\varphi(t)} \\ \quad \\ L(t)=P(t)\varphi(t) P1(t)=HtTHt=i=1tφ(i)φT(i)=i=1t1φ(i)φT(i)+φ(t)φT(t)=P1(t1)+φ(t)φT(t)θ^(t)=(HtTHt)1HtTYt=P(t)HtTYt=P(t)[Ht1Tφ(t)][Yt1Ty(t)]T=P(t)Ht1TYt1T+P(t)φ(t)y(t)=P(t)P1(t1)P(t1)Ht1TYt1T+P(t)φ(t)y(t)=P(t)P1(t1)θ^(t1)+P(t)φ(t)y(t)=P(t)[P1(t)φ(t)φT(t)]θ^(t1)+P(t)φ(t)y(t)=θ^(t1)P(t)φ(t)φT(t)θ^(t1)+P(t)φ(t)y(t)=θ^(t1)+P(t)φ(t)[y(t)φT(t)θ^(t1)]A,B,C(I+CA1B)A(A+BC)1=A1A1B(I+CA1B)1CA1P1(t)=P1(t1)+φ(t)φT(t)P(t)=P(t1)1+φT(t)P(t1)φ(t)P(t1)φ(t)φT(t)P(t1)P(t)φ(t)=1+φT(t)P(t1)φ(t)P(t1)φ(t)L(t)=P(t)φ(t)

于是,系统参数的递归最小二乘可表示为:
θ ^ ( t ) = θ ^ ( t − 1 ) + L ( t ) [ y ( t ) − φ T ( t ) θ ^ ( t − 1 ) ] ] L ( t ) = P ( t − 1 ) φ ( t ) 1 + φ T ( t ) P ( t − 1 ) φ ( t ) P ( t ) = [ I − L ( t ) φ T ( t ) ] P ( t − 1 ) , P ( 0 ) = p 0 I , p 0 = inf ⁡ φ ( t ) = [ . . . ] \hat\theta(t)=\hat\theta(t-1)+L(t)[y(t)-\varphi^T(t)\hat\theta(t-1)]] \\ \quad \\ L(t)=\frac{P(t-1)\varphi(t)}{1+\varphi^T(t)P(t-1)\varphi(t)} \\ \quad \\ P(t)=[I-L(t)\varphi^T(t)]P(t-1), P(0)=p_0I, p_0=\inf \\ \quad \\ \varphi(t)=[...] θ^(t)=θ^(t1)+L(t)[y(t)φT(t)θ^(t1)]]L(t)=1+φT(t)P(t1)φ(t)P(t1)φ(t)P(t)=[IL(t)φT(t)]P(t1),P(0)=p0I,p0=infφ(t)=[...]

新息,残差

新息 e ( t ) = y ( t ) − φ T ( t ) θ ^ ( t − 1 ) e(t)=y(t)-\varphi^T(t)\hat\theta(t-1) e(t)=y(t)φT(t)θ^(t1)
残差 ε ( t ) = y ( t ) − φ T ( t ) θ ^ ( t ) \varepsilon(t)=y(t)-\varphi^T(t)\hat\theta(t) ε(t)=y(t)φT(t)θ^(t)

数据饱和

现象

当输入输出时间序列足够长时,新的输入输出对递归最小二乘估计结果没有贡献的现象,称为数据饱和。

原因

P ( t ) = [ P − 1 ( t − 1 ) + φ ( t ) φ T ( t ) ] − 1 = > P ( t ) ≤ P ( t − 1 ) ( α I + 1 / p 0 ) t ≤ P − 1 ( t ) = P − 1 ( 0 ) + ∑ i = 1 t φ ( i ) φ T ( i ) ≤ ( β I + 1 / p 0 ) t lim ⁡ t − > inf ⁡ P − 1 ( t ) = 0 P(t)=[P^{-1}(t-1)+\varphi(t)\varphi^T(t)]^{-1} => P(t)\le P(t-1) \\ (\alpha I+1/p_0)t\le P^{-1}(t) = P^{-1}(0)+ \sum_{i=1}^t\varphi(i)\varphi^T(i) \le (\beta I+1/p_0)t \\ \lim_{t->\inf}P^{-1}(t) = 0 P(t)=[P1(t1)+φ(t)φT(t)]1=>P(t)P(t1)(αI+1/p0)tP1(t)=P1(0)+i=1tφ(i)φT(i)(βI+1/p0)tt>inflimP1(t)=0

解决方法:带遗忘因子的递归最小二乘

θ ^ ( t ) = θ ^ ( t − 1 ) + L ( t ) [ y ( t ) − φ T ( t ) θ ^ ( t − 1 ) ] ] L ( t ) = P ( t − 1 ) φ ( t ) λ + φ T ( t ) P ( t − 1 ) φ ( t ) P ( t ) = 1 λ [ I − L ( t ) φ T ( t ) ] P ( t − 1 ) , P ( 0 ) = p 0 I , p 0 = inf ⁡ φ ( t ) = [ . . . ] \hat\theta(t)=\hat\theta(t-1)+L(t)[y(t)-\varphi^T(t)\hat\theta(t-1)]] \\ \quad \\ L(t)=\frac{P(t-1)\varphi(t)}{\lambda+\varphi^T(t)P(t-1)\varphi(t)} \\ \quad \\ P(t)=\frac{1}{\lambda}[I-L(t)\varphi^T(t)]P(t-1), P(0)=p_0I, p_0=\inf \\ \quad \\ \varphi(t)=[...] θ^(t)=θ^(t1)+L(t)[y(t)φT(t)θ^(t1)]]L(t)=λ+φT(t)P(t1)φ(t)P(t1)φ(t)P(t)=λ1[IL(t)φT(t)]P(t1),P(0)=p0I,p0=infφ(t)=[...]

后记

本篇记录了递归最小二乘的推导,数据饱和现象以及解决方法。下篇将记录最小二乘中, φ T ( t ) \varphi^T(t) φT(t)的获取方法。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/131514
推荐阅读
相关标签
  

闽ICP备14008679号