APP下载

灰色预测GM(1,1)模型的Matlab实现

2013-10-24朱登远常晓凤

河南城建学院学报 2013年3期
关键词:后验灰色瓦斯

朱登远,常晓凤

(1.长安大学公路学院,陕西西安 710064;2.长安大学信息工程学院,陕西 西安 710064)

灰色系统理论是20世纪80年代由我国邓聚龙教授提出的一种数学方法,可用来解决小样本的信息不完备系统的复杂问题,在岩土工程中得到了广泛关注[1-2]。如果有一个程序能够使工程人员只需输入数据,而不需编写计算公式,就可以得到分析预测结果,将会使灰色系统理论更好地应用在岩土工程中,因此有必要对其进行编程和算法实现,使其程序化、智能化。

在Matlab语言系统中,几乎所有的操作都是以矩阵操作为基础,而在灰色模型预测过程中,需要进行大量的矩阵运算,Matlab在这方面显示了独到之处。将Matlab和灰色模型结合,可以实现系统预测,提高计算的效率[2]。国内外学者结合相关领域做了一些研究并取得了很大进展。张艳萍[3]研究了基于Matlab的灰色系统预测,并结合广东省批发零售业预测进行了GM(1,1)模型的Matlab实现;曹玉珍[4]进行了基于Matlab的GM(1,1)模型在广州市降尘预测中的应用研究;彭利平[5]进行了基于Matlab的GM(1,1)模型在机械工业中的应用研究;李朝阳[6]进行了基于Matlab的GM(1,1)模型的大气污染物浓度预测;梁智勇[7]用Matlab实现了GM(1,1)模型的供电量预测;陈刚[2]研究了GM(1,1)模型在建筑物沉降预测中的应用及Matlab实现;唐丽芳[8]和周亚非[9]分别结合某高校教师人数预测和住宿餐饮业收入增加值预测研究了GM(1,1)模型的Matlab实现及其应用。虽然这些学者都对GM(1,1)模型进行了研究,并在此基础上给出了对应的Matlab算法,但由于各种原因,算法表达各不相同、不够全面且不规范,其正确性没有得到很好验证,有的算法用Matlab运行出现错误,无法使用。笔者在此基础上研究分析,综合其优点、改正不必要的细节和错误,重新整理编写GM(1,1)模型Matlab算法,以增强Matlab在GM(1,1)模型灰色预测中的实用性和通用性,方便工程人员使用。

1 GM(1,1)模型原理

灰色预测GM(l,l)模型是一个拟微分方程的动态系统[10],其建模的实质是对原始数据先进行一次累加生成,使生成的数据序列呈现一定规律,而后通过建立一阶微分方程模型,求得拟合曲线,用以对系统进行预测。具体过程如下:

(1)给定原始序列

(2)1-AGO生成序列

(3)紧邻均值生成序列

(4)建立灰色微分方程

(5)对应的白化方程为

(6)解的离散化形式为

(7)I-AGO还原序列

2 模型精度检验

(1)残差检验。

绝对残差序列

相对残差序列

平均误差

(2)后验差检验。

原始数据的平均值、均方差计算

绝对残差的平均值、均方差计算

后验差比值计算

小误差概率计算

(3)关联度检验。

表1 模型精度检验标准[11]

3 Matlab算法实现

4 应用实例分析

为了检验GM(1,1)模型的Matlab算法正确性与通用性,选用以下两个实例进行验证。

实例1:已知有11个月的某建筑物沉降观测数据,现建立GM(1,1)模型,进行模型精度检验,并对12 月份的沉降量进行预测,实际观测数据如表 2 所示。显然,x0=[4.8,5.2,5.4,5.1,5.9,7.6,7.9,8.0,8.6,8.5,9.1],x=[1,2,3,4,5,6,7,8,9,10,11,12]。

表2 某建筑物沉降量观测数据

Matlab 运行结果:xx0=[4.800 0,5.176 7,5.536 8,5.921 9,6.333 9,6.774 5,7.245 7,7.749 8,8.288 9,8.865 5,9.482 2,10.141 8],e0=[0.000 0,0.023 3,- 0.136 8,- 0.821 9,- 0.433 9,0.825 5,0.654 3,0.250 2,0.311 1,- 0.365 5,- 0.382 2],averq=0.055 3,C=0.391 2,p=1,r=0.639 2,相对误差检验为三级,后验差检验为二级,关联度检验为四级。沉降量真实值与预测值的比较及预测效果如图1所示。

实例2:已知有8个月的某矿瓦斯涌出量记录数据,现建立GM(1,1)模型,进行模型精度检验,并对9、10和11月份的瓦斯涌出量进行预测,相关记录数据如表 3所示。显然,x0=[65.08,77.97,81.89,93.16,92.31,116.16,147.25,143.26],x=[1,2,3,4,5,6,7,8,9,10,11]。

Matlab 运行结果:xx0=[65.080 0,72.875 4,82.085 3,92.459 2,104.144 1,117.305 6,132.130 6,148.829 1,167.637 9,188.823 8,212.687 1],q= [0,0.065 3,- 0.002 4,0.007 5, - 0.128 2,-0.009 9,0.102 7,-0.038 9],averq=0.044 4,C=0.305 2,p=1,r=0.885 0,相对误差检验为二级,后验差检验为一级,关联度检验为二级。瓦斯涌出量记录值与预测值的比较及预测效果如图2所示。

表3 某矿瓦斯涌出量记录数据

上面2个实例分别与文献[2]和[12]中的计算结果相同,充分证明了Matlab算法的正确性与通用性,减少了工程人员的编程和计算繁琐,能够较为快速、精确地进行计算,以及对所得数据的准确性分析和预测。

5 结论

灰色模型的公式化特点和Matlab独特的计算优点,使灰色预测建模和Matlab算法得到了很好结合。本文基于灰色系统理论基本原理,用Matlab建立了GM(1,1)模型算法,实现了Matlab在灰色预测中的应用。GM(1,1)模型的Matlab算法为建立其他相应的灰色模型提供了参考和依据,若将所有灰色模型编制成一个通用Matlab软件包,则可实现灰色理论的程序化、智能化。工程人员只需输入数据,而不需编写计算公式,就可以得到分析预测结果,减少了工程人员的工作量,在工程上具有一定的实用价值。GM(1,1)模型的Matlab算法具有一定的通用性,但精密性和细微之处有待进一步的完善和验证。

[1]李恒凯,刘传立.基于灰色理论的变形智能预测模型库研究[J].岩土力学,2011,32(10):3119-3124.

[2]陈刚,王波,邓哲.GM(1,1)模型在建筑物沉降预测中的应用及Matlab的实现[J].城市勘测,2011(1):107-109.

[3]Zhang Yanping,Li Mingsheng.Grey System Forecasting Based on MATLAB and Its Example Application[J].2011(1):107-109.

[4]曹玉珍,莫翠云,蔡明.基于MATLAB的灰色模型在广州市降尘预测中的应用[J].中国环境监测,2006,22(5):54-56.

[5]彭利平,颜於滕,黄剑,等.基于Matlab的灰色GM(1,1)模型在机械工业中的应用探究[J].煤矿机械,2009,30(12):63-65.

[6]李朝阳,魏毅.基于MATLAB灰色 GM(1,1)模型的大气污染物浓度预测[J].环境科学与管理,2012,37(1):48-53.

[7]梁智勇.用Matlab实现GM(1,1)灰色模型的供电量预测[J].电脑编程与维护,2009(24):93-102.

[8]唐丽芳,贾冬青,孟庆鹏.用MATLAB实现灰色预测GM(1,1)模型[J].沧州师范专科学校学报,2008,24(2):35-37.

[9]周亚非.GM(1,1)的MATLAB实现及其应用[J].长春师范学院学报:自然科学版,2010,29(1):32-35.

[10]于国芳.地基变形的灰色预测模型[J].西部探矿工程,2009(2):11-13.

[11]仇环,曲国庆,苏晓庆.GM(1,1)模型的改进[J].山东理工大学学报:自然科学版,2008,22(2):32-35.

[12]胡永梅.灰色系统GM(1,1)模型在煤矿瓦斯涌出量预侧中的应用[J].能源与环境,2008(4):45-46.

猜你喜欢

后验灰色瓦斯
基于对偶理论的椭圆变分不等式的后验误差分析(英)
浅灰色的小猪
11采区永久避难硐室控制瓦斯涌出、防止瓦斯积聚和煤层自燃措施
贝叶斯统计中单参数后验分布的精确计算方法
灰色时代
她、它的灰色时髦观
一种基于最大后验框架的聚类分析多基线干涉SAR高度重建算法
高瓦斯矿井防治瓦斯异常涌出措施的应用
感觉
煤与瓦斯突出防治技术途径探讨