基于Matlab建筑物沉降的灰色预测
灰色预测模型及MATLAB实例
灰⾊预测模型及MATLAB实例下⾯将主要从三⽅⾯进⾏⼤致讲解,灰⾊预测概念及原理、灰⾊预测的分类及求解步骤、灰⾊预测的实例讲解。
⼀、灰⾊预测概念及原理:1.概述:关于所谓的“颜⾊”预测或者检测等,⼤致分为三⾊:⿊、⽩、灰,在此以预测为例阐述。
其中,⽩⾊预测是指系统的内部特征完全已知,系统信息完全充分;⿊⾊预测指系统的内部特征⼀⽆所知,只能通过观测其与外界的联系来进⾏研究;灰⾊预测则是介于⿊、⽩两者之间的⼀种预测,⼀部分已知,⼀部分未知,系统因素间有不确定的关系。
细致度⽐较:⽩>⿊>灰。
2.原理:灰⾊预测是通过计算各因素之间的关联度,鉴别系统各因素之间发展趋势的相异程度。
其核⼼体系是灰⾊模型(Grey Model,GM),即对原始数据做累加⽣成(或者累减、均值等⽅法)⽣成近似的指数规律在进⾏建模的⽅法。
⼆、灰⾊预测的分类及求解步骤:1.GM(1,1)与GM(2,1)、DGM、Verhulst模型的分类⽐较:预测模型适⽤场景涉及的序列GM(1,1)模型⼀阶微分⽅程,只含有1个变量的灰⾊模型。
适⽤于有较强指数规律的序列。
累加序列均值序列GM(2,1)模型适⽤于预测预测具有饱和的S形序列或者单调的摆动发展序列缺陷。
累加序列累减序列均值序列DGM模型累加序列累减序列Verhulst模型累加序列均值序列2.求解步骤思维导图:其中预测过程可能会涉及以下三种序列、⽩化微分⽅程、以及⼀系列检验,由于⼤致都相同,仅仅是某些使⽤累加和累减,⽽另外⼀些则使⽤累加、累减和均值三个序列的差别⽽已。
于是下⾯笔者将对其进⾏归纳总结再进⾏绘制思维导图,帮助读者理解。
(1)原始序列(参考数据列):(2)1次累加序列(1-AGO):(3)1次累减序列(1-IAGO ):(也就是原始序列中,后⼀项依次减去前⼀项的值,例如,[x(2)-x(1),x(3-x(2),...,x(n)-x(n-1))]。
)(4)均值⽣成序列:(这是对累加序列"(前⼀项+后⼀项)/2"得出的结果。
优化非等间距灰色模型GM(1,1)的沉降模拟预测
第32卷10期2020年10月中国煤炭地质COAL GEOLOGY OF CHINAVol.32No.10Oct.2020doi:10.3969/j.issn.1674-1803.2020.10.12文章编号:1674-1803(2020)10-0055-05优化非等间距灰色模型GM (1,1)的沉降模拟预测王艳利(1.河南省地球物理空间信息研究院,郑州㊀450009;2.河南省地质物探工程技术研究中心,郑州㊀450009)摘㊀要:基于灰色模型建模理论,以Matlab 软件平台,采用优化灰作用量及时间响应函数的非等间距GM(1,1)模型,编写程序对沉降数据序列进行建模模拟预测㊂以文献数据验证了模型程序的正确性,并通过工程实例证明了优化的非等时距灰色模型在沉降监测模拟预测中的可靠性与实用性,模型曲线拟合度更好,预测结果更接近实际,精度更高,也更符合实际沉降规律,具有一定的应用价值㊂关键词:非等间距GM(1,1)模型;灰作用量优化;时间响应函数优化中图分类号:TU196㊀㊀㊀㊀㊀㊀文献标识码:ASubsidence Simulated Prediction Based on Optimized Unequal Interval Grey Model GM (1,1)Wang Yanli(1.Institute of Geophysical Spatial Information,Henan Province,Zhengzhou,Henan 450009;2.Henan geological and Geophysical Engineering Technology Research Center,Zhengzhou,Henan 450009)Abstract :Based on grey model modeling theory,the paper has taking the MATLAB as a platform,using optimized grey action quantityand temporal response function unequal interval GM (1,1)model programming carried out modeling simulated prediction for subsid-ence data sequence.The published data have verified model program correctness.Then through project cases have proved optimized unequal interval grey model reliability and practicability in subsidence simulated prediction.The model curves have better fitting de-gree,predicted results closer to practice,higher accuracy and more consistent with practical subsidence regular pattern.Thus the mod-el has certain application values.Keywords :unequal interval GM (1,1)model;grey action quantity optimization;temporal response function optimization作者简介:王艳利(1977 ),女,河南修武人,高级工程师,注册测绘师,本科,主要从事测绘工程㊁土地规划及地理信息应用等研究工作㊂收稿日期:2019-12-21责任编辑:孙常长㊀㊀由于受到地下水开采㊁地质环境变化等多种因素的影响,在华北平原地区己经连续多年出现地面沉降现象㊂为系统査清华北平原(河南部分)地区地下水降落漏斗范围内的地面沉降量及沉降速率,通过对前期监测数据分析,寻找其中的变化规律,建立模拟预测模型,并根据该模型对未来的沉降趋势进行预测,为该区域的沉降预测和处置提供科学㊁客观的依据㊂目前基于等间距监测数据的灰色模型预测应用较多,但在实际工作中很难做到沉降点的连续等时距监测,因此建立非等时距灰色模型进行模拟预测很有必要㊂本文基于灰色模型建模理论,建立优化灰作用量及时间响应函数非等时距GM(1,1)模型,实现华北平原(河南部分)地区地下水降落漏斗范围内的地面沉降量模拟预测㊂1㊀非等间距灰色模型建模及优化我国控制论专家邓聚龙教授提出的灰色系统理论预测模型,具有样本数量需求少㊁预测精度高的特点,因此该系统理论在许多领域得到了广泛应用㊂灰色系统理论的模拟预测模型有多种,其中优化的灰色GM(1,1)模型和灰色组合模型等是在沉降监测应用中常用的灰色模拟预测模型[1-3]㊂然而,这些数学模型都严格要求样本序列是等时间序列建立的,但在实际沉降监测工作中,受自然环境和各种主㊁客观因素影响,时间序列往往是非等距的㊂因此针对非等距的时间序列样本,为寻求一种科学方法,满足分析沉降监测规律要求,有很多学者尝试构建了非等间距的灰色预测模型,并在沉降监测工作中得到应用,取得了一定的成果㊂如陈有亮㊁孙钧在等间距灰色预测模型的基础上推广应用非等距时间序列,用于岩石蠕变断裂时间预测和三峡库区滑坡预报[4]㊂何亚伯,梁城采取3次样条函数插值法对非等距时序进行数据处理,并应用时间序列分析方法56㊀中㊀国㊀煤㊀炭㊀地㊀质第32卷建立了隧道围岩位移的预测模型[5]㊂姜佃高㊁姜佃升㊁许珊娜等建立非等间隔GM(1,1)模型,用于沉陷监测预报,通过与传统灰色模型分析对比证明了非等间隔GM(1,1)模型在沉陷监测预报中相对传统模型更为有效[6]㊂1.1㊀非等间距GM(1,1)模型建模原始序列为:x (0)={x (0)(t 1),x (0)(t 2), ,x (0)(t n )}若每2次观测的时间间隔不全相等(含全不相等),即Δt k =t k -t k -1ʂconst ,k =2,3, ,n 不为常数,则称x (0)(t i )为非等间距序列㊂x (0)(t i )的一次累加生成序列(1-AGO)按下式计算:x(1)(t k )=ðni =1x (0)(t k )Δt kΔt i =1,i =1t i -t i -1,i >1{,k =1,2, ,n㊀㊀非等间距序列x (1)(t i )的一阶累加生成序列z (1)={z (1)(t 1),z (1)(t 2), ,z (1)(t n )}㊀㊀其中:z (1)(t k )=(x (1)(t k )+x (1)(t k -1))/2,k =1,2, ,n ㊂对一次累加生成序列x (1)建立白化微分方程:d x (1)(t k )d t+ax (1)(t k )=u ,t k ɪ[0,㣁)(1)㊀㊀根据最小二乘原理,可得[a u ]Τ=(B ΤB )-1(B ΤY )(2)㊀㊀其中,Y =x (0)(t 2)x (0)(t 3)︙x (0)(t n )éëêêêêêêùûúúúúúú㊀B =-z (1)(t 2)1-z (1)(t 3)1︙︙-z(1)(t n )1ùûúúúúúúéëêêêêêê(3)㊀㊀z(1)(t k )为x(1)(t k )在离散区间[t k ,t k +1]上的背景值㊂式(2)中a 为发展系数,反映x (0)的增长态势,u为灰色作用量㊂微分方程式(1)的解为x ^(1)(t k )=x (1)(t 1),k =1(x (1)(t 1)-u a )e -a (t k -t 1)+ua ,k >1ìîíïïïï(4)㊀㊀由x (1)(t k )=ðki =1x (1)(i )Δt i ,x (1)(t k -1)=ðk -1i =1x (1)(i )Δi ,两式相减得差分还原公式:x^(0)(t k )=[x ^(1)(t k )-x ^(1)(t k -1)]/(t k -t k -1)(5)㊀㊀将式(4)代入式(5)得非等间隔GM(1,1)模型预测方程式:x ^(0)(t k )=x (0)(t 1),k =1[(1-e a Δt k )x (0)(t 1)-u a ()e-a (t k -t 1)]/Δt k ,k >1ìîíïïïï(6)1.2㊀非等间距GM(1,1)模型优化基于非等间距GM(1,1)模型因原始序列间隔不同,具有更大离散度,模型模拟预测精度更难控制,模拟预测结果存在不尽如人意的情况㊂多位学者分别从模型的建模机理和原始数据修正等方面寻找更好的模型精度控制方法㊂戴文战㊁李俊峰利用齐次指数函数拟合一次累加生成序列,通过优化模型背景值,实现了非等间距GM(1,1)模型建模方法[7]㊂王正新,党耀国,刘思峰利用非齐次指数函数实现了对GM(1,1)模型的背景值优化[8]㊂王叶梅,党耀国,王正新等在文献[8]的基础上通过优化模型的背景值提出了新的非等间距GM(1,1)模型,提高了新建模型的模拟预测精度[9]㊂但通过研究分析,多数文献的改进都是基于具有近似指数增长规律特征的数据序列㊂而在工作实践中,大多数数据具有非齐次指数律特征㊂近年来,谢乃明㊁刘思峰㊁崔杰㊁党耀国㊁战立青㊁施化吉等学者针对近似非齐次指数律数据序列进行模拟和预测[10-15]㊂对于非等间距条件下的近似非齐次指数律数据序列,张锴㊁王成勇㊁贺丽娟根据非等间距灰色模型的建模机理[16],考虑灰作用量的动态变化,构建了一种新的非等间距灰色模型来拟合具有近似非齐次指数律的原始数据序列㊂并通过引入平均相对误差平方和为指标函数,推导证明给出了新模型参数的最小二乘解的求解公式以及时间响应函数的表达式,拓宽了非等间距灰色预测模型的应用范围㊂基于沉降监测所采集到的数据具有非齐次指数增长规律的特点,采用近似非齐次指数数据序列来拟合原始数据序列,即x (0)(k )ʈbe ak +c ,k =1,2,3, ,n㊀㊀构建的非等间距灰色GM(1,1)模型更为优良和符合实际㊂1.3㊀灰作用量的优化[16]设x (0)为非负的非等间距序列,x (1)为x (0)的一次累加生成序列(1-AGO 序列),z (1)为x (1)的紧邻均值生成序列,称10期王艳利:优化非等间距灰色模型GM (1,1)的沉降模拟预测57㊀x (0)(k )+az (1)(k )=bk +c ,㊀㊀为灰作用量优化的非等间距灰色GM(1,1)模型,其一阶微分方程d x(1)/d t +ax(1)=bt +c ,㊀㊀称为非等间距灰色GM (1,1)模型的白化方程㊂对非等间距序列x (1)(t ),若β=[a ,b ,c ]T为参数列,且设B ~=-z (1)(k 2)Δk 2-z (1)(k 3)Δk 3︙-z (1)(k n )Δk n ㊀0.5(k 22-k 12)0.5(k 32-k 22)︙0.5(k n 2-k n -12)㊀Δk 2Δk 3︙Δk n éëêêêêêêùûúúúúúúY~=x (0)(k 2)Δk 2x (0)(k 3)Δk 3︙x (0)(k n )Δk n éëêêêêêêùûúúúúúú则离散非等间距GM(1,1)模型x (0)(k )+az (1)(k )=bk +c㊀㊀的最小二乘估计参数列满足β^=a ,b ,c []T =B ~T B ~[]-1B ~T Y~㊀㊀令x^(1)(k 1)=x (1)(k 1),则白化方程d x (1)/d t +ax (1)=bt +c 的解(也称时间响应函数)为:x^(1)(t )=(x (0)(k 1)-b/a ∗k 1-c/a +b/a ^2)e -a (t -k 1)+b/a ∗t +(ac -b )/a ^2(7)㊀㊀非等间距GM(1,1)模型x (0)(k )+az (1)(k )=bk+c 的时间响应序列为x^(1)(k i )=(x (0)(k 1)-b/a ∗k 1-c/a +b/a ^2)e -a (k i -k 1)+b/a ∗k i +(ac -b )/a ^2(8)㊀㊀还原值为x (0)(k i )=(x (1)(k i )-x (1)(k i -1))/Δk i ,i =2,3,4, ,n(9)1.4㊀时间响应函数的优化[16]令x 1(t )=y ,则白化微分方程为d yd t+ay =bt +c ,根据常微分方程理论,一阶线性微分方程d yd t+ay =bt +c 的通解公式为y =c -at e +b /a ∗t +(ac -b )/a ^2㊂保留前式中的待定系数C ,以原始序列数值与模拟值相对误差平方和最小为目标,引入平均相对误差平方和为指标函数,用以优化原始序列的模拟值和预测值,提高模型的模拟与预测精度㊂B ~,Y ~如前文所示,x^(1)(k i )=c -ak ie +b /a +(ac-b )/a ^2,则C opt=min C R x^(0)(k i )-x (0)(k i )x (0)(k i )éëêêùûúú2㊀㊀=ðni =1e -ak i (e αΔk i -1)x (0)(k i )Δk i ∗b /a -x (0)(k i )x (0)(k i )ðni =1e -2aki (1-e αΔki )2x (0)(k i )Δk i []2㊀㊀构造平均相对误差平方和函数F (C ),必存在极小值,且极小值点处有d F (C )d C=0,求出C =ðni =1e-ak i(e αΔk i -1)x (0)(k i )Δk i ∗b /a -x (0)(k i )x (0)(k i )ðni =1e -2ak i(1-e αΔk i)2x (0)(k i )Δk i []2.因此,改进的非等间距GM(1,1)模型白化方程的时间响应函数为x^(1)(k i )=ðni =1e-ak i(e αΔk i -1)x (0)(k i )Δk i ∗b /a -x (0)(k i )x (0)(k i )ðni =1e -2aki (1-e αΔki )2x (0)(k i )Δk i []2∗e-ak i+b /a ∗k i +(ac -b )/a ^2还原值x (0)(k i )=(x (1)(k i )-x (1)(k i -1))/Δk i ,i =2,3,4, ,n1.5㊀模型精度检验为了正确评价建立模型,必须对模型可靠性和精度做相应的检验㊂一般以实测值为基础计算其相对误差㊂记原始数据的0阶残差为:ε(t k )=x (0)(t k )-x^(0)(t k ),则其残差均值为:ε-=1n ðnk =1ε(t k ),残差方差为:s 22=1n ðn k =1[ε(t k )-ε-]2㊂㊀原始数据的均值为:x -=1n ðn k =1x (0)(t k ),方差为:s 21=1n ðn k =1[x (0)(t k )-x -]2㊂C =S 2/S 1称为均方差比值,对于给定的C 0>0,当C <C 0时,称模型为均方差比值合格模型㊂小误差p =p εk ()-ε<0.6745S 1()概率,对于给定的p 0>0,当p >p 0时,称模型为小误差概率合格模型(表1)㊂58㊀中㊀国㊀煤㊀炭㊀地㊀质第32卷表1㊀模型精度检验等级参照表Table 1㊀Model accuracy inspection levels reference table精度等级均方差比值C 0小误差概率p 0一级0.350.95二级0.500.80三级0.650.70四级0.800.602 优化模型的验证及应用本文采用优化灰作用量及时间响应函数的方法建立非等间距灰色GM(1,1)模型,并以Matlab 软件平台编写程序,首先采用文献[6]的建模数据进行模拟结果对比分析,验证了该模型的正确性(表2)㊂并以华北平原(河南部分)地面沉降监测点成果进行建模预测,结果如下㊂经统计文献[6]数据建模结果,模型残差均值ε-=0.021m ,残差方差s 22=0.0077㊂原始数据均值x -=1068.1409m ,方差s 21=0.1325㊂后验差检验比值c =s 1/s 2=0.24<0.35,小误差概率p =1>0.95,结果表明模型精度等级满足一级要求,而且平均残差小于文献[6],表明所建优化非等间距GM(1,1)模型正确㊂依据‘河南省地面沉降防治规划“(2013-2020年)要求,为加强对华北平原(河南部分)地面沉降的调查㊁监测及防治工作,实现地面沉降控沉目标,以基岩点为起算点,以二等水准闭合环(网)方式布设了沉降区水准监测网,通过建模,实现分析沉降监测数据,根据沉降量和沉降速率为该区域的沉降预测和处置提供科学㊁客观依据的目的㊂由于主客观因素影响,观测时间间隔相差较大,再加上实施时间较短,观测数据少,但满足灰色系统建模理论㊂本文以监测网中的sz170号点监测成果为数据,观测间距(以月为单位)[0㊁6㊁14㊁29㊁41㊁53],点位高程(m)[98.529㊁98.5214㊁98.5102㊁98.5014㊁98.4987㊁98.4950],以前5期观测成果数据建模,预测第6期数据,分别建立传统非等间距灰色GM(1,1)模型及优化的非等间距灰色GM(1,1)模型进行模拟预测(表3㊁图1㊁图2)㊂其中表3中加粗斜体数字为模型预测值,图1㊁图2中预测曲线中红色三角符号为原始数据点位,蓝色∗为预测数据点位㊂计算得模型残差均值ε-=0.0005m ,残差方差s 22=0.000002㊂原始数据均值x -=98.5121m 方差s 21=0.00067㊂后验差检验比值c =s 1/s 2=0.05<0.35,小误差概率p =1>0.95,结果表明模型精度等级满足一级要求㊂表2㊀模型验证精度对比表Table 2㊀Comparison of model verification accuracies序㊀号文献6非等间距GM(1,1)模型优化非等间距GM(1,1)模型实测值/m 预测值/m 残差/m 实测值/m 预测值/m 残差/m 11068.3411068.3410.0001068.3411068.3410.00021068.2921068.3160.0241068.2921068.2810.00231068.2391068.1880.0511068.2391068.1850.05441068.1051068.1150.0101068.1051068.1240.01951068.0341068.0490.0151068.0341068.0670.03361067.9981067.9850.0131067.9981068.0110.01371067.9771067.9180.0591067.9771067.9500.027平均残差m0.0250.007表3㊀模型精度对比表Table 3㊀Comparison of model accuracies序㊀号非等间距GM(1,1)模型优化非等间距GM(1,1)模型实测值/m 预测值/m 残差/m 实测值/m 预测值/m 残差/m 198.52998.529098.52998.529298.521498.51770.003798.521498.52050.0009398.510298.51290.002798.510298.50900.0012498.501498.50510.003798.501498.50160.0002598.498798.49590.002898.498798.49880.0001698.495098.48780.007298.495098.49830.0033平均残差m0.00260.000510期王艳利:优化非等间距灰色模型GM (1,1)的沉降模拟预测59㊀图1㊀非等间距预测曲线Figure 1㊀Unequal interval predictioncurve图2㊀优化非等间距预测曲线Figure 2㊀Optimized unequal interval prediction curve㊀㊀分析对比模型计算结果,与传统非等间距灰色GM(1,1)模型相比,优化模型每个时点的模拟误差都小于传统灰色非等间距GM(1,1)模型,优化模型平均残差为0.0005m,优于原模型的0.0026m,模拟精度有了进一步提升,从而验证了优化模型的有效性㊂从预测曲线看,优化的非等间距灰色GM(1,1)模型曲线拟合度更好,预测结果更接近实际,精度更高,也更符合实际沉降规律㊂3㊀结论针对沉降监测等类似过程监测数据不等间距情形,引入优化灰作用量和时间响应函数的非等间距GM(1,1)预测模型,通过实例数据论证表明,具有良好的适应性㊁符合性㊂㊀㊀①在监测数据贫乏时,变形数据也近似满足灰指数规律㊂②对于非等间距数据序列,无需进行等时距变换,可直接建立非等间距GM(1,1)模型进行模拟预测㊂③引入灰作用量和时间响应函数优化可提高模型模拟精度,但预测精度仍相对不高㊂虽然理论上可预测未来任意时刻的变形值,但考虑到预测精度要求,预测时间不宜过长㊂④利用Matlab 软件平台进行非等间距GM(1,1)模拟预测,操作简便,数据处理效率高,对于观测间距短的工程,可快速提供可靠的预测数据,便于对沉降趋势进行分析和适时把控㊂参考文献:[1]刘思峰,党耀国,方志耕.灰色系统理论及其应用[M].北京:科学出版社,2004.[2]罗党,刘思峰,党耀国.灰色模型GM(1,1)优化[J].中国工程科学,2003(8):50-53.[3]李翠凤,戴文战.非等间距GM(1,1)模型背景值构造方法及应用[J].清华大学学报(自然科学版),2007,47(S2):1729-1732.[4]陈有亮,孙钧.非等间距序列的灰色预测模型及其在岩石蠕变断裂中的应用[J].岩土力学,1995(4):8-12.[5]何亚伯,梁城.非等距时间序列模型在隧道拱顶位移预测中的应用[J],岩石力学与工程学报,2014(S2):4096-4100.[6]姜佃高,姜佃升,许珊娜.基于非等间距GM(1,1)模型的沉陷监测预报[J].北京测绘.2016(5).[7]戴文战,李俊峰.非等间距GM(1,1)模型建模研究[J].系统工程理论与实践,2005,25(9):89-93.[8]王正新,党耀国,刘思峰.基于离散指数函数优化的GM(1,1)模型[J].系统工程理论与实践,2008,28(2):61-67.[9]王叶梅,党耀国,王正新.非等间距模型GM(1,1)背景值的优化[J].中国管理科学,2008,16(4):159-162.10]谢乃明,刘思峰.近似非齐次指数序列的离散灰色模型特性研究[J].系统工程与电子技术,2008,30(5):863-867.[11]崔杰,党耀国,刘思峰.一种新的灰色预测模型及其建模机理[J].控制与决策,2009,24(11):1702-1706.[12]战立青,施化吉.近似非齐次指数数据的灰色建模方法与模型[J].系统工程理论与实践,2013,33(3):689-694.[13]王钟羡,吴春笃,史雪荣.非等间距序列的灰色模型[J].数学的实践与认识,2003,33(10).[14]罗佑新.非等间距新息GM(1,1)的逐步优化模型及其应用[J].系统工程理论与实践,2010,30(12):2254-2258.[15]曾祥艳,曾玲.非等间距GM(1,1)模型的改进与应用[J].数学的实践与认识,2011,41(2):90-95.[16]张锴,王成勇,贺丽娟.一类改进的非等间距灰色模型及应用[J]工程数学学报,2017,34(2):124-134.。
基于MATLAB的灰色系统沉降预测
( 1 ( 【一 ) 言 ) 1 詈e + = ㈣ ) +
三 、 色 沉 降预 测 程 序 的开 发 灰
器 晶 . , 南人 毅 程 , . 研 方 为I 制 莩 羿 呻 器2男 苏京 . 工 师 士 要 究 向 G与 图 高 )江 . 高 博主 s
维普资讯
20 0 2年
第 6期
测
绘
通
报
Y= 。 2, 。 3, , 。 n] ’ ) )… ) ( ‘ ( (
摘 要 :r 彳绍基于 MA L B的灰色系挠沉降预测的实现方法。 TA 关键 词 : 色系统;MA L B 沉降预测 蕺 TA ;
一
、
引 言
美 国 Mah Wok 公 司 的 MA L B已经 发 展 t r s T A
势的相似或相异程度来衡量 因素 间关 联程度 的方 法。由于关联度分析法是按发展趋势作分析 , 因此 对样 本量 的多少 没 有太 多 要求 , 不 需 要典 型 的 分 也 布规律, 且不致出现关联度的量化结果与定性分析 不一致 的情况。灰色 系统理论 自 18 年正式发表 92
以来 , 已受 到广 泛关 注 。
成 为适 合 多学 科多种 工作 平 台的功能 强劲 的大 型软 件 , 了具 有卓 越 的数值计 算 和数据 可视化 能 力 , 除 还 具有 专业 水平 的符号 计算 、 字处理 、 文 建模 和实 时控
制能 力 。
MA L B系统 包括几个 组成 部分 : T A TA MA L B 语 言、 MAT A 工 作 环 境 、 LB MAT A 工 具 箱 和 LB
基于MATLAB的灰色预测GM(1
‘ ( 2)
z
一
‘ 3) ”(
‘( ) 。 3 ’
型 . M( , ) 型 是基 于 随 机 的 原 始 时 间序 列 , 按 时 间 累 G 11模 经 加 后 所形 成 的新 的 时 间序 列 呈 现 的 规 律 可 用 一 阶线 性 微 分
方 程 的解 来 逼 近 . 证 明 , 一 阶 线 性 微 分 方 程 的解 逼 近 所 经 经
对 生 成 的时 间序 列 , M( , ) 应 的微 分 方 程 为 G 11相
+
d t
: 6 .
息. 含有已知信息又 含有未 知 的 、 确 知的信 息 的系统 , 既 非
求 解 微 分 方 程 , 可 得 到 预 测模 型 : 即
称 为 灰 色 系 统 . 色 预 测 是 灰 色 系 统 建 模 的 具 体 数 学 方 法 灰
之 一 , 色 预 测 不 是 把 观 测 到 的数 据 序 列 视 为 一 个 随 机 过 灰
… ) (一 = 1 )
&=( B B)IB y , 中 1 其
一
+, , , ÷㈦ z m , …
程 , 是 看作 随 时 间 变 化 的 灰 色 量 或 灰 色 过 程 , 色 预 测 通 而 灰
过 鉴 别 系 统 因素 之 间 发 展 趋 势 的相 异 程 度 , 进 行 关 联 分 即 析 , 对原始数据进行生成处理来寻 找系统变动 的规律. 并 基 于灰 色 系统 理 论 的 灰 色 模 型 主 要 有 GM( , ) 色 预 测 模 11灰
上 式 中 , 数 n b 用 最 小 二 乘 法 估 计 , =( , ) 参 ,是 即 o 6 ,
功 能 , 以 方便 、 捷 、 确 、 观 地 进 行 预 测 分 析 . 文 介 可 快 准 直 本
Matlab灰色预测模型GM(1,1)代码
s=0;xx0(1)=X0(1);
for jj=2:1:m2;
xx0(jj)=xx1(jj)-xx1(jj-1);
end
disp('GM(1,1)对数列进行预测结果');xx0
disp('数列1原始观测数据');X0
disp('a');AU(1)
disp('u');AU(2)
z=z+x(i,:);
be(i,:)=z;
end
for i=2:n %对原始数列平行移位
y(i-1,:)=x(i,:);
end
for i=1:n-1 %计算数据矩阵B的第一列数据
c(i,:)=-0.5*(be(i,:)+be(i+1,:));
% 本程序主要用来计算根据灰色理论建立的模型的预测值。
% 应用的数学模型是 GM(1,1)。
% 原始数据的处理方法是一次累加法。
y=input('请输入数据 ');
n=length(y);
yy=ones(n,1);
yy(1)=y(1);
for i=2:n
yy(i)=yy(i-1)+y(i);
disp(['再下个拟合值为',num2str(ys(n+2))]);
x(0)={x(0)(1),x(0)(2),……,x(0)(N)}=
{ 724.57, 746.62, 778.27, 800.8, 827.75,871.1, 912.37, 954.28, 995.01, 1037.2}
function c7fun73
基于MATLAB的GM(1,1)模型在变形预测中的应用
基于MATLAB的GM(1,1)模型在变形预测中的应用摘要:变形测量值是已发生的变形量,但更重要的是通过对变形观测资料的处理,从现有的数据中预报出下一时刻的变形值,以判断工程的安全状况。
应用matlabrua软件编制了灰色预测模型及精度检验程序.matlab是专用的矩阵计算软件,对矩阵的计算有很好的效果,而且用起来比较容易简单,还可以允许用户编程对功能进行扩展。
灰色gm(1,1)预测模型在计算过程中主要是以矩阵为主,它与matlab的结合解决了它在计算中的问题。
由以上的实例可以看出,用matlab编制的灰色预测程序简单实用,容易操作,预测精度较高,而且可以直接绘出直观的二维折线图,为用户参考。
关键词:变形监测;灰色系统;灰色预测模型中图分类号:o141.4 文献标识码:a 文章编号:1 引言matlab源于matrix laboratory一词,原意是为矩阵实验室,是由john little和cleve molar共同成立的美国math works公司推出的一种集数学、图形处理和程序设计语言于一体的科技应用软件。
它把科学计算、结果的可视化和编程都集中在一个使用非常方便的环境中。
在这个环境中,用户的问题和得到的结果都是通过用户非常熟悉的数学符号来表达的。
matlab系统包括几个组成部分:matlab语言、matlab工作环境、matlab工具箱和matlab的api。
matlab以向量和矩阵为基本数据单位,被称为第4代计算机语言,有着其他一些语言所无法比拟的特点:功能强大;语言简单;扩充能力强、可开发性强;编程容易、效率高。
它已在国内外高校、科研机构和工程技术上得到了广泛的应用[1]。
灰色gm(1,1)预测模型在计算过程中主要是以矩阵为主,它和matlab的结合可以有效的解决了灰色系统理论在矩阵计算中的问题,为灰色系统理论的应用提供了一种新的方法[2]。
2gm(1,1)预测模型的matlab部分源程序根据上述gm(1,1)模型的数学思想,结合matlab语言的特点编制了一套可读性强,容易理解的预测程序。
matlab灰色预测模型函数
matlab灰色预测模型函数Matlab是一种广泛应用于科学计算和工程领域的软件工具,它提供了许多函数和工具箱,用于数据分析和建模。
其中一个重要的函数是灰色预测模型函数,它可以用来预测和分析时间序列数据。
本文将介绍灰色预测模型函数的原理和应用,并通过一个示例来演示其使用方法。
灰色预测模型是一种基于灰色系统理论的预测方法,它适用于样本数据较少、不完整或不规律的情况。
在灰色预测模型中,数据被分为两类:发展数据和规律数据。
发展数据是指拥有较完整信息的数据,规律数据是指缺乏完整信息的数据。
通过对规律数据进行处理和建模,可以预测未来数据的趋势和变化。
在Matlab中,可以使用灰色预测模型函数进行数据预测和分析。
该函数可以通过输入历史数据和需要预测的时间步长来生成预测结果。
具体的使用方法如下:1. 导入数据:首先需要导入需要预测的时间序列数据。
可以使用Matlab中的数据导入函数来读取数据文件或手动输入数据。
2. 数据预处理:对导入的数据进行预处理,包括去除异常值、平滑数据等。
可以使用Matlab中的数据处理函数来完成这些操作。
3. 构建灰色模型:使用灰色预测模型函数来构建灰色模型。
该函数需要输入历史数据和需要预测的时间步长。
4. 模型评估:对构建的灰色模型进行评估,包括计算预测误差、拟合度等指标。
可以使用Matlab中的统计函数来完成这些计算。
5. 预测结果:根据构建的灰色模型,可以生成未来数据的预测结果。
可以使用Matlab中的预测函数来完成这一步骤。
下面通过一个示例来演示灰色预测模型函数的使用方法。
假设我们有一个销售数据的时间序列,我们希望预测未来三个月的销售额。
首先,我们需要导入销售数据,并进行数据预处理。
然后,我们可以使用灰色预测模型函数来构建灰色模型。
最后,我们可以通过预测函数来生成未来三个月的销售额预测结果。
在实际操作中,我们可能还需要对模型进行参数调优和模型选择。
可以使用交叉验证等方法来选择最优的参数和模型。
灰色理论和多项式拟合在地表沉降监测中的应用
灰色理论和多项式拟合在地表沉降监测中的应用程晨【期刊名称】《测绘与空间地理信息》【年(卷),期】2014(000)002【摘要】This article compares the effectiveness and accuracy of two kinds of models for forecasting surface subsidence in mining are -as and using MATLAB programming for calculation , which are based on GM (1, 1) model and polynomial fitting numerical calcula-tion methods.And the methods have positi -ve significance for improving the precision and accuracy of information forecast .%采用GM(1,1)模型和多项式拟合的数值处理方法并使用MATLAB编程计算,对比了两种模型在预测矿区地表沉降中的有效性和精确性,对于提高信息预测的精度和准确度有积极的意义。
【总页数】3页(P220-222)【作者】程晨【作者单位】安徽理工大学测绘学院,安徽淮南232001【正文语种】中文【中图分类】P25;TB22【相关文献】1.灰色理论在水平冻结施工隧道盾构到达洞门时地表沉降预测中的应用 [J], 谢玖琪;杨平;郑杰明;张中2.BP神经网络与多项式拟合在沉降监测中的应用 [J], 王存友;黄张裕;汪闩林;欧阳经富3.GM(1,1)多项式拟合模型在变形监测中的应用 [J], 田晓龙;文鸿雁;李超;陈佐毅4.SBAS-InSAR技术在矿区地表沉降监测中的应用 [J], 王建;祁鑫博;王丽华;王子豪5.GPS-RTK在矿山地表沉降监测中应用的可行性分析 [J], 陈兴隆因版权原因,仅展示原文概要,查看原文内容请购买。
灰色系统预测GM(1,1)模型及其Matlab实现
灰色系统预测GM(1,1)模型及其Matlab 实现预备知识(1)灰色系统白色系统是指系统内部特征是完全已知的;黑色系统是指系统内部信息完全未知的;而灰色系统是介于白色系统和黑色系统之间的一种系统,灰色系统其内部一部分信息已知,另一部分信息未知或不确定。
(2)灰色预测 灰色预测,是指对系统行为特征值的发展变化进行的预测,对既含有已知信息又含有不确定信息的系统进行的预测,也就是对在一定范围内变化的、与时间序列有关的灰过程进行 预测。
尽管灰过程中所显示的现象是随机的、杂乱无章的,但毕竟是有序的、有界的,因此得到的数据集合具备潜在的规律。
灰色预测是利用这种规律建立灰色模型对灰色系统进行预测。
目前使用最广泛的灰色预测模型就是关于数列预测的一个变量、一阶微分的GM(1,1)模型。
它是基于随机的原始时间序列,经按时间累加后所形成的新的时间序列呈现的规律可用一阶线性微分方程的解来逼近。
经证明,经一阶线性微分方程的解逼近所揭示的原始时间序列呈指数变化规律。
因此,当原始时间序列隐含着指数变化规律时,灰色模型GM(1,1)的预测是非常成功的。
1 灰色系统的模型GM(1,1)1.1 GM(1,1)的一般形式设有变量X (0)={X (0)(i),i=1,2,...,n}为某一预测对象的非负单调原始数据列,为建立灰色预测模型:首先对X (0)进行一次累加(1—AGO, Acumulated Generating Operator)生成一次累加序列:X (1)={X (1)(k ),k =1,2,…,n}其中X (1)(k )=∑=ki 1X (0)(i)=X (1)(k -1)+ X (0)(k ) (1) 对X (1)可建立下述白化形式的微分方程:dtdX )1(十)1(aX =u (2)即GM(1,1)模型。
上述白化微分方程的解为(离散响应): ∧X (1)(k +1)=(X (0)(1)-a u )ak e -+au(3)或∧X (1)(k )=(X (0)(1)-a u ))1(--k a e +au (4)式中:k 为时间序列,可取年、季或月。
灰色预测的matlab实现,代码大全
disp('确定的模型为:x1(k+1)=(x(1)-u_a)*exp(-k*a)+u_a') 改进灰色模型代码: for i=1:inf if i==1
e(i)=input('输入数据:'); else if e(i-1)==0 break; else end
e(i)=input('输入数据:');
6
1
x2(k+1)=(x0(1)-u_a)*exp(-k*a)+u_a; end %求出新数列的模拟值 x2 x3=x2; x3(m2+k0)=[]; x4=[0 x3]; x5=x2-x4;%利用累减生成法求出原始数据的模拟值 x5 disp('3.一次累加(1-AGO)生成的数据的模拟值:') Y=''; for z=1:m2+k0 Y=strcat(Y,'(',num2str(x2(z)),')'); end disp(Y); disp('4.原始数据的模拟值:') Y=''; for z=1:m2+k0 Y=strcat(Y,'(',num2str(x5(z)),')'); end disp(Y); % 4. 模型检验(算出的值到等级参照表中检查其精度等级) %计算后验差比 C 和残差序列 Q x6=x5(1:m2); Q=x0-x6;%Q 为残差序列 s1=std(Q);%s1 为残差序列 Q 的标准差 s2=std(x0);%s2 为初始序列 x0 的标准差 C=s1/s2;%后验差比 C(越小越好) w1=1:m2; w1=[ones(m2,1) w1']; w2=Q'; [bb,bint,r1,rint,stats]=regress(w2,w1); rcoplot(r1,rint) C1=strcat('5.后验差比(均方差比值): C=',num2str(C));disp(C1); if C<=0.35 disp(' 由于 C<=0.35,则此模型精度等级为 1 级(好) 。'); else if C<=0.5 disp(' 由于 0.35<C<=0.5,则此模型精度等级为 2 级(合格) 。'); else if C<=0.65 disp(' 由于 0.5<C<=0.65,则此模型精度等级为 3 级(勉强) 。'); else disp(' 由于 C>0.65,则此模型精度等级为 4 级(不合格) 。'); end end end
灰色预测模型matlab程序精确版
%x=[1019,1088,1324,1408,1601];gm1(x);测试数据%二次拟合预测GM(1,1) 模型function gmcal=gm1(x)if nargin==0x=[1019,1088,1324,1408,1601]end format long g sizex=length(x); %求数组长度k=0;for y1=x k=k+1; if k>1x1(k)=x1(k-1)+x(k);% 累加生成z1(k-1)=-0.5*(x1(k)+x1(k-1));%z1 维数减1,用于计算B yn1(k-1)=x(k);elsex1(k)=x(k);end end %x1,z1,k,yn1 sizez1=length(z1);%size(yn1);z2 = z1';z3 = ones(1,sizez1)';YN = yn1'; % 转置%YNB=[z2 z3];au0=inv(B'*B)*B'*YN;au = au0';%B,au0,auafor = au(1);ufor = au(2);ua = au(2)./au(1);%afor,ufor,ua%输出预测的a u 和u/a 的值constant1 = x(1)-ua;afor1 = -afor;x1t1 = 'x1(t+1)';estr = 'exp';tstr = 't';leftbra = '(';rightbra = ')'; %constant1,afor1,x1t1,estr,tstr,leftbra,rightbrastrcat(x1t1,'=',num2str(constant1),estr,leftbra,num2str(afor1),tstr,rightb ra,'+ ',leftbra,num2str(ua),rightbra)%输出时间响应方程%******************************************************%二次拟合k2 = 0;for y2 = x1k2 = k2 + 1;if k2 > kelseze1(k2) = exp(-(k2-1)*afor);endend%ze1sizeze1=length(ze1);z4 = ones(1,sizeze1)';G=[ze1' z4];X1 = x1'; au20=inv(G'*G)*G'*X1;au2 = au20'; %z4,X1,G,au20Aval = au2(1);Bval = au2(2);%Aval,Bval%输出预测的A,B 的值strcat(x1t1,'=',num2str(Aval),estr,leftbra,num2str(afor1),tstr,rightbra,'+', lef tbra,num2str(Bval),rightbra)%输出时间响应方程for k3=1:nfinalx3fcast(k3) = constant1*exp(afor1*k3)+ua; end%x3fcast %一次拟合累加值for k31=nfinal:-1:0if k31>1x31fcast(k31+1) = x3fcast(k31)-x3fcast(k31-1); elseif k31>0x31fcast(k31+1) = x3fcast(k31)-x(1); elsex31fcast(k31+1) = x(1);endend endx31fcast %一次拟合预测值for k4=1:nfinalx4fcast(k4) = Aval*exp(afor1*k4)+Bval; end%x4fcastfor k41=nfinal:-1:0if k41>1x41fcast(k41+1) = x4fcast(k41)-x4fcast(k41-1); elseif k41>0x41fcast(k41+1) = x4fcast(k41)-x(1); elsex41fcast(k41+1) = x(1);endendend%二次拟合预测值%***精度检验p C************////////////////////////////////// k5 = 0;for y5 = xk5 = k5 + 1;if k5 > sizexelseerr1(k5) = x(k5) - x41fcast(k5);endend%err1%绝对误差xavg = mean(x);%xavg%x平均值err1avg = mean(err1);%err1 平均值k5 = 0;s1total = 0 ;for y5 = xk5 = k5 + 1;if k5 > sizexelses1total = s1total + (x(k5) - xavg)^2;endends1suqare = s1total ./ sizex;s1sqrt = sqrt(s1suqare);%s1suqare,s1sqrt%s1suqare 残差数列x 的方差s1sqrt 为x 方差的平方根S1 k5 = 0; s2total = 0 ;for y5 = xk5 = k5 + 1;if k5 > sizexelses2total = s2total + (err1(k5) - err1avg)^2;endends2suqare = s2total ./ sizex;%s2suqare 残差数列err1 的方差S2Cval = sqrt(s2suqare ./ s1suqare);Cval%nnn = 0.6745 * s1sqrt%Cval C 检验值k5 = 0;pnum = 0 ;for y5 = xk5 = k5 + 1;if abs( err1(k5) - err1avg ) < 0.6745 * s1sqrtpnum = pnum + 1;%ppp = abs( err1(k5) - err1avg )elseendendpval = pnum ./ sizex;pval%p检验值%arr1 = x41fcast(1:6)%预测结果为区间范围 预测步长和数据长度可调整程序参数进行改进x =运行结果x =ans =x1(t+1)=8908.4929exp(0.11871t)+(-7889.4929) ans = x1(t+1)=8945.2933exp(0.11871t)+(-7935.7685) x31fcast =Columns 1 through 3Columns 4 through 61429.691537401951609.90061644041 1812.824603777821019 1088 1324 1408 16011019 1088 13241408 160110191122.89347857097 1264.43142178303 Columns 4 through 61423.80987235488 1603.27758207442 1805.36675232556x41fcast =Columns 1 through 310191118.05685435129 1269.65470492098Cval =0.139501578334155 pval =1。
灰色预测GM(1,1)模型的Matlab实现
灰 色预测 G M( 1 , 1 ) 模 型是一个 拟微分 方 程的动 态 系统 ¨ , 其建 模 的实质 是对 原始 数据 先进 行一 次
累加生 成 , 使 生成 的数据 序列呈 现一 定规律 , 而后 通过 建立一 阶微分 方程模 型 , 求得拟合 曲线 , 用 以对系 统进行 预测 。具体 过程如 下 : ( 1 ) 给定 原始序 列
究 分析 , 综合其 优点 、 改正 不必 要 的细节 和错 误 , 重 新整 理 编写 G M( 1 , 1 ) 模 型 Ma t l a b算 法 , 以增 强 Ma t — l a b在 G M( 1 , 1 ) 模 型灰 色预测 中 的实 用性 和通用 性 , 方便 工程 人员 使用 。
输人数 据 , 而不需 编写计 算公 式 , 就 可 以得 到分析 预测 结 果 , 将 会使 灰 色 系统理 论 更 好地 应 用在 岩 土T
程中, 因此有 必要 对其进 行编 程和算 法实 现 , 使其 程序 化 、 智 能化 。 在 M a t l a b语 言系统 中, 几 乎所有 的操 作都是 以矩 阵操作 为基 础 , 而在 灰 色模 型预 测过 程 中 , 需 要进 行大量 的矩 阵运算 , Ma t l a b在 这方 面显示 了独 到之 处 。将 Ma t l a b和灰 色模 型结 合 , 可 以实现 系 统预 测 , 提高计 算 的效率 。 国内外学者 结合 相 关领 域 做 了一 些 研究 并 取 得 了很 大 进展 。张艳 萍 研 究 了基 于 Ma t l a b的灰色 系统预测 , 并 结合 广 东 省 批 发零 售 业 预 测 进 行 了 G M( 1 , 1 ) 模型的 M a t l a b实 现 ; 曹 玉 珍 进 行 了基于 Ma t l a b的 G M( 1 , 1 ) 模 型在 广州市 降尘 预测 中的应用 研究 ; 彭利平 进行 了基 于 Ma t l a b 的G M( 1 , 1 ) 模 型在 机械 工业 中的应用 研究 ; 李朝 阳 进行 了基 于 Ma t l a b的 G M( 1 , 1 ) 模 型 的 大气 污染 物浓 度预 测 ; 梁智 勇 用 Ma t l a b实现 了 G M( 1 , 1 ) 模 型 的供 电量 预测 ; 陈刚 研 究 了 G M( 1 , 1 ) 模 型在建
使用Matlab技术进行灰色系统建模的基本方法
使用Matlab技术进行灰色系统建模的基本方法灰色系统理论是一种具有实用价值和应用广泛的预测和决策分析方法。
在实际应用中,利用Matlab技术来进行灰色系统建模更加高效和方便。
本文将介绍使用Matlab技术进行灰色系统建模的基本方法和步骤,帮助读者深入了解和掌握这一技术。
一、Matlab在灰色系统建模中的应用Matlab是一种功能强大的科学计算软件,具有数据处理、绘图和模拟仿真等丰富的功能,因此在灰色系统建模中得到了广泛应用。
Matlab提供了各种灰色系统建模工具和函数,可以快速、准确地进行系统建模和分析。
因此,掌握Matlab的使用,对于进行灰色系统建模具有重要意义。
二、数据预处理在进行灰色系统建模之前,需要对原始数据进行预处理,以提高后续建模的准确性和可靠性。
数据预处理包括数据清洗、数据平滑和数据归一化等步骤。
Matlab 提供了丰富的数据处理函数和工具,可以快速、灵活地完成这些操作。
1. 数据清洗数据清洗是指删除或修正含有噪声、异常值或缺失值的数据。
Matlab中可以使用滤波函数、插值函数和替换函数等方法对数据进行清洗。
例如,可以使用median函数对数据进行中值滤波,去除噪声干扰。
另外,使用interp1函数进行数据插值,可以填补缺失值,使数据更加完整。
2. 数据平滑数据平滑是指通过降低数据的波动性,使其更具有连续性和稳定性。
Matlab中常用的数据平滑方法包括移动平均法、指数平滑法和小波平滑法等。
移动平均法通过计算滑动窗口内数据的平均值,来平滑原始数据。
指数平滑法则采用指数加权平均的方式,对数据进行平滑处理。
小波平滑法则利用小波分析的方法,对数据进行平滑处理。
3. 数据归一化数据归一化是指将不同量纲或取值范围的数据,转换为统一的尺度。
常用的归一化方法包括最小-最大归一化和Z-score归一化等。
最小-最大归一化将数据线性映射到[0,1]的范围内,使数据具有统一的尺度和可比性。
Z-score归一化则通过计算数据与均值的偏差,除以标准差,将数据标准化为均值为0,标准差为1的分布。
Matlab和LabVIEW在灰色预测中的应用
间 序列 , 用 灰 色模 型 中常 用 于 预 测 的 G 1 ) 型对 烈 度 值 预 值 , 用 G I 1模 型 预 测其 运 行 状 态 及发 展 趋 势 。 采 M(, 模 1 现 M( , ) 测P1 先 对 烈 度值 序 列 -。首 . 3
理 I
: , , , J 行 一 次 累加 生成 处 J2… Ⅳ进
行 程序 的虚 拟仪 器 软 件开 发平 台集 成 化 环 境 .其 最 大 的特 色 是 码 。 采 用 编 译 型 图 形 化 编 程语 言— G语 言( rp rg m n , 自 G a hp or mig)在 a (1 以直 接 调入 MA L B的应 用 文 件 , 方 法 是在 节点 上 2可 TA 其 在 I r 在 mp ” 动 测试 、 据 采 集 和控 制 、 程 监 控 和 工 业 自动 化 领 域有 广 泛 的 单 击 鼠标 右键 . 弹 出式 菜 单 中 选 择 " ot , 对 话 框 中选 择 数 过
维普资讯
1 2
福
建
电
脑
2 0 年 第 7期 08
Ma a lb和 L b IW 灰 色预 测 中的应 用 t aV E 在
成 琴 .王启 志
(华侨 大 学 机 电及 自动 化 学 院 福 建 泉 州 3 2 2 6 0 1)
【 摘
要 】 本 文建 立 灰 色模 型 对 能 够 表 征 大 型 旋 转 机 组 的 运 行 状 况 的 振 动 烈 度 值 进 行 预 测 , : 并研 制 了 能够 适 应 不 同用
户和 不 同 环 境 的虚 拟 仪 器平 台下 的 预 测 系统 。该 系统 结 合 了 MA L B编 程 实现 , 工 业 现 场得 到 实际应 用。结果 表 明 : 用 TA 在 采 该 技 术 可 以 减 少 维修 次数 和 雏 护 费 用 。
Matlab灰色预测模型GM(1,1)代码
Matlab灰色预测模型GM(1,1)代码function c7fun73X0=[2.874 3.278 3.307 3.39 3.679];AU=c7fun73(X0);a=AU(1);u=AU(2);m2=length(X0);for k=1:1:m2-1xx1(k+1)=(X0(1)-u/a)*exp(-a*k)+u/a;ends=0;xx0(1)=X0(1);for jj=2:1:m2;xx0(jj)=xx1(jj)-xx1(jj-1);enddisp('GM(1,1)对数列进行预测结果');xx0disp('数列1原始观测数据');X0disp('a');AU(1)disp('u');AU(2)function au=c7fun73(X0)m=length(X0);s1=0;for jj=1:1:m;X1(jj)=s1+X0(jj); s1=X1(jj); endfor ii=1:1:m-1; B(ii)=-(X1(ii)+X1(ii+1))/2; endB=[B(:),ones(m-1,1)];y=X0([2:m])';au=inv((B'*B))*B'*y;% 用MATLAB的灰色预测GM(1,1)模型%%程序中的变量定义;alpha是包含值的矩阵;ago是预测后累加值矩阵;var是预测值矩阵;error是残差矩阵;c是后验差比值function my_gm_test()clcdata=exprnd(5,1,10)%原始10个数据[ago alpha var error c]=gm1(data)plot(data)hold onplot(var','-r*')function [ago alpha var error c]=gm1(x); %定义函数gm1(x)%清屏,以使结果独立显示format long; %设置计算精度if length(x(:,1))==1 %对输入矩阵进行判断,如不是一维列矩阵,进行转置变换x=x';endn=length(x); %取输入数据的样本量z=0;for i=1:n %计算累加值,并将值赋予矩阵bez=z+x(i,:);be(i,:)=z;endfor i=2:n %对原始数列平行移位y(i-1,:)=x(i,:);endfor i=1:n-1 %计算数据矩阵B的第一列数据c(i,:)=-0.5*(be(i,:)+be(i+1,:));endfor j=1:n-1 %计算数据矩阵B的第二列数据e(j,:)=1;endfor i=1:n-1 %构造数据矩阵BB(i,1)=c(i,:);B(i,2)=e(i,:);endalpha=inv(B'*B)*B'*y; %计算参数矩阵for i=1:n+1 %计算数据估计值的累加数列,如改为n+1为n+m 可预测后m-1个值ago(i,:)=(x(1,:)-alpha(2,:)/alpha(1,:))*exp(-alpha(1,:)*(i-1))+alpha(2,:)/alpha(1,:);endvar(1,:)=ago(1,:)for i=1:n %如改n为n+m-1,可预测后m-1个值var(i+1,:)=ago(i+1,:)-ago(i,:); %估计值的累加数列的还原,并计算出下一预测值endfor i=1:nerror(i,:)=var(i,:)-x(i,:); %计算残差endc=std(error)/std(x); %调用统计工具箱的标准差函数计算后验差的比值cago %显示输出预测值的累加数列alpha %显示输出参数数列var %显示输出预测值error %显示输出误差c %显示后验差的比值cfunction []=greymodel(y)% 本程序主要用来计算根据灰色理论建立的模型的预测值。
灰色预测及MATLAB实现
3.1灰色预测基础知识
什么是灰色预测?
灰色预测是就灰色系统所做的预测。所谓灰色系统是介于白 色系统和黑箱系统之间的过渡系统,其具体的含义是:如果某一 系统的全部信息已知为白色系统,全部信息未知为黑箱系统,部 分信息已知,部分信息未知,那么这一系统就是灰色系统。一般 地说,社会系统、经济系统、生态系统都是灰色系统。例如物价 系统,导致物价上涨的因素很多,但已知的却不多,因此对物价 这一灰色系统的预测可以用灰色预测方法。 灰色系统理论认为对既含有已知信息又含有未知或非确定信 息的系统进行预测,就是对在一定方位内变化的、与时间有关的 灰色过程的预测。尽管过程中所显示的现象是随机的、杂乱无章 的,但毕竟是有序的、有界的,因此这一数据集合具备潜在的规 律,灰色预测就是利用这种规律建立灰色模型对灰色系统进行预 测。
ˆ (4)用最小二乘法求解灰参数 a ( a, ) ( B B )
T T
1
B Yn 。
T
ˆ (5)将灰参数 a 代入
ˆ x dy
(1)
dx
(1)
ax
(1)
,求解得
(1)
dt
(t 1) ( x
(0)
a
)e
at
a
dx ˆ ˆ (1) 由于 a 是通过最小二乘法求出的近似值,因此 x (t 1) 事近似表达
(1)
ˆ 序列,得到近似数据序列 x ˆ x
(0)
(0)
ˆ (t 1) x
(1)
ˆ (t 1) x
(t )
(7)建立灰色预测模型进行检验,步骤如下:
① 计算 x
(0)
与x
(0)
(t ) 之间的残差和相对误差 (t ) x
灰色预测matlab代码
%灰色预测function gm(x0,m) %定义函数gm(x0,m) ,x0为原始数据,m为预测个数n=length(x0);x1=zeros(1,n);x1(1)=x0(1);for i=2:n %计算累加序列x1x1(i)=x1(i-1)+x0(i);endi=2:n; %对原始数列平行移位并赋给yy(i-1)=x0(i);y=y'; %将y变成列向量for i=1:n-1; %计算数据矩阵B 的第一列数据c(i)=-0.5*(x1(i)+x1(i+1));endB=[c' ones(n-1,1)];%构造矩阵Bau=inv(B'*B)*B'*y;%计算参数a,u 矩阵for i=1:n+1+m; %计算预测累加数列的值ago(i)=(x0(1)-au(2)/au(1))*exp(-au(1)*(i-1))+au(2)/au(1);endyc(1)=ago(1);for i=1:n-1; %还原数列的值yc(i+1)=ago(i+1)-ago(i);endfor i=2:n;error(i)=yc(i)-x0(i); %计算残差值endyc(1)=ago(1);for i=1:n-1+m; %修正的还原数列的值yc(i+1)=ago(i+1)-ago(i);endc=std(error)/std(x0); %计算后验差比p=0;for i=2:nif(abs(error(i)-mean(error))<0.6745*std(x0))p=p+1;endendp=p/(n-1);w1=min(abs(error));w2=max(abs(error));for i=1:n; %计算关联度w(i)=(w1+0.5*w2)./(abs(error(i))+0.5*w2);endw=sum(w)/(n-1);%axis([1979+m,1988+m,30,160]); %x,y,(z)坐标范围plot([1979:n+1978],x0,'+',[1979:n+1978+m],yc,'*'); %grid on;xlabel('时序');ylabel('沉降量(mm)');title('地面沉降灰色模型预测拟和曲线');legend('实测值','预测值',4);fprintf('a,u值:')fprintf('%g ',au) %输出参数a,u 的值fprintf('\n累加数列:\n')fprintf('%g ',ago) %输出累加数列ago 的值fprintf('\n原始序列:\n')fprintf('%g ',x0) %输出原始序列值fprintf('\n预测:\n')fprintf('%g ',yc) %输出预测的值fprintf('\n残差:\n')fprintf('%g ',error) %输出残差的值fprintf('\n后验差比:\n')fprintf('%g',c) %输出后验差比的值fprintf('\n小误差概率:\n')fprintf('%g',p) %输出小误差概率的值fprintf('\n关联度:\n')fprintf('%g\n',w) %输出关联度w。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
即得到 G 11 模型, 中 n “为待定常数。其值 M( ,) 其 、 可 以用 最小二乘 法求 得
H s= [ 一 ( ’ ) C 以] B B B Y r其 中 一 Nhomakorabea() 2
1 灰色系统理论及数学模型建立
1 1 GM( , ) . 1 1 数学 模型 的建立
△ 一 × 10 O % () 5
对 主 志 作累减可还原得到预测数据 , n() 即
主 。( )= 主 ( ) ( 是 ( 一互 ( ‘ 忌一 1 ) 12 Ma1b程序 实 现 . t a
为了便于计算灰色理论 的 G 1 1模 型, 用 M( ,) 利 Mal 软件编制程序代码[ 如下 : tb a ]
其 中,n() z 志 一∑z ,一12… ,。 ∞ ( 走 ,, )
对 于 z () 走 可建立 一 阶微 分方程 为
— 一 + 甜 ( 一 十 … 1 )一
d
( l 1 )
算能力, 克服了传统手工计算 的不足, 通过工程实例 验证, 可以方便快捷 的得到预测值, 并将预测值与沉 降的实际观测值进行 比较 , 其结果是可行的, 能准确
的验证建筑物沉降过程 , 对建 筑物后期沉降控制有着重要意义 。
关键词: 建筑物沉降; M( ,) 型; t b 预测 G 1 1模 Mal ; a
中图分类号 : TU43; 4 3 N9 文献标识码 : A 文章编号 :635 8 (O 8 O 一8 8O 17 —7 12 O )6O l 一3
与土体的应力历史也有关联_ 。由于沉降计算精度 1 ]
的影响因素众多, 土木工程师常常反映建筑物沉降量 难 以正确估算 。
为 了确保 建筑 物的稳 定和安全 , 克服 土力学理 论 计算 上参 数取值 的不确定 性 , 本文 以灰色 系统理论 中 的 GM( ,) 型 为基 础 , 用 Malb 件强 大 的计 11模 利 t 软 a
的灰色模型[ j 。。 _ 4
设 观测 到的原 始数据 序列为
z 。 厂 ‘ 1 , ( ) … , ‘ ( ) = l∞( ) z。 2 , l。 ] z z
对 X‘ 行 一 次 累 加 生 成 ( 一 ∞进 1AGO, cmuaig Acu lt n
Ge eain0p rtr , n rt eao ) 得到 o z = r ‘ 1 , ‘ 2 , , ‘ ) n z ( )z () … z ¨( ]
fnt n口一H S N1 , , u ci o C ( , … N)
L— ln t N1 N2 … , ) e g h( , , N ;
一
其中, ∞() 王 ’志 为预测模型计算值 ; ( ) z 志 为原始数据 计算值 。
当相对 误差 △ 满 足 精 度 要 求 时 , 则认 为所 建 立 的灰 色 G ( ,) M 11预测 模 型的精 度能 满足要 求 。
收稿 日期 :O 8O—O 2O 一82
丢 ( )z( 1 ( +㈩z ) z( 1 , ) 一
:
把 丢 … ) ㈩ 一 ) 为 z作 邻 一 ( (+ ( 1 义 对… 紧 均 z z ) 定
作者简介 : 斌 (9 4 , , 敖 18 一)男 江西新余人, 合肥_ T业大学硕士生 ;
在土木工程建设中, 因沉降量或不均匀沉降量超 过允许值而影响建筑物正常使用 , 造成工程事故在建 筑物工程 事故总 数 中所 占 比例 很 多 。建筑 物 地基 沉 降量大小主要取决于使地基土体产生压缩的原因和 土体本身性状两个方面。土体压缩性指标的合理确
定也 是正确计算 地基沉 降 的关 键 , 土体 的压 缩和 固结
B 一
一
丢z(+㈩1 ( )z() (2 1 ) 丢z(+㈩2 ( 3 .() ㈩ )z )
;
灰 色系统理论 于 2 0世纪 8 O年代 被提 出来 , 它是
一
用来解决信息不完备系统的数学方法 。所谓灰色系 统, 是指部分信息明确 , 部分信息不明确的系统 , 影响 建筑物沉降的因素 中有很多因素具有不确定性 。灰 色系统理论的基本思路是: 首先对数据进行累加处理 (一 G )使观测数据序列 的随机 因素影 响淡化, 1 O, A 从 而提高观测数据序列的内在规律性 , 然后再将数据序 列建成一个变量具有微分 、 差分及近似指数规律兼容
基 于 Ma1b建筑物沉 降的灰色预测 t a
敖 斌 , 王 国体
2 ( O) 3) 9 ( ] ( 合肥工业大学 土木与水利工程学 院, 安徽 合肥
摘
要: 由于影 响建筑物沉降的因素有明确的部分 , 也有不 明确 的部分 。文章把建筑物沉降看作一个 灰色系统 , 以灰色理论 中的
G 11 作为模 型, M( , ) 采用相对误差检验模型的精度 , 编制 M t b al 程序 , a 能快速得到预测值, 并具 有较高的精度 。通过实例能很好
dt; aa
王国体 (9 1 , , 15 一)男 安徽太和人, 合肥工业大学教授.
88 《 l 工程与建设》 2 o 年第 2 卷第 6 o8 2 期
值 生成 。求 出 A 后 , 口 乱的值 代 入 ( ) , 微 分 把 、 1式 解
方程 得
; ( )一 ( ‘ ( ) z )『‘ + / ( 走 z。 1 ~ £ e口 _ () 3
() 4
GM — M :
13 GM( ,) 型的精 度检 验 . 11模 上述 GM( ,) 型 只是 一个 初始 的模 型 , 一 1 1模 不 定 能 反映数 列 的客观 规律 , 还需 要进行 模 型 的精 度检 验 。进 行精 度检 验 的方法有 后验 差法 、 色关联 度法 灰 和 相对误 差 检验法 等 , 本文采 用相 对误 差检 验法 。 即