1 GM系列单变量预测—GM(1,1)残差模型

1.1 基本概念

  • 导数还原值:

    $X^{(0)}$为原始数据,$X^{(1)}$为$X^{(0)}$的$1-AGO$序列,$GM(1,1)$模型的时间响应式为:
    $$
    \hat x^{(1)}(k+1)={(x^{(0)}(1)+\frac ba)}e^{(-ak)}+\frac ba
    $$
    则称:
    $$
    d\hat x^{(1)}(k+1)=(-a){(x^{(0)}(1)+\frac ba)}e^{(-ak)}
    $$
    为导数还原值。

  • 累减还原值:

    $\hat x^{(0)}(k+1)=\hat x^{(1)}(k+1)-\hat x^{(1)}(k)$称为累减还原值。

    ====================导数还原值与累减还原值一致,当且仅当$|a|\rightarrow0$时======================

    证明:
    $$
    \begin{aligned}
    \hat x^{(0)}(k+1)&=\hat x^{(1)}(k+1)-\hat x^{(1)}(k)\\
    &={(x^{(0)}(1)+\frac ba)}e^{(-ak)}+\frac ba-{({(x^{(0)}(1)+\frac ba)}e^{-a(k-1)}+\frac ba)}\\
    &=(x^{(0)}(1)+\frac ba)e^{(-ak)}(1-e^a)\\
    \end{aligned}
    $$
    对$e^a​$进行泰勒展开可得:
    $$
    e^a=1+a+\frac{a^2}{2!}+\cdots+\frac{a^n}{n!}+\cdots
    $$

    $$
    1-e^a=-(a+\frac{a^2}{2!}+\cdots+\frac{a^n}{n!}+\cdots)
    $$
    所以
    $$
    \hat x^{(0)}(k+1)=(x^{(0)}(1)+\frac ba)e^{(-ak)}(-a-\frac{a^2}{2!}-\cdots-\frac{a^n}{n!}-\cdots))
    $$
    由上述导数还原值与累减还原值对比可知,当$|a|\rightarrow0$时,$\hat x^{(0)}(k+1)\approx d\hat x^{(1)}(k+1)$

    此时GM(1,1)即可以看作是差分方程也可以看作为微分方程。

  • 可建模残差尾段:

    已知$X^{(1)}$的残差数列为:
    $$
    \xi^{(0)}={\{\xi^{(0)}(1),\xi^{(0)}(2),\cdots,\xi^{(0)}(n)\}}
    $$
    其中$\xi^{(0)}(k)= x^{(1)}(k)-\hat x^{(1)}(k)​$,若存在$k_0​$满足:

    1)$\forall k\ge k_0,\xi^{(0)}(k)符号一致​$;

    2)$n-k_0\ge4​$;

    则称
    $$
    (|\xi^{(0)}(k_0)|,|\xi^{(0)}(k_0+1|,\cdots,|\xi^{(0)}(n)|)
    $$
    为可建模残差尾段,记为
    $$
    \begin{aligned}
    \xi^{(0)}&=(\xi^{(0)}(k_0),\xi^{(0)}(k_0+1),\cdots,\xi^{(0)}(n))\\
    &=(|\xi^{(0)}(k_0)|,|\xi^{(0)}(k_0+1|,\cdots,|\xi^{(0)}(n)|)
    \end{aligned}
    $$

1.2 模型说明与结论

  • GM(1,1)残差模型作用:当原始数据序列建立的GM(1,1)模型检验不合格(需要三种检验都满足合格要求,模型检验才为合格)时,需要用GM(1,1)残差模型来修正。

  • 综上所述,当$|a|\rightarrow0​$时,导数还原值与累减还原值不一致,此时为了减小复运算造成的误差,需要进行残差修正——用$X^{(1)}​$的残差修正$X^{(1)}​$的模拟值$\hat x^{(1)}(k+1)​$。

  • 已知
    $$
    \begin{aligned}
    \xi^{(0)}&=(\xi^{(0)}(k_0),\xi^{(0)}(k_0+1),\cdots,\xi^{(0)}(n))\\
    &=(|\xi^{(0)}(k_0)|,|\xi^{(0)}(k_0+1|,\cdots,|\xi^{(0)}(n)|)
    \end{aligned}
    $$
    为可建模残差尾段,若1-AGO序列为
    $$
    \xi^{(1)}=(\xi^{(1)}(k_0),\xi^{(1)}(k_0+1),\cdots,\xi^{(0)}(n))
    $$
    则其GM(1,1)模型的时间响应式为
    $$
    \hat\xi^{(1)}(k+1)=(\xi^{(0)}(k_0)-\frac {b_\xi}{a_\xi})e^{-a_\xi(k-k_0)}+\frac{b_\xi}{a_\xi},k\ge k_0
    $$
    则残差尾段$\hat\xi^{(0)}​$的模拟序列为
    $$
    \hat\xi^{(0)}=(\hat\xi^{(0)}(k_0),\hat\xi^{(0)}(k_0+1),\cdots,\hat\xi^{(0)}(n))
    $$
    其中
    $$
    \begin{aligned}
    \hat\xi^{(0)}(k+1)&=\hat\xi^{(1)}(k+1)-\hat\xi^{(1)}(k)\\
    &=(\xi^{(0)}(k_0)-\frac {b_\xi}{a_\xi})e^{-a_\xi(k-k_0)}-(\xi^{(0)}(k_0)-\frac {b_\xi}{a_\xi})e^{-a_\xi(k-k_0-1)}\\
    &=(1-e^{a_\xi})(\xi^{(0)}(k_0)-\frac {b_\xi}{a_\xi})e^{-a_\xi(k-k_0)}\\
    &\approx(-a_\xi)(\xi^{(0)}(k_0)-\frac {b_\xi}{a_\xi})e^{-a_\xi(k-k_0)},k\ge k_0
    \end{aligned}
    $$

    • 用$X^{(1)}$的残差$\hat\xi^{(0)}$修正$X^{(1)}$的模拟值$\hat x^{(1)}(k+1)$,则修正后的时间响应式为:
      $$
      \hat x^{(1)}(k+1)=
      \begin{cases}
      (x^{(0)}(1)-\frac ba)e^{-ak}+\frac ba & k\lt k_0\\
      (x^{(0)}(1)-\frac ba)e^{-ak}+\frac ba+\hat\xi^{(0)}(k+1) &k\ge k_0
      \end{cases}\\
      $$
      其中
      $$
      \hat\xi^{(0)}(k+1)=(\pm a_\xi)(\xi^{(0)}(k_0)-\frac {b_\xi}{a_\xi})e^{-a_\xi(k-k_0)},k\ge k_0
      $$
      此时称该模型为残差修正GM(1,1)模型,简称残差GM(1,1)模型。其中残差修正值为:
      $$
      \hat\xi^{(0)}(k+1)=(\pm a_\xi)(\xi^{(0)}(k_0)-\frac {b_\xi}{a_\xi})e^{-a_\xi(k-k_0)},k\ge k_0
      $$
      这应与残差尾段符号保持一致
  • 用$X^{(0)}$的残差
    $$
    \epsilon^{(0)}={\{\epsilon^{(0)}(k),k=1,2,\cdots,n}\}
    $$
    其中
    $$
    \epsilon^{(0)}(k)=|x^{(0)}(k)-\hat x^{(0)}(k)|
    $$
    修正$X^{(0)}$的模拟值$\hat x^{(0)}(k+1)$,则根据$\hat X^{(1)}到\hat X^{(0)}$的不同还原方式得到两种还原式残差修正模型的时间响应式,即累减还原式的残差修正模型、导数还原式的残差修正模型。

    当残差取值为:
    $$
    \epsilon^{(0)}=(\epsilon^{(0)}(k_0),\epsilon^{(0)}(k_0+1),\cdots,\epsilon^{(0)}(n))
    $$
    则称之为可建模残差尾段,利用上述处理方法,同理得出残差尾段$\epsilon^{(0)}​$的模拟序列为:
    $$
    \hat\epsilon^{(0)}={\{\hat\epsilon^{(0)}(k),k=k_0,k_0+1,\cdots,n\}}\\
    其中\hat\epsilon^{(0)}(k+1)=(-a_\epsilon)(\frac{b_\epsilon}{a_\epsilon}+\epsilon^{(0)}(k_0))e^{-a_\epsilon(k-k_0)}
    $$

    • 累减还原式的残差修正模型:若
      $$
      \hat x^{(0)}(k+1)=\hat x^{(1)}(k+1)-\hat x^{(1)}(k)=(1-e^a)(x^{(0)}(1)+\frac ba)e^{(-ak)}
      $$
      则对应的残差修正时间响应式为:
      $$
      \hat x^{(0)}(k+1)=
      \begin{cases}
      (1-e^a)(x^{(0)}(1)+\frac ba)e^{(-ak)} & k\lt k_0\\
      (1-e^a)(x^{(0)}(1)+\frac ba)e^{(-ak)}\pm(a_\epsilon)(\frac{b_\epsilon}{a_\epsilon}+\epsilon^{(0)}(k_0))e^{-a_\epsilon(k-k_0)} &k\ge k_0
      \end{cases}
      $$

    • 导数还原式的残差修正模型:若
      $$
      d\hat x^{(1)}(k+1)=(-a){(x^{(0)}(1)+\frac ba)}e^{(-ak)}
      $$
      则对应的残差修正时间响应式为:
      $$
      \hat x^{(0)}(k+1)=
      \begin{cases}
      (-a){(x^{(0)}(1)+\frac ba)}e^{(-ak)} & k\lt k_0\\
      ((-a){(x^{(0)}(1)+\frac ba)}e^{(-ak)}\pm(a_\epsilon)(\frac{b_\epsilon}{a_\epsilon}+\epsilon^{(0)}(k_0))e^{-a_\epsilon(k-k_0)} &k\ge k_0
      \end{cases}
      $$

最后修改:2022 年 09 月 01 日
如果觉得我的文章对你有用,请随意赞赏