Lazy loaded image
灰色预测模型 GM(1,1)
Words 1261Read Time≈ 4 min
Feb 13, 2020
Sep 25, 2026
虽然明天就开始建模,准备也不知道怎样,但本着“能看多少看多少”的原则,今天上午就临时再复习一个算法吧。
背景知识
灰色预测的概念
  • 灰色系统、白色系统和黑色系统 白色系统是指一个系统的内部特征是完全已知的,既系统信息是完全充分的。 黑色系统是一个系统的内部信息对外界来说是一无所知的,只能通过它与外界的联系来加以观测研究。 灰色系统介于白色和黑色之间,灰色系统内的一部分信息是已知的,另一部分信息是未知的,系统内各因素间有不确定的关系。
  • 灰色预测法 灰色预测法是一种预测灰色系统的预测方法。 灰色预测通过鉴别系统因素之间发展趋势的相异程度,即进行关联分析,并对原始数据进行生成处理来寻找系统变动的规律,生成有较强规律性的数据序列,然后建立相应的微分方程模型,从而预测事物未来发展趋势的状况。
灰色模型
灰色模型(Grey Model,简称GM模型)[^1][^2]一般表达方式为 模型,其含义是:用阶微分方程对个变量建立模型。其通过把分散在时间轴上的离散数据看成一组连续变化的序列,采用累加和累减的方式,将灰色系统中的未知因素弱化,强化已知因素的影响程度,最后构建一个以时间为变量的连续微分方程,通过数学方法确定方程中的参数,从而实现预测目的。特点是无需大量数据样本,短期预测效果好,运算过程简单。
算法实现
数学基础
GM(1,1)模型的预测原理是:对某一数据序列用累加的方式生成一组趋势明显的新数据序列,按照新的数据序列的增长趋势建立模型进行预测,然后再用累减的方法进行逆向计算,恢复原始数据序列,进而得到预测结果。以下为操作流程:
a)
设一组原始数据为,为数据个数。对累加,以便弱化随机序列的波动性和随机性,得到新的数列为:
其中:
b)
生成的邻均值等权数列 其中,
c)
根据灰色理论对建立关于的白化形式的一阶一元微分方程:
其中,为待定系数,分别称为发展系数和灰色作用量,的有效区间是,并记构成的矩阵为灰参数 ,只要求出参数,就能求出,进而求出的预测值。
d)
对累加生成数据做均值处理,生成矩阵与常数项向量:
notion image
e)
用最小二乘法求解灰参数,则
(6) 将灰参数代入微分方程,并对其进行求解,得:
f)
将上述结果累减还原,即可得到预测值
通过以上步骤,即可预测序列于后的发展趋势,但单单预测是不够的,还需要进行模型的检验,下为步骤以及相关方程:
(V-1) 残差检验:
残差: 相对误差:
(V-2) 后验差检验:
均值:
方差:
残差的均值:
残差的方差:
后验差比值:
小误差概率:
(V-3) 根据以上的计算,对照如下等级表:
notion image
程序实现
以下为在 MATLAB 上的实例程序:
执行结果如下:
notion image
可以看到预测与实际发展其实蛮吻合的。
结语
这大概是建模前的最后一篇文章了……回顾大一的数学建模历程……
算了,此处不宜长篇大论,这样就偏了这篇文章主题了,那么就这样。
[^1]: Kroll, Andreas (2000). Grey-box models: Concepts and application. In: New Frontiers in Computational Intelligence and its Applications, vol.57 of Frontiers in artificial intelligence and applications, pp. 42-51. IOS Press, Amsterdam. [^2]: Bohlin, Torsten P. (7 September 2006). Practical Grey-box Process Identification: Theory and Applications. Springer Science & Business Media. ISBN 978-1-84628-403-8.
Prev Post
嵌入式开发名词解释:I²C
Next Post
关于 Manjaro Linux 安装在本人电脑上不得不提的二三事

Comments
Loading...