数学杂志  2015, Vol. 35 Issue (4): 957-962   PDF    
扩展功能
加入收藏夹
复制引文信息
加入引用管理器
Email Alert
RSS
本文作者相关文章
汤旻安
李滢
基于数据变换的优化GM (1, 1) 模型
汤旻安1,2, 李滢1    
1. 兰州交通大学自动化与电气工程学院, 甘肃 兰州 730070;
2. 兰州理工大学机电工程学院, 甘肃 兰州 730050
摘要:本文研究了提高灰色GM (1, 1) 模型预测精度的问题.利用复合函数变换对原始数据序列经过一定处理的基础上同时优化模型的背景值和初始值的方法, 获得了比改进单个模型条件更高预测精度的GM (1, 1) 模型, 推广了灰色预测模型的适用范围.
关键词灰色理论    GM (1, 1) 模型    数据变换    初始条件    背景值    
OPTIMIZED GM (1, 1) MODEL BASED ON DATA TRANSFORMATION TECHNOLOGY
TANG Min-an1,2, LI Ying1    
1. School of Automation and Elec. Engin., Lanzhou Jiaotong University, Lanzhou 730070, China;
2. School of Mechanical and Elec. Engin., Lanzhou University of Technology, Lanzhou 730050, China
Abstract: In this paper, we study the accuracy of grey GM (1, 1) forecasting model improvement.Using the composite function transformation to deal with the original data sequence, and optimizing the background value and initial value of the model, we obtain a grey forecasting model which has a higher prediction accuracy than single condition improvement GM (1, 1) model.The study extends the scope of GM (1, 1) forecasting model.
Key words: grey theory     GM (1, 1) model     data transformation     initial condition     background value    
1 引言

灰色模型作为灰色系统理论的重要内容之一, 在多个领域得到了广泛的应用.尤其是GM (1, 1) 模型, 以其所需建模样本少, 计算简单方便等特点, 因而比其他传统预测方法更具优越性.为提高模型的拟合和预测精度, 许多学者从提高原始数据序列的光滑度, 改进模型的参数估计方法, 优化背景值和初始条件等方面做了大量广泛的研究.

对改进灰色预测模型的研究, 为提高建模序列的光滑度文献[1-9]分别提出了对数函数变换、正弦函数变换、余弦函数变换、幂函数变换、正切函数变换、正切-指数函数变换、幂函数-指数函数变换、负指数函数变换等, 这些变换均能在一定程度上提高原始序列的光滑度, 并在实际应用中取得了比较满意的结果.由GM (1, 1) 模型的时间响应式可以看出影响模型模拟和预测精度的因素取决于初始值的选取和参数$a, b$的值, 而参数的值又依赖于背景值, 因此, 初始值的选取和背景值的构造是否合理直接影响到模型的模拟和预测精度.传统的GM (1, 1) 模型以历史数据中的第一个数据作为初始条件, 这就等于拟合曲线必须经过历史数据中的第一个数据点, 但这并不一定符合事实.文献[10-17]从改进背景值和初始条件方面研究了提高模型预测精度的方法.然而, 单方面改进对模型精度的贡献有限, 同时在多方面优化可使模型精度有更大的提高.本文在前人研究的基础上以文献[9]提出的函数$f(x) = c\ln x + d$变换技术和文献[14]提出的将${x^{(1)}}$的第$n$个分量作为灰色微分模型的初始条件和将原背景值${z^{(1)}}_{(k)}$优化为${z^{(1)}}_{(k)} = \frac{{{x^{(1)}}_{(k)} - {x^{(1)}}_{(k - 1)}}}{{\ln {x^{(1)}}_{(k)} - \ln {x^{(1)}}_{(k - 1)}}}$的方法相结合对GM (1, 1) 模型进行了改进, 从而使所建模型精度进一步提高.

2 传统灰色预测模型的建立

设有非负原始数据序列

${x^{(0)}}:{x^{(0)}}_{(k)} = \{ {x^{(0)}}_{(1)},{x^{(0)}}_{(2)},{x^{(0)}}_{(3)},\cdots,{x^{(0)}}_{(n)}\},$ (2.1)

其中, ${x^{(0)}}_{(k)} \ge 0, k = 1,2, \cdots n;$ ${x^{(1)}}$${x^{(0)}}$的一次累加生成数列

${x^{(1)}}_{(k)} = \{ {x^{(1)}}_{(1)},{x^{(1)}}_{(2)},{x^{(1)}}_{(3)},\cdots,{x^{(1)}}_{(n)}\},$ (2.2)

其中, ${x^{(1)}}_{(k)} = \sum\limits_{i = 1}^k {{x^{(0)}}_{(i)}} , k = 1,2, \cdots n;$ ${z^{(1)}}$${x^{(1)}}$的紧邻均值生成序列

${z^{(1)}}_{(k)} = \left\{ {{z^{(1)}}_{(2)},{z^{(1)}}_{(3)}, \cdots, {z^{(1)}}_{(n)}}\right\},$ (2.3)

其中${z^{(1)}}_{(k)} = \frac{1}{2}({x^{(1)}}_{(k)} + {x^{(1)}}_{(k - 1)}), k = 2,3, \cdots, n.$

建立关于${x^{(1)}}$的一阶白化微分方程: $\frac{{d{x^{(1)}}}}{{dt}} + a{x^{(1)}} = b$, 并用最小二乘法求解参数$a$$b$.

$\hat \alpha = {\left( {{B^T}B} \right)^{ - 1}}{B^T}{Y_N} = {[a,b]^T},$ (2.4)

式中$a$, $b$为待识别参数. $a$为灰系数, $b$为灰作用量, 分别反映了原始数据序列的增长速度和数据变化关系.

$\begin{array}{l} B = \left[ \begin{array}{l} \begin{array}{*{20}{c}} { - {z^{(1)}}_{(2)}}&1\\ { - {z^{(1)}}_{(3)}}&1 \end{array}\\ \begin{array}{*{20}{c}} \cdots & \cdots \\ { - {z^{(1)}}_{(n)}}&1 \end{array} \end{array} \right],{Y_N} = \left[ {\begin{array}{*{20}{c}} { - {x^{(0)}}_{(2)}}\\ { - {x^{(0)}}_{(3)}}\\ \cdots \\ { - {x^{(0)}}_{(n)}} \end{array}} \right].\\ \end{array}$ (2.5)

$a$, $b$确定后求解微分方程可得到GM (1, 1) 模型:

${\hat x^{(1)}}_{(k + 1)} = \left( {{x^{(0)}}_{(1)} - \frac{b}{a}} \right){e^{ - ak}} + \frac{b}{a}, k = 1,2, \cdots, n.$ (2.6)

其还原模型为

${\hat x^{(0)}}_{(k + 1)} = (1 - {e^a})\left( {{x^{(0)}}_{(1)} - \frac{b}{a}} \right){e^{ - ak}} = {\hat x^{(1)}}_{(k + 1)} - {\hat x^{(1)}}_{(k)}, k = 1,2, \cdots, n.$ (2.7)
3 优化GM (1, 1) 模型
3.1 原始数据序列的数据变换

对原始数列经过某种变换可以减小光滑比, 但不适当的变换虽可以满足光滑性要求却不一定获得较高的精度.文献[9]在保证构造的数据变换满足减小光滑比、调节级比压缩、保持序列凹凸性不变、还原误差不增大等条件下, 提出非负$f(x) = c\ln x + d$函数变换, 其中$c \ge \max \{ {x_{(k)}},k = 1,2, \cdots n\} ,{x_{(k)}} > e$, 并证明利用该函数变换对原始数据序列进行处理可以保持在原有数据序列基本规律不变的情况下, 提高数据序列的光滑度.

3.2 背景值和初始值的优化

对背景值的优化文献[10]提出用${z^{(1)}}_{(k)} = \frac{{{x^{(1)}}_{(k)} - {x^{(1)}}_{(k - 1)}}}{{\ln {x^{(1)}}_{(k)} - \ln {x^{(1)}}_{(k - 1)}}}$代替${z^{(1)}}_{(k)} = \frac{1}{2}({x^{(1)}}_{(k)} + {x^{(1)}}_{(k - 1)})$从而减小由原背景值产生的误差, 可在一定程度上提高建模精度.而初始值也是影响GM (1, 1) 模型模拟与预测精度的另一个重要因素.文献[13]基于灰色系统理论的新信息优先原理和最少信息原理, 将原GM模型的初始条件由${x^{(0)}}_{(1)}$改为以${x^{(1)}}$的第$n$个分量${x^{(1)}}_{(n)}$作为灰色模型的初始条件, 从而使得原始序列的信息通过${x^{(1)}}_{(n)}$都可以得到充分反映, 因而可以克服GM建模与${x^{(0)}}_{(1)}$无关的弊端.由于背景值优化和初始值的改进均能使得模型的精度提高, 并且二者相互独立.因此, 可先对背景值进行优化再将原模型${\hat x^{(0)}}_{(k + 1)} = (1 - {e^a})\left( {{x^{(0)}}_{(1)} - \frac{b}{a}} \right){e^{ - ak}}$中的${x^{(0)}}_{(1)}$换成${x^{(1)}}_{(n)}$即得到新的时间响应序列${\hat x^{(0)}}_{(k + 1)} = (1 - {e^a})\left( {{x^{(1)}}_{(n)} - \frac{b}{a}} \right){e^{ - ak}}$.文献[14]研究了采用初始条件与背景值同时优化的方法, 得到改进后的新模型既适用于低增长指数序列建模, 也适用于高增长指数序列建模, 且拟合精度都很高.

3.3 优化后GM (1, 1) 模型的建模过程

新的GM (1, 1) 模型的建模过程如下:

(1) 设有非负原始数据序列${y^{(0)}}$ : ${y^{(0)}}_{(k)} = \{ {y^{(0)}}_{(1)},{y^{(0)}}_{(2)},{y^{(0)}}_{(3)},\cdots,{y^{(0)}}_{(n)}\} $, $k = 1,2, \cdots n.$对序列${y^{(0)}}$做一次累加得数据序列${y^{(1)}}$ : ${y^{(1)}}_{(k)} = \{ {y^{(1)}}_{(1)},{y^{(1)}}_{(2)},{y^{(1)}}_{(3)},\cdots,{y^{(1)}}_{(n)}\} $, $k = 1,2, \cdots, n.$

(2) 对原始数列做光滑性和准指数规律检验, 建模可行性分析.光滑性检验公式: ${\rho _{(k)}} = \frac{{{y^{(0)}}_{(k)}}}{{{y^{(1)}}_{(k - 1)}}}$, ${\rho _{(k)}} \in (0,0.5)$.准指数规律检验公式: ${\delta ^{(1)}}_{(k)} = \frac{{{y^{(1)}}_{(k)}}}{{{y^{(1)}}_{(k - 1)}}}$, ${\delta ^{(1)}}_{(k)} \in (1,1.5)$.

(3) 对原始数列做函数$f(x) = c\ln x + d$变换, 得到新数列

${x^{(0)}} : {x^{(0)}}_{(k)} = \{ {x^{(0)}}_{(1)},{x^{(0)}}_{(2)},{x^{(0)}}_{(3)},\cdots,{x^{(0)}}_{(n)}\} , k = 1,2, \cdots, n.$

(4) 对数列做一次累加生成数列${x^{(1)}}$ : ${x^{(1)}}_{(k)} = \{ {x^{(1)}}_{(1)},{x^{(1)}}_{(2)},{x^{(1)}}_{(3)},\cdots,{x^{(1)}}_{(n)}\} $, 其中${x^{(1)}}_{(k)} = \sum\limits_{i = 1}^k {{x^{(0)}}_{(i)}} $, $k = 1,2, \cdots, n.$

(5) 对${x^{(1)}}$做紧邻生成序列${z^{(1)}}$ : ${z^{(1)}}_{(k)} = \left\{ {{z^{(1)}}_{(2)},{z^{(1)}}_{(3)}, \cdots {z^{(1)}}_{(n)}} \right\}$, 其中${z^{(1)}}_{(k)} = \frac{{{x^{(1)}}_{(k)} - {x^{(1)}}_{(k - 1)}}}{{\ln {x^{(1)}}_{(k)} - \ln {x^{(1)}}_{(k - 1)}}}$, $k = 2,3, \cdots, n.$

(6) 由一阶累加生成序列${x^{(1)}}$建立GM (1, 1) 模型对应的微分方程: $\frac{{d{x^{(1)}}}}{{dt}} + a{x^{(1)}} = b$并用最小二乘法求解参数$a$$b$: $\hat \alpha = {\left( {{B^T}B} \right)^{ - 1}}{B^T}{Y_N} = {[a,b]^T}$, 其中

$B = \left[ {\begin{array}{*{20}{c}} { - {z^{(1)}}_{(2)}}&1\\ { - {z^{(1)}}_{(3)}}&1\\ \cdots & \cdots \\ { - {z^{(1)}}_{(n)}}&1 \end{array}} \right],{Y_N} = \left[ {\begin{array}{*{20}{c}} { - {x^{(0)}}_{(2)}}\\ { - {x^{(0)}}_{(3)}}\\ \cdots \\ { - {x^{(0)}}_{(n)}} \end{array}} \right].$

(7) 令初始值为${x^{(1)}}_{(n)}$, 解上述微分方程得到时间响应序列

${\hat x^{(1)}}_{(k + 1)} = \left( {{x^{(1)}}_{(n)} - \frac{b}{a}} \right){e^{ - a(k - n)}} + \frac{b}{a}, k = 1,2, \cdots, n.$

(8) 其还原值为${\hat x^{(0)}}_{(k + 1)} = (1 - {e^a})\left( {{x^{(1)}}_{(n)} - \frac{b}{a}} \right){e^{ - a(k-n)}} = {\hat x^{(1)}}_{(k + 1)} - {\hat x^{(1)}}_{(k)}, k = 1,2, \cdots, n.$

(9) 由逆函数变换${\hat y^{(0)}}_{(k)} = {e^{\frac{{{{\hat x}^{(0)}}_{(k)} - d}}{c}}}$得到${\hat y^{(0)}}$, ${\hat y^{(0)}}_{(k)} = ({\hat y^{(0)}}_{(1)},{\hat y^{(0)}}_{(2)}, \cdots, {\hat y^{(0)}}_{(n)})$, $k = 1,2, \cdots, n.$

(10) 用均方差比$C$和小误差概率$p$进行模型精度等级检验. $C = \frac{{{S_1}}}{{{S_2}}}$, 其中${S_1}^2 = \frac{1}{n}\sum\limits_{k = 1}^n {({x^{(0)}}_{(k)} - \bar x} {)^2}$, ${S_2}^2 = \frac{1}{n}\sum\limits_{k = 1}^n {({\varepsilon _{(k)}} - \bar \varepsilon } {)^2}$, $p = P(\left| {{\varepsilon _{(k)}} - \bar \varepsilon } \right| < 0.6745{S_1})$, 均方差比值越小越好而小误差概率越大越好.模型精度等级检验表如表 1所示.

表 1 模型精度等级检验表
4 优化后的GM (1, 1) 在轴承套磨损中的预测

以某轴承套随时间的磨损为例进行预测, 该轴承套已经过磨合期, 且每半月对其做一次磨损测量记录, 得到磨损量数据如表 2所示.

表 2 轴承套磨损量

首先对原始数据序列进行光滑性和准指数规律检验.当$k > 3$时, 光滑比分别为0.3451、0.2615、0.2122、0.1792、0.1568, 均在 (0, 0.5) 内, 且光滑比递减, 满足准光滑性条件.当$k > 3$时, 准指数规律比分别为1.3451、1.2675、1.2122、1.1792、1.1568, 均在 (1, 1.5) 内, 因此原始序列的一次累加生成数列具有准指数规律, 可对原始数列建立GM (1, 1) 模型.

4.1 传统GM (1, 1) 模型

建立传统GM (1, 1) 预测模型为${\hat x^{(1)}}_{(k + 1)} = 142.0473{e^{0.0535k}} - 134.5028, k = 0,1, \cdots, 7.$

4.2 函数变换GM (1, 1) 模型

根据文献[9]函数变换技术$f({x_{(k)}}) = c\ln {x_{(k)}} + d$, 建立GM (1, 1) 模型, 得到变换后的模型:

${\hat x^{(1)}}_{(k + 1)} = 142.0473{e^{0.0535k}} - 134.5028, k = 0,1, \cdots, 7.$

其中, $c = \max \{ {x^{(0)}}_{(k)}\} = 22.7,$$d = - 60$.

4.3 函数变换与初始值和背景值同时优化的GM (1, 1) 模型

本文运用函数变换技术先将原始数据序列进行变换, 后再与背景值和初始值同时改进相结合的方法对传统GM (1, 1) 模型进行优化得到优化后的预测模型:

${\hat x^{(1)}}_{(k)} = 206.6667{e^{0.0536(k - 8)}} - 134.5299, k = 1,2, \cdots, 8.$
4.4 检验模型精度

由上述三种方法得出的结果进行对比分析如表 3所示.

表 3 三种模型的模拟值及相对误差比较

对比表 3中的数据可以看出, 本文提出的方法所得的平均相对误差较原始模型和文献[9]提出的方法得到的误差小且该新模型预测精度达到99.8%以上.新模型的均方误差比$C = 0.126871642 ﹤ 0.35$, 小误差概率$p = 1 > 0.95$.根据表 1可知模型精度属于一级.由此可见, 本文提出的方法具有较高的拟合和预测精度, 并具有一定的实用价值.

4.5 三种方法预测值与实际值对比图

三种方法所得预测值与实际值比较如图 1所示:

图 1 三种GM (1, 1) 方法预测值与实际值比较
5 结语

本文提出在对原始数据序列进行函数变换, 提高原始数据序列光滑度的基础上, 对模型背景值和初始值同时进行优化, 得到改进后的GM (1, 1) 模型.最后应用实例将改进后的模型与改进单一条件模型相比较, 验证了改进后的新模型具有比改进单一条件模型误差小, 精度高的优点, 从而说明了该模型的实用性和有效性.

参考文献
[1] 陈涛捷. 灰色预测模型的一种拓广[J]. 系统工程, 1990, 8(4): 50–52.
[2] 曹昶, 樊重俊, 胡兆龙. 基于正弦函数变换的灰色预测模型研究及其应用[J]. 数学杂志, 2013, 33(4): 697–701.
[3] 郑锋, 魏勇. 提高灰建模数据光滑度的一种新方法[J]. 统计与决策, 2013, 9: 37–38.
[4] 李群. 灰色预测模型的进一步拓广[J]. 系统工程理论与实践, 1993, 13(1): 64–66.
[5] 李翠凤, 戴文战. 基于函数cot x变换的灰色建模方法[J]. 系统工程, 2005, 23(3): 110–114.
[6] 关叶青, 刘思峰. 基于函数cot xa变换的灰色GM (1, 1) 建模方法[J]. 系统工程, 2008, 26(9): 89–93.
[7] 陈洁, 许长新. 灰色预测模型的改进[J]. 辽宁师范大学学报 (自然科学版), 2005, 28(3): 262–264.
[8] 何斌, 蒙清. 灰色预测模型拓广方法研究[J]. 系统工程理论与实践, 2009, 22(9): 138–141.
[9] 崔立志, 刘思峰. 基于数据变换技术的灰色预测模型[J]. 系统工程, 2010, 28(5): 104–107.
[10] 罗党, 刘思峰, 党耀国. 灰色模型GM (1, 1) 优化[J]. 中国工程科学, 2003, 5(8): 50–53.
[11] 廖飞. 对背景值优化的新GM (1, 1) 模型[J]. 数学的实践与认识, 2009, 39(18): 107–113.
[12] 骆公志, 崔杰, 谢乃明. 灰色GM (1, 1) 模型新的改进方法[J]. 统计与决策, 2008(22): 11–13.
[13] 党耀国, 刘思峰, 刘斌. 以x (1)(n) 为初始条件的GM模型[J]. 中国管理科学, 2005, 13(1): 132–134.
[14] 张怡, 魏勇, 熊常伟. 灰色模型GM (1, 1) 的一种新优化方法[J]. 系统工程理论与实践, 2007, 27(4): 141–146.
[15] 李俊峰, 戴文战. GM (1, 1) 改进模型的研究及在上海市发电量建模中的应用[J]. 系统工程理论与实践, 2005, 3: 140–144. DOI:10.3321/j.issn:1000-6788.2005.01.022
[16] 尹方平. 改进的以x(1)(n) 为初始条件的GM模型[J]. 统计与决策, 2001, 3: 164–165.
[17] 张彬, 西桂权. 基于背景值和边值修正的GM (1, 1) 模型优化[J]. 系统工程理论与实践, 2013, 33(3): 682–688. DOI:10.12011/1000-6788(2013)3-682