GM11模型及其Matlab实现_第1页
GM11模型及其Matlab实现_第2页
GM11模型及其Matlab实现_第3页
GM11模型及其Matlab实现_第4页
GM11模型及其Matlab实现_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、灰色系统预测GM(1,1)模型及其Matlab实现三天三夜72小时: 读懂题目-查找文献资料-选择题目-重查找文献资料-精读其中几篇-查找资料的资料。在数学建模中常常会遇到数据的预测问题,有些赛题中,预测占主导地位,例如: 2003年A题 SARS的传播问题; 2005年A题 长江水质的评价和预测问题; 2006年B题 艾滋病疗法的评价及疗效的预测问题; 2007年A题 中国人口增长预测问题。 有些问题则是需要在求解的过程中进行预测,如2009年D题 “会议筹备”对与会人数的确定等。参考资料:灰色系统理论及其应用 第五版 作者:刘思峰,党耀国等著 出版时间:2010.05 校超星数字图书馆可阅

2、读。 灰色模型(Gray Model)有严格的理论基础,最大优点是实用。用灰色模型预测的结果比较稳定,不仅适用于大数据量的预测,在数据量较少时(>3)预测结果依然较准确。 预备知识(1)灰色系统白色系统是指系统内部特征是完全已知的,即人们不仅知道该系统的输入输出关系,而且知道实现输入输出关系的结构与过程;黑色系统是指系统内部信息完全未知的,即人们只知道该系统输入输出关系,但不知道实现输入输出关系的结构与过程;而灰色系统是介于白色系统和黑色系统之间的一种系统,灰色系统其内部一部分信息已知,另一部分信息未知或不确定。例如,一个加有电压的电阻,也是一个系统,根据欧姆定律,I=U/R,当电阻的大

3、小知道后,便可由多大电压算出能得到多大电流。电压与电流之间有明确的关系或函数,这便是白色系统。因此,这样的系统要求有明确的作用原理,一个有明确作用原理的系统必定是具有确定结构的,必定是有物理原型的。然而许多社会经济系统都没有物理原型,虽然知道影响系统的某些因素,但很难明确全部因素,更不可能确定因素之间的映射关系。这种没有确定的映射关系(函数关系)的系统是灰色系统。(2)灰色预测灰色预测,是指对系统行为特征值的发展变化进行的预测,对既含有已知信息又含有不确定信息的系统进行的预测,也就是对在一定范围内变化的、与时间序列有关的灰过程进行预测。尽管灰过程中所显示的现象是随机的、杂乱无章的,但毕竟是有序

4、的、有界的,因此得到的数据集合具备潜在的规律。灰色预测是利用这种规律建立灰色模型对灰色系统进行预测。目前使用最广泛的灰色预测模型就是关于数列预测的一个变量、一阶微分的GM(1,1)模型。它是基于随机的原始时间序列,经按时间累加后所形成的新的时间序列呈现的规律可用一阶线性微分方程的解来逼近。经证明,经一阶线性微分方程的解逼近所揭示的原始时间序列呈指数变化规律。因此,当原始时间序列隐含着指数变化规律时,灰色模型GM(1,1)的预测是非常成功的。目前,灰色模型GM(1,1)己广泛应用于工程技术、社会、经济、农业、生态、环境等各种系统的预测中。1 灰色预测基础知识灰色系统理论认为:系统的行为现象尽管是

5、朦胧的,数据是复杂的,但它毕竟是有序的,是有整体功能的。在建立灰色预测模型之前,需先对原始时间序列进行数据处理,经过数据预处理后的数据序列称为生成列。对原始数据进行预处理,不是寻求它的统计规律和概率分布,而是将杂乱无章的原始数据列通过一定的方法处理,变成有规律的时间序列数据,即以数找数的规律,再建立动态模型。灰色系统常用的数据处理方式有累加和累减两种,通常用累加方法。 灰色预测通过鉴别系统因素之间发展趋势的相异程度,并对原始数据进行生成处理来寻找系统变动的规律,生成有较强规律性的数据序列,然后建立相应的微分方程模型,从而预测事物的未来发展趋势。灰色预测的数据是通过生成数据的模型所得到的预测值的

6、逆处理结 果。灰色预测是以灰色模型为基础的,在诸多的灰色模型中,以灰色系统中单序列一阶线性微分方程模型 GM(1,1)模型最为常用。下面简要地介绍 GM(1,1)模型。 设有原始数据列x(0)=(x(0)(1),x(0)(2),x(0)(n),n 为数据个数。如果根据x(0)数据列建立 GM(1,1)来实现预测功能,则基本步骤如下:(1)原始数据累加以便弱化随机序列的波动性和随机性,得到新数据序列: x(1) = x(1)(1),x(1)(2),x(1)(n) 其中,x(1)(t)中各数据表示对应前几项数据的累加。 x(1)(t)= , t=1,2,n(2)对x(1)(t)建立下述一阶线性微分

7、方程: 即GM(1,1)模型。 其中,a,u 为待定系数,分别称为发展系数和灰色作用量,a 的有效区间是 (-2,2),并记a,u 构成的矩阵为灰参数=。只要求出参数a,u,就能求出x(1)(t),进而求出x(0)的未来预测值。(3)对累加生成数据做均值生成B 与常数项向量Yn,即 B Yn=(4)用最小二乘法求解灰参数,则 (BTB)-1BTYn(5)将灰参数代入 ,并对进行求解,得 (1)(t+1)(X(0)(1)由于是通过最小二乘法求出的近似值,所 以(1)(t+1)是一个 近似表达式,为了与原序列x(1)(t+1)区分开来,故记为(1)(t+1)。 式中t为时间序列,可取年、季或月。(

8、6)对函数表达式(1)(t+1)及(1)(t)进行离散,并将二者做差以便还原x(0)原序列,得到近似数据序列(0)(t+1)如下: (0)(t+1)=(1)(t+1)-(1)(t) (7)对建立的灰色模型进行检验,步骤如下: 计算x(0)(t)与(0)(t)之间的残差e(0)(t)和相对误差q(0)(t): e(0)(t)=x(0)(t)-(0)(t) q(0)(t)=e(0)(t)/x(0)(t) 等等。 (8)利用模型进行预测: (0) =(0)(1),(0)(2),(0)(n),(0)(n+1),(0)(n+m)原数列的模拟 未来数列的预测 应用举例取某高校2000年2005年的某专业招

9、生数据建模,见表1。 表1 某高校专业招生数据表 年招生人数20001322001922002118200313020041872005207以表1中的数据构造原始数据列X(0),即X(0)X(0)(1),X(0)(2),X(0)(3),X(0)(4),X(0)(5),X(0)(6)132,92,118,130,187,207对X(0)进行一次累加(1AGO),生成数列:X(1)(k)X(0)(i)即X(1)X(1)(1),X(1)(2),X(1)(3),X(1)(4),X(1)(5),X(1)(6) 132,224,342,472,659,866和数据阵B、数据列YnB,Yn(92,118,

10、130,187,207)T经计算可得a,uT 进一步得到灰色预测模型GM(1,1)为 (1)(k)(X(0)(1) (132277.0137483)277.0137483 409.0137483277.0137483预测值及预测精度见表2。表2 某高校专业招生预测值及预测精度表年GM(1,1)模型计算值1AGO还原值实际值误差拟合相对误差()2000132 132132132002001225.0608796 224 93 92112002339.2954418 34211411843.382003479.52123 472140130107.692004651.6519 6591721871

11、582005862.9466129 86621120741.9320061122.31616725925272.78由表2知预测精度较高。2006年某专业招生人数预测值为259人。由于人数为整数,所以结果取整数部分。 GM(1,1)也是一种长期预测模型,在没有大的市场波动及政策性变化的前提下,该预测值应是可信的。众所周知,影响招生人数的因素很多且难以预测。因此,在采用灰色系统理论进行定量预测时,如果存在对预测对象影响较大的因素,就要在定性分析的基础上,寻找原始数据信息的突变点的量化值,然后再对预测值进行必要的修正,使预测值更接近实际情况,提高预测值的可信度,为科学决策提供可靠的数据。另外,若作

12、长期预测,要考虑对上限值的约束条件。2 灰色预测的 MATLAB程序 2.1 典型程序结构 灰色预测中有很多关于矩阵的运算,这可是 MATLAB的特长,所以用 MATLAB是实现灰色预测过程的首选。用 MATLAB编写灰色预测程序时,可以完全按照预测模型的求解步骤,即(1)对原始数据进行累加。 (2)构造累加矩阵B 与常数向量Yn。 (3)求解灰参数。 (4)将参数带入预测模型进行数据预测。 下面以某公司收入预测问题为例介绍灰色预测的 MATLAB实现过程。 已知某公司19992008年 的 利 润 为 (单 位:元/年):89677,99215,109655,120333,135823,15

13、9878,182321,209407,246619,300670,现在要预测该公司未来几年的利润情况。 具体的 MATLAB程序如下: clear syms a u; c=a u' %灰参数cA=89677,99215,109655,120333,135823,159878,182321,209407,246619,300670; %原始数据Ago=cumsum(A); %原始数据一次累加 n=length(A); %原始数据个数for i=1:(n-1) C(i)=(Ago(i)+Ago(i+1)/2; %生成累加矩阵 end % 计算待定参数的值 Yn=A;Yn(1)=; Yn=Y

14、n' E=-C;ones(1,n-1); c=inv(E*E')*E*Yn; c=c' a=c(1);u=c(2); % 预测后续数据 F=;F(1)=A(1); for i=2:(n+10) F(i)=(A(1)-u/a)/exp(a*(i-1)+u/a ; end G=;G(1)=A(1); for i=2:(n+10) G(i)=F(i)-F(i-1); %得到预测出来的数据 end t1=1999:2008; t2=1999:2018; Gplot(t1,A,'o',t2,G) %原始数据与预测数据的比较 运行该程序,得到的预测数据如下: G =

15、1.0e+006 * Columns1through14 0.0897 0.0893 0.1034 0.1196 0.1385 0.1602 0.1854 0.2146 0.2483 0.2873 0.3325 0.3847 0.4452 0.5152 Columns15through20 0.5962 0.6899 0.7984 0.9239 1.0691 1.2371 该程序还显示了预测数据与原始数据的比较图。 2.2 灰色预测程序说明 (1)先熟悉程序中各条命令的功能,以加深对灰色预测理论的理解。 (2)在实际使用时,可以直接套用该段程序,把原数据和时间序列数据替换就可以了。 (3)模型

16、的误差检验可以灵活处理,图中给出的是预测数据与原始数据的比较图,同样也可以对预测数据进行其他方式的精度检验。 3 灰色预测应用实例 3.1 实例一:长江水质的预测(CUMCM 2005A) 长江的水质问题是一个复杂的非线性系统,但是由于数据样本少,需要预测的时间长,直接应用神经网络很难取得理想的效果。考虑到污水排放量的变化规律是一个不确定的系统,且题中给出污水排放量数据样本比较少,还要求做出长达10年的预测,因此采用灰色预测方 法来预测未来的污水排放量。 对原题附件4中的数据进行整理可以得到10年的长江污水量排放数据,如下表所列。 19952004年长江污水排放量 年份199519961997

17、1998199920002001200220032004污水量/亿吨174179183189207234220.5256270285以前述的程序段为基础,将上表的数据代入,并更新时间轴数据,即得到新程序。 clear syms a u; c=a u' %灰参数cA=174 179 183 189 207 234 220.5 256 270 285; %原始数据Ago=cumsum(A); %原始数据一次累加 n=length(A); %原始数据个数for i=1:(n-1) C(i)=(Ago(i)+Ago(i+1)/2; %生成累加矩阵 end % 计算待定参数的值 Yn=A;Yn(

18、1)=; Yn=Yn' E=-C;ones(1,n-1); c=inv(E*E')*E*Yn; c=c' a=c(1);u=c(2); % 预测后续数据 F=;F(1)=A(1); for i=2:(n+10) F(i)=(A(1)-u/a)/exp(a*(i-1)+u/a ; end G=;G(1)=A(1); for i=2:(n+10) G(i)=F(i)-F(i-1); %得到预测出来的数据 end t1=1995:2004; t2=1995:2014; G,a,u %输出预测值、发展系数和灰色作用量 plot(t1,A,'o',t2,G) %原

19、始数据与预测数据的比较 19952014预计长江排放的污水量 3.2 实例二:预测与会代表人数(CUMCM 2009D) 1.问题描述 该题要求为会议筹备组制订一个预订宾馆客房、租借会议室、租用客车的合理方案。为了解决这个问题,需要先预测与会代表的人数。预测的依据是代表回执数量及往届的与会人员数据。已知本届会议的回执情况表及以往几届会议代表回执和与会情况表。 要解决的问题是:根据这些数据预测本届与会代表人数。 本届会议代表的回执中有关住房要求的信息 单位:人 要求合住1合住2合住3独住1独住2独住3男154104321076841女784817592819说明:表头第一行中的数字1、2、3分别指每天每间120160元、161200元、201300元三种不同价格的房间。合住是指要求两人合住一间。独住是指可安排单人间或一人单独住一个双人间。 以往几届会议代表回执和与会情况 单位:人 届 次第一届第二届第三届第四届发来回执的代表数量315356408711发来回执但未与会的代表数量891151

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论