欢迎来到天天文库
浏览记录
ID:40892892
大小:237.01 KB
页数:17页
时间:2019-08-10
《灰色模型算法文档》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、灰色预测算法及相关程序-17-1引言32算法的基本原理32.1GM(1,1)模型:32.2生成数42.2.1累加生成42.2.2累减生成53算法的具体实现流程63.1算法流程图63.2实现步骤83.3数据准备与预处理104算法程序实现104.1程序使用说明104.2程序源代码114.3程序运行164.3.1程序运行及运行环境说明164.3.2输入数据164.3.3输出数据165参考文献16-17-灰色预测算法1引言灰色预测(greyprediction)是利用灰色系统理论就灰色系统所作的预测.灰色系统理论认为,尽管系统
2、表象复杂,数据散乱,信息不充分,但作为系统,它必然有整体功能和内在规律,必然是有序的.现有的分析方法大多依据过去的大量数据,按照统计方法分析其规律,这样不仅受数据量的限制,而且准确程度不高.而灰色系统理论把随机量看作是在一定范围内变化的灰色量,对灰色量的处理不是寻求它的统计规律和概率分布,而是对原始数据加以处理,将杂乱无章的原始数据变为规律性较强的生成数据,通过对生成数据建立动态模型,来挖掘系统内部信息并充分利用信息进行分析预测.目前,灰色系统理论用于预测主要通过GM(m,n)模型,该模型是灰色系统理论的量化体现,可用
3、于以下几个方面的预测:(1)数列预测:对某个事物发展变化的大小与时间进行预测.(2)灾变预测:预测灾变发生的时间或者说是异常值出现时区的分布.如人体的血压过高或过低的时间预测.(3)季节性灾变预测:对发生在每年特定时区的事件和命题作预测.(4)拓扑预测:即事物整体的预测,亦称波形预测.其特点是对于预先给定的多组数值建立GM(1,1)模型群,根据预测结果构造出整个波形.(5)系统预测:对系统中众多变量间相互协调关系的发展变化所进行的预测.2算法的基本原理2.1GM(1,1)模型:灰色模型GM(1,1)GM(1,1)的含义
4、为1阶,1个变量的灰色模型,它是在数据生成的基础上建立如下灰微分方程:-17-式中为原始序列,,.a称为发展系数,它反映和的发展态势;b称为灰作用量,它的大小反映数据变化的关系.对序列,因为为与的平均值,故记为MEAN,即MEAN的白化型为:初始值用,则其解为:该式用于预测时称为时间响应函数,表示为累减还原:其中(a,b)可通过最小二乘求解。2.2生成数灰色模型是将随机数经生成后变为有序的生成数据,然后建立微分方程,寻找生成数据的规律,再将运算结果还原的一种方法,其基础是数据的生成.常用的生成方式有累加生成和累减生成.
5、2.2.1累加生成累加生成是将原始数据通过累加以生成新的数列.记原始数列为:-17-记的生成数列AGO为:其中.称为的一次累加生成,记为1—AGO.定义的2—AGO为:=AGO.一般定义的r次AGO为:=AGO.原始数据经累加生成后,其随机性明显减小,而规律性将增加.对于非负的数据序列,累加生成的是一个递增的序列.2.2.2累减生成累减生成是累加生成的逆运算,它是通过将原始序列前后两个数据相减生成新的数据序列.累减生成可将累加生成还原为非生成数列,在建模中获得增量信息.即:IAGO-17-3算法的具体实现流程3.1算法
6、流程图-17--17-3.2实现步骤(1)数据检验与处理:具体算法:根据原始序列的级比的大小,判断GM(1,1)建模的可行性.的定义为:可揭示数列的平滑情况或指数律的符合情况,若为常数,则具有白指数律(即确切的指数律),当然,此时无建立GM(1,1)模型的价值.GM(1,1)建模希望的是的取值区间长度(覆盖的测度)接近于零而不等于零,其可容区为(0.1353,7.389),即参数或级比的可容区是GM(1,1)建模的基本条件,但不是实用条件,要想建立满意有效的GM(1,1)模型,参数或级比应落于界区内.设n是原始数据的个
7、数,则我们有:a的界区:;的界区:,若,则认为是可作GM(1,1)建模的.(2)建立模型GM(1,1)具体算法:利用算法思想的介绍建立模型,则可得累加预测值和预测值:模型的白化型为:初始值用,则其解为:-17-该式用于预测时称为时间响应函数,表示为累减还原;(3)检验预测值:①残差检验:设为原始数列设为通过模型(11-52)和(11-53)得到的预测数据列则称为残差,称为GM(1,1)的残差相对值,若残差小于0.1,则称精度达到较高要求;若残差介于0.1与0.2之间,则称精度达到一般要求;若残差大于0.2,则模型不可靠
8、。②级比偏差值检验:与原始数列级比一样,我们定义模型级比推导可知,模型级比与k无关(因为符合指数律)其中a为发展系数.定义级比偏差一般要求,最好;-17-(4)由模型GM(1,1)作相应的预测。3.3数据准备与预处理1)输入原始数据列。2)对原始数据做级比检验,若不满足要求,需要对原始数据作平移变换,直到满足要求为止。4算法程序实
此文档下载收益归作者所有