| 基于数据变换的GM(1, 1)模型改进 |
2. 陕西省交通规划设计研究院,陕西 西安,710065;
3. 精密工程与工业测量国家测绘地理信息局重点实验室, 湖北 武汉, 430079
2. Shanxi Provincial Transport Planning Design and Research Institute, Xi'an 710065, China;
3. Key Laboratory of Precise Engineering and Industry Surveying, National Administration of Surveying, Mapping and Geoinformation, Wuhan 430079, China
灰色预测模型(gray model, GM)是邓聚龙于20世纪80年代提出的[1]。由于该模型并不需要大量的原始数据就可以较好地拟合并预测的优点[2],广泛应用于各个科学领域,并取得了良好的效果。GM(1,1)模型是其核心内容,但模型具有一定的局限性。相关研究认为,GM(1,1)模型对于呈指数变化的数据具有较高的拟合与预测精度。但随着研究的不断深入,发现事实并非如此。例如文献[3]的算例中,虽然其原始数据近似地符合指数增长,但是用GM(1,1)模型拟合得到的结果却并不理想。研究发现,真正影响GM(1,1)模型拟合精度的是原始数据的光滑度。许多学者针对GM(1,1)模型精度改进进行了一系列的数据处理,如傅里叶残差修正[4]、对数函数变换[3]、一次函数变换[5]、n次开方变换[6]和cotx变换[7]等,在一定程度上提高了模型精度。
本文在以上研究的基础上,提出了一种新的
光谱性比较原则最早由邓聚龙提出[1]。提高原始数据的光滑性已是被大众接受的一种提高灰预测建模精度的方法[8]。
引理:设有非负序列X=(x(1), x(2), …, x(n)), Y=(y(1), y(2), …, y(n)), 若有
下面证明本文提出的
证明:由于xk非负,1/kα非负且单调递减,那么对于i=1, 2, …, k-1,有:
| $ {x_k} \times \frac{1}{{{k^\alpha }}} \times {x_i} < {x_k} \times \frac{1}{{{i^\alpha }}} \times {x_i} $ | (1) |
对两边求和得到:
| $ \frac{{{x_k}}}{{{k^\alpha }}}\sum\limits_{i = 1}^{k - 1} {{x_i}} < {x_k} \times \sum\limits_{i = 1}^{k - 1} {\frac{{{x_i}}}{{{i^\alpha }}}} $ | (2) |
从而,有:
| $ \frac{{\frac{{{x_k}}}{{{k^\alpha }}}}}{{\sum\limits_{i = 1}^{k - 1} {\frac{{{x_i}}}{{{i^\alpha }}}} }} < \frac{{{x_k}}}{{\sum\limits_{i = 1}^{k - 1} {{x_i}} }} $ | (3) |
所以变换
证毕。
1.2 变换还原不扩大相对误差使用变换还原不扩大相对误差方法处理的数据,其逆变换的相对误差不会增大。所以参数α的选择范围更大,利于编程不断拟合出最佳参数。
证明:令
| $ {z_i} = {y_i}\left( {1 - \delta } \right) $ | (4) |
逆变换后为:
| $ x = {z_i} \times \left( {1 - \delta } \right) \times {i^\alpha } = {x_i} \times \left( {1 - \delta } \right) $ | (5) |
证毕。
同样,对文献[3]和文献[5]的变换方法作相应的分析,文献[3]的lnx变换法进行逆变换后为:
| $ X = x_i^{\left( {1 - \delta } \right)} $ | (6) |
变换误差会随着原始数据xi的增大而呈指数增长。文献[5]的ax+b变换法进行逆变换后为:
| $ X = \left( {1 - \delta } \right){x_i} - \frac{b}{a}\delta $ | (7) |
因其要求a < 0, 所以其逆变换后的相对误差会变大,不过相比文献[3]中的逆变换误差,文献[5]的较为稳定,且为一个恒量,不会出现原始数据过大而逆变换误差大的情况。
2 基于基于
1) 原始序列为:
| $ {Y^{\left( 0 \right)}} = \left\{ {\left. {{y^{\left( 0 \right)}}\left( 1 \right),{y^{\left( 0 \right)}}\left( 2 \right), \cdot \cdot \cdot ,{y^{\left( 0 \right)}}\left( n \right)} \right\}} \right. $ | (8) |
式中, Y(0)为非负序列,且i=1, 2, …, n。
2) 对原始数据进行基于
| $ {X^{\left( 0 \right)}} = \left\{ {\left. {{x^{\left( 0 \right)}}\left( 1 \right),{x^{\left( 0 \right)}}\left( 2 \right), \cdot \cdot \cdot ,{x^{\left( 0 \right)}}\left( n \right)} \right\}} \right. $ | (9) |
式中, X(0)(k)=Y(0)(k)/kα(α>0),k=1, 2, …, n。
3) 进行一次累加[10],则有:
| $ {X^{\left( 1 \right)}} = \left\{ {\left. {{x^{\left( 1 \right)}}\left( 1 \right),{x^{\left( 1 \right)}}\left( 2 \right), \cdot \cdot \cdot, {x^{\left( 1 \right)}}\left( n \right)} \right\}} \right. $ | (10) |
式中,
4) 建立X(1)的一阶微分方程为:
| $ \frac{{{\rm{d}}{X^{\left( 1 \right)}}}}{{{\rm{d}}t}} + a{X^{\left( 1 \right)}} = u $ | (11) |
式中, a和u为模型待估参数,记为
5)求解待估参数
| $ \widehat a = {\left( {{\mathit{\boldsymbol{B}}^{\rm{T}}}\mathit{\boldsymbol{B}}} \right)^{ - 1}}{\mathit{\boldsymbol{B}}^{\rm{T}}}{\mathit{\boldsymbol{Y}}_N} $ | (12) |
式中,
| $ \mathit{\boldsymbol{B = }}\left[ {\begin{array}{*{20}{l}} { - {Z^{\left( 1 \right)}}\left( 2 \right)}&1\\ { - {Z^{\left( 1 \right)}}\left( 3 \right)}&1\\ {\;\;\;\;\; \vdots }& \vdots \\ { - {Z^{\left( 1 \right)}}\left( n \right)}&1 \end{array}} \right];{\mathit{\boldsymbol{Y}}_N} = \left[ {\begin{array}{*{20}{l}} {{x^{\left( 0 \right)}}\left( 2 \right)}\\ {{x^{\left( 0 \right)}}\left( 3 \right)}\\ {\;\;\;\; \vdots }\\ {{x^{\left( 0 \right)}}\left( n \right)} \end{array}} \right]; $ |
| $ {Z^{\left( 1 \right)}}\left( k \right) = \frac{1}{2}\left[ {{x^{\left( 1 \right)}}\left( k \right) + {x^{\left( 1 \right)}}\left( {k - 1} \right)} \right]。$ |
6) 求解原始数据。求得
| $ {\widehat x^{\left( 1 \right)}}\left( {k + 1} \right) = \left( {{x^{\left( 0 \right)}}\left( 1 \right) - \frac{u}{a}} \right){{\rm{e}}^{ - ak}} + \frac{u}{a} $ | (13) |
对
| $ {\widehat x^{\left( 0 \right)}}\left( k \right) = {\widehat x^{\left( 1 \right)}}\left( k \right) - {\widehat x^{\left( 1 \right)}}\left( {k - 1} \right) $ | (14) |
逆变换得到原始序列为:
| $ {\widehat y^{\left( 0 \right)}}\left( k \right) = {\widehat x^{\left( 0 \right)}}\left( k \right) \times {k^\alpha } $ | (15) |
式中,k=1, 2, …, n时,
根据平均相对误差最小的原则,通过MATLAB程序可以确定α的大小。根据大量数据实验得出,最佳α值一般介于0~5。因此,为了提高数据处理速度,本文建议以0.1为起始值,0.01为间隔,范围定为0.1~5。
3 实例分析本文采用某大型钢铁联合企业一号高炉的沉降数据[11](取前10期数据进行模拟;对后两期进行预测,并用*标注)进行建模预测。本例中,α=0.81,改进后模型的后验差比值C=S2/S1=0.064 8,其中,原始数列x(0)的方差S12=618.427 6, 残差数列e的方差S22=2.622 3,小误差概率
笔者将本文建模结果与传统GM(1,1)、文献[3]中的lnx变换、文献[5]中ax+b变换的方法进行了对比,4种建模方法的精度如表 1所示。
| 表 1 4种建模方法的精度比较 Tab.1 Comparison of the Accuracy of 4 Modeling Methods |
![]() |
从表 1可以看出,本文的xk/kα方法对于传统GM(1,1)模型精度有较大的提高,且效果好于文献[3]的lnx变换方法,与文献[5]的方法效果基本相同。不过文献[5]的一次变换法ax+b有两个参数a、b,而本文xk/kα只有一个参数α,计算简便且便于编写程序。
众所周知,GM(1, 1)的优势是可以只根据很少的数据进行建模,即在贫信息的前提条件下去探寻这些数据的规律。而本文的xk/kα数据变换方法可以扩大这种优势。以本文数据为例,10期数据中取1、3、5、7、9期数据对11期数据进行预测, 预测结果为104.10 mm,相对误差为3.07%;10期数据中取1、4、7期数据对11期数据进行预测,预测结果为103.73,相对误差为3.42%。显然预测的相对误差会随着数据量的减少而增大,不过本例经过xk/kα变换后,只用3期数据的相对误差仍然小于传统GM(1, 1)模型利用10期数据所得到的相对误差。
另外,再以三峡某危岩体变形监测点5月的监测资料[11]为例,用本文xk/kα变换法与传统的GM(1, 1)模型进行对比(取前6期数据进行模拟,后两期进行预测,对其进行*标注),如表 2所示。
| 表 2 本文方法与传统GM(1, 1)模型的对比 Tab.2 This Paper Compares the Method with the Traditional GM (1, 1) Model |
![]() |
本例中,α=0.57,其中,原始数列x(0)的方差S12= 6.44;本文模型残差数列e的方差S22=0.474 8,后验差比值C=S2/S1=0.271 5;传统模型下残差数列e的方差S22=1.028 9,后验差比值C=S2/S1=0.399 7。可见,本文方法有效地提高了模型精度。再从7、8两期的数据预测结果来看,传统模型已经将原本的平稳趋势误解读为上升趋势,而本文方法处理后的数据趋势与原始观测数据基本一致。
4 结束语本文从提升原始数据光滑度的角度出发,提出了xk/kα(α>0)变换,用严格的数学公式推理论证了该变换的有效性,并通过实例验证了该方法的可行性,提高了传统GM(1, 1)的拟合精度与预测精度,拓宽了灰预测模型的应用范围。
| [1] |
邓聚龙. 灰预测与灰决策[M]. 武汉: 华中科技大学出版社, 2002.
|
| [2] |
李梦婉, 沙秀艳. 基于GM(1, 1)灰色预测模型的改进与应用[J]. 计算机工程与应用, 2016, 52(4): 24-30. DOI:10.3778/j.issn.1002-8331.1506-0257 |
| [3] |
陈涛捷. 灰色预测模型的一种拓广[J]. 系统工程, 1990, 8(4): 50-52. |
| [4] |
黎洋, 花向红, 姚周祥, 等. 傅里叶级数修正的动态GM(1, 1)模型在沉降预测中的应用[J]. 测绘地理信息, 2017, 42(1): 30-33. |
| [5] |
张军, 王秋萍, 刘素兵. 基于函数变换的优化灰色预测模型及其应用[J]. 青岛科技大学学报, 2008, 29(2): 182-184. DOI:10.3969/j.issn.1672-6987.2008.02.024 |
| [6] |
于德江. 灰色系统建模方法的探讨[J]. 系统工程, 1991(5): 9-12. |
| [7] |
李翠凤, 戴文战. 基于函数cotx变换的灰色建模方法[J]. 系统工程, 2005, 23(3): 110-114. DOI:10.3969/j.issn.1001-4098.2005.03.022 |
| [8] |
关叶青, 刘思峰. 基于函数cot(xT)变换的灰色GM(1, 1)建模方法[J]. 系统工程, 2008, 26(9): 89-93. DOI:10.3969/j.issn.1001-4098.2008.09.016 |
| [9] |
蒋志成.数据变换技术提高灰色系统建模精度的方法研究[D].南充: 西华师范大学, 2016
|
| [10] |
张贵钢, 杨志强, 朱健. 基于残差改正的动态GM(1, 1)模型在公路边坡变形监测中的应用[J]. 测绘科学, 2010, 35(4): 148-150. |
| [11] |
黄声享, 尹晖, 蒋征. 变形监测数据处理[M]. 武汉: 武汉大学出版社, 2010.
|
2019, Vol. 44



