当前位置:文档之家› 灰色预测模型理论及其应用

灰色预测模型理论及其应用

灰色预测模型理论及其应用灰色系统理论认为对既含有已知信息又含有未知或非确定信息的系统进行预测,就是对在一定方位内变化的、与时间有关的灰色过程的预测. 尽管过程中所显示的现象是随机的、杂乱无章的,但毕竟是有序的、有界的,因此这一数据集合具备潜在的规律,灰色预测就是利用这种规律建立灰色模型对灰色系统进行预测.灰色预测模型只需要较少的观测数据即可,这和时间序列分析,多元回归分析等需要较多数据的统计模型不一样. 因此,对于只有少量观测数据的项目来说,灰色预测是一种有用的工具.本文主要围绕灰色预测GM(1,1)模型及其应用进行展开。

一、灰色系统及灰色预测的概念1.1灰色系统灰色系统产生于控制理论的研究中。

若一个系统的内部特征是完全已知的,即系统的信息是充足完全的,我们称之为白色系统。

若一个系统的内部信息是一无所知,一团漆黑,只能从它同外部的联系来观测研究,这种系统便是黑色系统。

灰色系统介于二者之间,灰色系统的一部分信息是已知的,一部分是未知的。

区别白色和灰色系统的重要标志是系统各因素间是否有确定的关系。

特点:灰色系统理论以“部分信息已知、部分信息未知”的“小样本”、“贫信息”不确定型系统的研究对象。

1.2灰色预测灰色系统分析方法是通过鉴别系统因素之间发展趋势的相似或相异程度,即进行关联度分析,并通过对原始数据的生成处理来寻求系统变动的规律。

生成数据序列有较强的规律性,可以用它来建立相应的微分方程模型,从而预测事物未来的发展趋势和未来状态。

灰色预测是用灰色模型GM(1,1)来进行定量分析的,通常分为以下几类:(1) 灰色时间序列预测。

用等时距观测到的反映预测对象特征的一系列数量(如产量、销量、人口数量、存款数量、利率等)构造灰色预测模型,预测未来某一时刻的特征量,或者达到某特征量的时间。

(2) 畸变预测(灾变预测)。

通过模型预测异常值出现的时刻,预测异常值什么时候出现在特定时区内。

(3) 波形预测,或称为拓扑预测,它是通过灰色模型预测事物未来变动的轨迹。

(4) 系统预测,是对系统行为特征指标建立一族相互关联的灰色预测理论模型,在预测系统整体变化的同时,预测系统各个环节的变化。

上述灰预测方法的共同特点是:(1)允许少数据预测;(2)允许对灰因果律事件进行预测,比如灰因白果律事件:在粮食生产预测中,影响粮食生产的因子很多,多到无法枚举,故为灰因,然而粮食产量却是具体的,故为白果。

粮食预测即为灰因白果律事件预测。

白因灰果律事件:在开发项目前景预测时,开发项目的投入是具体的,为白因,而项目的效益暂时不很清楚,为灰果。

项目前景预测即为灰因白果律事件预测。

(3)具有可检验性,包括:建模可行性的级比检验(事前检验),建模精度检验(模型检验),预测的滚动检验(预测检验)。

二、GM (1,1)模型2.1GM(1,1)模型GM(1,1)模型是基于灰色系统的理论思想,将离散变量连续化,用微分方程代替差分方程,按时间累加后所形成的新的时间序列呈现的规律可用一阶线性微分方程的解来逼近,用生成数序列代替原始时间序列,弱化原始时间序列的随机性,这样可以对变化过程作较长时间的描述,进而建立微分方程形式的模型. 其建模的实质是建立微分方程的系数,将时间序列转化为微分方程,通过灰色微分方程可以建立抽象系统的发展模型. 经证明,经一阶线性微分方程的解逼近所揭示的原始时间数列呈指数变化规律时,灰色预测GM(1,1)模型的预测将是非常成功的. 2.2GM(1,1)模型的建立GM(1,1)模型是指一阶,一个变量的微分方案预测模型,是一阶单序列的线性动态模型,用于时间序列预测的离散形式的微分方程模型.模型符号含义为G M (1, 1)Grey Model 1阶方程 1个变量设时间序列()0X 有n 个观察值,()()()()()()(){}00001,2,,X x x x n =,为了使其成为有规律的时间序列数据,对其作一次累加生成运算,即令 从而得到新的生成数列()1X ,()()()()()()(){}11111,2,,X x x x n =,称为GM(1,1)模型的原始形式。

新的生成数列()1X 一般近似地服从指数规律. 则生成的离散形式的微分方程具体的形式为即表示变量对于时间的一阶微分方程是连续的. 求解上述微分方程,解为 当t =1时,()(1)x t x =,即(1)uc x a=-,则可根据上述公式得到离散形式微分方程的具体形式为其中,ax 项中的x 为dxdt的背景值,也称初始值;a ,u 是待识别的灰色参数,a 为发展系数,反映x 的发展趋势;u 为灰色作用量,反映数据间的变化关系.按白化导数定义有显然,当时间密化值定义为1时,当1t →时,则上式可记为 这表明dxdt是一次累减生成的,因此该式可以改写为当t 足够小时,变量x 从()x t 到()x t t +是不会出现突变的,所以取()x t 与()x t t +的平均值作为当t 足够小时的背景值,即(1)(1)(1)1()(1)2x x t x t ⎡⎤=++⎣⎦(紧邻均值(MEAN )生成序列)将其值带入式子,整理得(0)(1)(1)1(1)()(1)2x t a x t x t u ⎡⎤+=-+++⎣⎦(GM(1,1)模型的均值形式) 由其离散形式可得到如下矩阵:令 (0)(0)(0)(2),(3),,()TY x x x n ⎡⎤=⎣⎦称Y 为数据向量,B 为数据矩阵,α为参数向量. 则上式可简化为线性模型: 由最小二乘估计方法得上式即为GM(1,1)参数,a u 的矩阵辨识算式,式中()1T T B B B Y -事实上是数据矩阵B 的广义逆矩阵.将求得的a ,u 值代入微分方程的解式,则其中,上式是GM(1,1)模型的时间响应函数形式,将它离散化得对序列()()1ˆxt 再作累减生成可进行预测. 即 上式便是GM(1,1)模型的预测的具体计算式. 2.3 GM(1,1)模型的检验GM(1,1)模型的检验包括残差检验、关联度检验、后验差检验三种形式. 每种检验对应不同功能:残差检验属于算术检验,对模型值和实际值的误差进行逐点检验;关联度检验属于几何检验范围,通过考察模型曲线与建模序列曲线的几何相似程度进行检验,关联度越大模型越好;后验差检验属于统计检验,对残差分布的统计特性进行检验,衡量灰色模型的精度. ➢ 残差检验残差大小检验,即对模型值和实际值的残差进行逐点检验.设模拟值的残差序列为(0)()e t ,则 令()t ε为残差相对值,即残差百分比为令∆为平均残差,11()nt t n ε=∆=∑.一般要求()20%t ε<,最好是()10%t ε<,符合要求.➢ 关联度检验关联度是用来定量描述各变化过程之间的差别. 关联系数越大,说明预测值和实际值越接近.设 {}(0)(0)(0)(0)ˆˆˆˆ()(1),(2),,()Xt x x x n =⋯序列关联系数定义为式中,(0)(0)ˆ()()xt x t -为第t 个点(0)x 和(0)ˆx 的绝对误差,()t ξ为第t 个数据的关联系数,ρ称为分辨率,即取定的最大差百分比,0ρ<<1,一般取0.5ρ=.(0)()x t 和(0)ˆ()xt 的关联度为 关联度大于60%便满意了,原始数据与预测数据关联度越大,模型越好.➢ 后验差检验后验差检验,即对残差分布的统计特性进行检验. 检验步骤如下:1、计算原始时间数列(){}0(0)(0)(0)(1),(2),,()X x x x n =的均值和方差2、计算残差数列{}(0)(0)(0)(0)(1),(2),,()e e e e n =的均值e 和方差22s 其中(0)(0)(0)ˆ()()(),1,2,,e t x t xt t n =-=为残差数列.3、计算后验差比值4、计算小误差频率令0S =0.67451S ,(0)()|()|t e t e ∆=-,即{}0()P P t S =∆<.若对给定的00C >,当0C C <时,称模型为方差比合格模型;若对给定的00P >,当0P P >时,称模型为小残差概率合格模型.模型精度 >0.95 <0.35 优 >0.80 <0.5 合格 >0.70 <0.65 勉强合格 <0.70>0.65不合格表 3 后验差检验判别参照表2.3 GM(1,1)模型修正(残差GM(1,1)模型)当原始数据序列(0)X 建立的GM(1,1)模型检验不合格时,可以用GM(1,1)残差模型来修正. 如果原始序列建立的GM(1,1)模型不够精确,也可以用GM(1,1)残差模型来提高精度.若用原始序列(0)X 建立的GM(1,1)模型可获得生成序列(1)X 的预测值,定义残差序列(0)(1)(1)ˆ()()()e k x k xk =-. 若取k=t , t+1, …, n ,则对应的残差序列为计算其生成序列(1)()e k ,并据此建立相应的GM(1,1)模型 得修正模型其中1()0k tk t k tδ≥⎧-=⎨≤⎩为修正参数.三、GM (1,1)模型的应用()()(1)(1)(1)(1)(1)(1)(1)(1)(1)(1)(1)(1),(2),(3),(4)(5),(6),(7),(8)(9),(10),51.1416,81.5294,117.9101,158.9262,202.6562,251.0662,312.0662,369.06624.12409X x x x x x x x x x x ==,,,432.166第二步:计算系数值;对(1)X 做紧邻均值生成. 令(1)(1)(1)()0.5()0.5(1)Z k x k x k =+-,得()()(1)(1)(1)(1)(1)(1)(1)(1)(1)(1)(2),(3),(4)(5),(6),(7)(8)(9)(,10)37.77625,66.3355,99.71975,138.41815,180.7912,226.8612,281.5662,340.5662,400.6161Z z z z z z z z z z ==,,,,则数据矩阵B 及数据向量Y 为(1)(1)(1)(1)(1)(1)(1)(1)-37.776251(2)1-66.33551(3)1-99.719751(4)1-138.418151(5)1=-180.79121(6)1-226.86121(7)1-281.56621(8)1-340.566(9)1z z z z B z z z z ⎡⎤-⎢⎥-⎢⎥⎢⎥-⎢⎥⎢⎥-=⎢⎥-⎢⎥⎢⎥-⎢⎥⎢⎥-⎢⎥-⎣⎦ 21-400.6161⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦ 1, (0)(0)(0)(0)(0)(0)(0)(0)26.730730.387836.380741.016143.7348.41615(2)(3)(4)(5)(6)(7763)(8)().91x x x x Y x x x x ⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥==⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦对参数列ˆ[,]T aa u =进行最小二乘估计,得 即 0.101624a -=,25.290111u =α= -0.101624 , μ=25.290111 , 平均相对误差为4.685749%第三步:得出时间响应预测函数模型为: 第四步:进行灰色关联度检验。

相关主题