受控自回归滑动平均模型(ARMAX)的系统辨识 您所在的位置:网站首页 car模型 受控自回归滑动平均模型(ARMAX)的系统辨识

受控自回归滑动平均模型(ARMAX)的系统辨识

2024-06-18 16:59| 来源: 网络整理| 查看: 265

文章目录 系统模型似然函数辨识过程关于参数的梯度与海森矩阵梯度海森矩阵

受控自回归滑动平均模型 (Controled Auto Regression and Moving Average model, CARMA),亦称带外部输入的自回归滑动平均模型 (Auto Regression and Moving Average model with eXogenous input, ARMAX)是应用非常广泛的线性系统模型,本文介绍该模型的一种系统辨识方法:最大似然法。

系统模型

y k + a 1 y k − 1 + ⋯ a n y k − n = b 1 u k − 1 + b n u k − n + e k + c 1 e k − 1 + ⋯ + c n e k − n y_k + a_1y_{k-1} + \cdots a_n y_{k-n} = \\ b_1u_{k-1}+ b_n u_{k-n} + e_{k} + c_1 e_{k-1} + \cdots + c_n e_{k-n} yk​+a1​yk−1​+⋯an​yk−n​=b1​uk−1​+bn​uk−n​+ek​+c1​ek−1​+⋯+cn​ek−n​ 即 y k = − ∑ i = 1 n a i y k − i + ∑ i = 1 n b i u k − i + ∑ i = 1 n c i e k − i + e k y_k = -\sum_{i=1}^n a_iy_{k-i} + \sum_{i=1}^n b_i u_{k-i}+ \sum_{i=1}^n c_i e_{k-i} + e_{k} yk​=−i=1∑n​ai​yk−i​+i=1∑n​bi​uk−i​+i=1∑n​ci​ek−i​+ek​ 该模型在 ARMA 的基础上考虑了外部输入 u ( k ) u(k) u(k) 对输出的影响,为方便讨论,在此设定 a , b , c a,b,c a,b,c 的下标都是从 1 1 1 到 n n n,实际上不必如此。

似然函数

在数理统计学中,似然函数是一种关于统计模型中的参数的函数,表示模型参数中的似然性。 给定输出x时,关于参数θ的似然函数L(θ|x)(在数值上)等于给定参数θ后变量X的概率:

L ( θ ∣ X ) = P ( X ∣ θ ) L(\theta | X) = P(X|\theta) L(θ∣X)=P(X∣θ)

在统计学中,“似然性”和“概率”有明确的区分。概率用于在已知一些参数的情况下,预测接下来的观测所得到的结果,而似然性则是用于在已知某些观测所得到的结果时,对有关事物的性质的参数进行估计。

假定误差 e ( k ) e(k) e(k) 服从 0 0 0 均值、方差为 σ 2 \sigma^2 σ2 的高斯分布,则有似然函数为: P ( Y N ∣ U N , Θ ) = P ( y N , … ∣ u N , … , Θ ) = P ( y 0 ) Π k = 1 N P ( y k ∣ Y k − 1 , U N , Θ ) = P ( y 0 ) Π k = 1 N P ( e k ) = P ( y 0 ) ( 2 π ) − N / 2 σ − N exp ⁡ [ − ( 1 / 2 σ 2 ) ∑ k = 1 N e k 2 ] (1) \begin{array}{ll} P(Y_N | U_N,\Theta) &= P(y_N, \ldots | u_N, \ldots, \Theta) \\\\ &= P(y_0)\Pi _{k=1}^NP(y_k| Y_{k-1},U_N,\Theta) \\\\ &= P(y_0)\Pi _{k=1}^NP(e_k) \\\\ &= P(y_0)(2\pi)^{-N/2}\sigma^{-N} \exp \left[ -(1/2\sigma^2)\sum_{k=1}^N e_k^2\right] \tag{1} \end{array} P(YN​∣UN​,Θ)​=P(yN​,…∣uN​,…,Θ)=P(y0​)Πk=1N​P(yk​∣Yk−1​,UN​,Θ)=P(y0​)Πk=1N​P(ek​)=P(y0​)(2π)−N/2σ−Nexp[−(1/2σ2)∑k=1N​ek2​]​(1) 其中 e k = y k − ϕ i Θ ϕ k = [ − y k − 1 , … , − y k − n ∣ u k − 1 , … , u k − n ∣ e k − 1 , … , e k − n ] ⊤ Θ = [ a 1 , … , a n ∣ b i , … , b n ∣ c 1 , … , c n ] ⊤ \begin{array}{ll} e_k &= y_k - \phi_i \Theta \\\\ \phi_k & = [-y_{k-1}, \ldots, -y_{k-n} | u_{k-1}, \ldots, u_{k-n} | e_{k-1}, \ldots, e_{k-n}]^\top \\\\ \Theta &= [a_1, \ldots, a_n | b_i, \ldots, b_n | c_1, \dots, c_n ]^\top \end{array} ek​ϕk​Θ​=yk​−ϕi​Θ=[−yk−1​,…,−yk−n​∣uk−1​,…,uk−n​∣ek−1​,…,ek−n​]⊤=[a1​,…,an​∣bi​,…,bn​∣c1​,…,cn​]⊤​ 最大化似然(1)等价于最小化负对数似然(2) J ( σ , Θ ) = N ln ⁡ σ + 1 2 σ 2 ∑ k N e k 2 (2) J(\sigma, \Theta) = N \ln \sigma + \frac{1}{2\sigma^2}\sum_k^N e_k^2 \tag{2} J(σ,Θ)=Nlnσ+2σ21​k∑N​ek2​(2)

辨识过程

在实际辨识过程中,由于参数 Θ \Theta Θ 未知,误差 e k e_k ek​ 不能精确获得,所以计算过程中用其估计值 ν k ≃ e k \nu_k \simeq e_k νk​≃ek​ 来替代。

代价函数: J ( σ ν , Θ ) = N ln ⁡ σ ν + 1 2 σ ν 2 ∑ k N ν k 2 (2) J(\sigma_\nu, \Theta) = N \ln \sigma_{\nu} + \frac{1}{2\sigma_\nu^2}\sum_k^N \nu_k^2 \tag{2} J(σν​,Θ)=Nlnσν​+2σν2​1​k∑N​νk2​(2)

采集 N N N 组数据,估计一个初始 Θ 0 \Theta_0 Θ0​,比如先假定误差项系数 c i = 0 c_i=0 ci​=0,用最小二乘法求解 a i , b i a_i, b_i ai​,bi​; k = 0 k = 0 k=0固定 Θ \Theta Θ(即固定 ν \nu ν),更新 σ ν \sigma_\nu σν​: σ ν = arg min ⁡ σ ν J = ∑ k ν k 2 / N \sigma_\nu = \argmin_{\sigma_\nu} J = \sqrt{\sum_k \nu_k^2/N} σν​=σν​argmin​J=k∑​νk2​/N ​固定 σ ν \sigma_\nu σν​, 更新 Θ \Theta Θ,即最小化 L = ∑ k ν k 2 L = \sum_k \nu_k^2 L=k∑​νk2​ 采用牛顿法更新参数: Θ t + 1 = Θ t − H − 1 ∇ Θ L \Theta_{t+1} = \Theta_t - H^{-1} \nabla_{\Theta} L Θt+1​=Θt​−H−1∇Θ​L k = k + 1 k = k +1 k=k+1,重复以上交替优化过程直到 σ t 2 − σ t − 1 2 σ t − 1 2 < 1 0 − 4 \frac{\sigma_t^2 - \sigma_{t-1}^2}{\sigma_{t-1}^2} < 10^{-4} σt−12​σt2​−σt−12​​


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有