灰色预测 GM(1,1) (grey prediction)

概念:
灰色预测是一种对含有不确定因素的系统进行预测的方法。灰色预测通过鉴别系统因素之间发展趋势的相异程度,即进行关联分析,并对原始数据进行生成处理来寻找系统变动的规律,生成有较强规律性的数据序列,然后建立相应的微分方程模型,从而预测事物未来发展趋势的状况。其用等时距观测到的反映预测对象特征的一系列数量值构造灰色预测模型,预测未来某一时刻的特征量,或达到某一特征量的时间。

应用:
基于原本属于混沌状态的数据,在预测应用上,如气象预报、地震预报、病虫害预报等。

灰色系统:
黑箱概念的一种推广。我们把既含有已知信息又含有未知信息的系统称为灰色系统. 作为两个极端,我们将称信息完全未确定的系统为黑色系统;称信息完全确定的系统为白色系统.区别白色系统与黑色系统的重要标志是系统各因素之间是否具有确定的关系。

灰色生成:
将原始数据列中的数据,按某种要求作数据处理称为生成. 客观世界尽管复杂,表述其行为的数据可能 是杂乱无章的,然而它必然是有序的,都存在着某种内在规律,不过这些规律被纷繁复杂的现象所掩盖,人们很难直接从原始数据中找到某种内在的规律.对原始数据的生成就是企图从杂乱无章的现象中去发现内在规律。

常用的灰色系统生成方式有: 累加生成,累减生成, 均值生成,级比生成等。

累加生成:
通过数列间各时刻数据的依个累加以得到新的数据与数列.累加前的数列称原始数列,累加后的数列称为生成数列.累加生成使灰色过程由灰变白的一种方法,它在灰色系统理论中占有极其重要地位,通过累加生成可以看出灰量积累过程的发展态势,使离乱的原始数据中蕴含的积分特性或规律加以显化.累加生成是对原始数据列中各时刻的数据依次累加,从而生成新的序列的一种手段.

建模步骤:

  • 建模机理;
  • 把原始数据加工成生成数;
  • 对残差(模型计算值与实际值之差)修订后,建立差分微分方程模型;
  • 基于关联度收敛的分析;
  • gm模型所得数据须经过逆生成还原后才能用。
  • 采用“五步建模(系统定性分析、因素分析、初步量化、动态量化、优化)”法,建立一种差分微分方程模型gm(1,1)预测模型。

一阶微分的GM(1,1)模型:
它是基于随机的原始时间序列,经按时间累加后所形成的新的时间序列呈现的规律可用一阶线性微分方程的解来逼近。经证明,经一阶线性微分方程的解逼近所揭示的原始时间序列呈指数变化规律。因此,当原始时间序列隐含着指数变化规律时,灰色模型GM(1,1)的预测是非常成功的。

举例:

归纳上述式子可得:
x^{(1)}(i)=\left \{ \right.\sum_{j=1}^{i}}x^{(0)}(j)\mid i=1,2,\cdots,N\left. \right \}

设GM(1,1):
\frac{\mathrm{d}x }{\mathrm{d} t}+a x=u 
其中:a称为发展灰度,u称为内生控制灰数。

则其离散形式为:
\bigtriangleup ^{(1)}(x^{(1)}(k+1))+\alpha(x(k+1))=\mu............①
由导数定义:\frac{\mathrm{d} x}{\mathrm{d} t}=\lim_{\bigtriangleup t\rightarrow 0}\frac{x(t+\bigtriangleup t)-x(t)}{\bigtriangleup t}
\bigtriangleup t很小时,近似有:x(t+1)-x(t)=\frac{\bigtriangleup x}{\bigtriangleup t}

于是写成离散形式:\frac{\bigtriangleup x}{\bigtriangleup t}=x(k+1)-x(k)=\bigtriangleup ^{(1)}(x(k+1))...........②、③

用前后两个时刻的平均值代替x^{(i)}(i)x^{(1)}(k+1)=\frac{1}{2}\left [ x^{(1)}(k+1)+x^{(1)}(k) \right ]............④

结合①②③④整理得如下:

x^{(0)}(k+1)=a[-\frac{1}{2}(x^{(1)}(k)+x^{(1)}(k+1))]+u

写为矩阵表达式

\begin{bmatrix} x^{(0)}(2) \\ x^{(0)}(3) \\ \vdots \\ x^{(0)}(N) \end{bmatrix}= \begin{bmatrix} -\frac{1}{2} \left [ x^{(1)}(2)+x^{(1)}(1) \right ]& 1\\ -\frac{1}{2} \left [ x^{(1)}(3)+x^{(1)}(2) \right ]&1 \\ \vdots &\vdots \\ -\frac{1}{2} \left [ x^{(1)}(N)+x^{(1)}(N-1) \right]&1 \end{bmatrix} \begin{bmatrix} a\\u \end{bmatrix}

y=(x^{(0)}(2),x^{(0)}(3),\cdots ,x^{(0)}(N))^{(T)}

B=\begin{bmatrix} -\frac{1}{2} \left [ x^{(1)}(2)+x^{(1)}(1) \right ]& 1\\ -\frac{1}{2} \left [ x^{(1)}(3)+x^{(1)}(2) \right ]&1 \\ \vdots &\vdots \\ -\frac{1}{2} \left [ x^{(1)}(N)+x^{(1)}(N-1) \right]&1 \end{bmatrix}\hat{a}=\begin{bmatrix} a\\u \end{bmatrix}

\hat{a}为待估参数向量,\hat{a}=\left ( a,u \right )^{T}

由最小二乘法估计参数向量满足:
\hat{a}=(B^{T}B)^{-1}B^{T}Y_{n}

求解微分方程,可得其预测模型:
\hat{x}^{(1)}(k+1)=\left [ x^{(1)}(1)-\frac{\hat{u}}{\hat{a}} \right ]e^{-\hat{a}k}+\frac{\hat{u}}{\hat{a}}

GM(1.1)模型的精度检验
模型选定之后,一定要经过检验才能判定其是否合理,只有通过检验的模型才能用来作预测,灰色模型的精度检验一般有三种方法:相对误差大小检验法, 关联度检验法和后验差检验法。

后验差检验法
设按照GM(1.1)建模法已经求出\hat{X}^{(1)},并将\hat{X}^{(1)}做一次累减转化为\hat{X}^{(0)},即:
\hat{X}^{(0)}=\left [ \hat{x}^{(0)}(1), \hat{x}^{(0)}(2),\cdots ,\hat{x}^{(0)}(n)\right ]

计算残差:e(k)=x^{(0)}(k)-\hat{x}^{(0)}(k),k\in (1,2,\cdots ,n)

构建原始序列X^{(0)}以及残差序列E的方差
分别记为S^{2}_{1}S^{2}_{2}

S^{2}_{1}=\frac{1}{n}\sum_{k=1}^{n}\left [ x^{(0)}(k)-\bar{x}) \right ]^{2}

S^{2}_{2}=\frac{1}{n}\sum_{k=1}^{n}\left [ e(k)-\bar{e}) \right ]^{2}
其中,\bar{x}=\frac{1}{n}\sum_{k=1}^{n}x^{(0)}(k),\bar{e}=\frac{1}{n}\sum_{k=1}^{n}e(k)

计算后的检验方差比:

C=S_{2}/S_{1}
指标Cp是后验差检验的两个重要指标。指标C越小越好,C越小表示S_{1}大而S_{2}越小。S_{1}大表示原始数据方差 大,即原始数据离散程度大。S_{2}小表示残方差小,即残差离散程度小。C小就表明尽管原始数据很离散,而模型所得计算值与实际值之差并不太离散。

精度检验等级参照表:

模型精度等级均方差比值C
1级(好)C\leqslant 0.35
2级(合格)0.35< C\leq 0.5
3级(勉强)0.5< C\leq 0.65
4级(不合格)0.65< C

matlab代码:https://download.csdn.net/download/weixin_45839604/12678450

n阶微分的GM(n,h)模型

1、残差模型:若用原始经济时间序列建立的GM(1,1)模型检验不合格或精度不理想时,要对建立的GM(1,1)模型进行残差修正或提高模型的预测精度。修正的方法是建立GM(1,1)的残差模型。

2、GM(n,h)模型:GM(n,h)模型是微分方程模型,可用于对描述对象作长期、连续、动态的反映。从原则上讲,某一灰色系统无论内部机制如何,只要能将该系统原始表征量表示为时间序列x(0)(t),并有 x(0)(t)>0,即可用GM模型对系统进行描述。

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值