《线性回归和灰色预测模型案例(9页).doc》由会员分享,可在线阅读,更多相关《线性回归和灰色预测模型案例(9页).doc(8页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-线性回归和灰色预测模型案例19911992199319941995199619971998199920002001货运量7691 109239329Z992610149110671249512987139021578116909预测未来2015年到2020年的货运量灰色预测模型是通过少量的、不完全的信息,建立数学模型并做出预测的一种预测方法.当我们应用运筹学的思想方法解决实际问题,制定发展战略和政策、进行重大问题的决策时,都必须对未来进行科学的预测. 预测是根据客观事物的过去和现在的发展规律,借助于科学的方法对其未来的发展趋势和状况进行描述和分析,并形成科学的假设和判断.灰色系统的定义 灰色
2、系统是黑箱概念的一种推广。我们把既含有已知信息又含有未知信息的系统称为灰色系统.作为两个极端,我们将称信息完全未确定的系统为黑色系统;称信息完全确定的系统为白色系统.区别白色系统与黑色系统的重要标志是系统各因素之间是否具有确定的关系。建模原理模型的求解原始序列为:构造累加生成序列归纳上面的式子可写为 称此式所表示的数据列为原始数据列的一次累加生成,简称为一次累加生成.对作紧邻均值生成MATLAB代码如下:x=7691 18614 27943 37869 48018 590857 71580 84567 98469 114250 131159; z(1)=x(1);for i=2:6z(i)=0
3、.5*(x(i)+x(i-1);endformat long gzz = Columns 1 through 3 Columns 4 through 6 Columns 7 through 9 331218.5 78073.5 91518 Columns 10 through 11 因此构造B矩阵和Y矩阵;对参数进行最小二乘估计,采用matlab编程完成解答如下:B= -13152.5 -23278.5 -32906 -42943.5 -319437.5 -331218.5 -78073.5 -91518 -106359.5 -122704.5,ones(10,1);Y=18614 27943
4、 37869 48018 59085 71580 84567 98469 114250 131159;format long ga=inv(B*B)*B*Y结果如下:a =即=-0.085,u=59277 则GM(1,1)白化方程为预测模型为:再次通过线性回归模型对货运量进行预测:线性回归预测模型:一、定义 一元线性回归预测是处理因变量y与自变量x 之间线性关系的回归预测法.二、模型的建立:1,设年份y, 货运量x y随x的变化函数,建立一元线性回归方程:Y=b0 + b1x其中b0、b1称为回归系数。散点图如下:首先根据x、y的现有统计数据,在直角坐标系中作散点图,观察y随x而变是否为近似的
5、线性关系。若是,则求出的b0、b1值,就可确定其数学模型,然后由x的未来变化去求相应的y 值。,2,确定方法最小二乘法 使拟合的数值与实际值的总方差为最小,即拟合程度最好,则得两者之差ei根据极值原理,式()对a、b分别求偏导,并令其=0,得z三,模型的求解:运用MATLAB软件对数据进行一元线性回归分析:代码如下: x=1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 ; x=ones(11,1) x; y=7691 10923 9329 9926 10149 11067 12495 12987 13902 15781 16909;
6、plot(x,y, +);b,bint,r,rint,stats=regress(y,x)b,bint ,stats ,rcoplot(r,rint);结果:b = 1.0e+006 *bint = 1.0e+006 *stats = 1.0e+005 *(注:1.0e+006 *为1*106 后同理)回归系数回归系数估计值回归系数置信区间b01.0e+005 *1.0e+006 *() 1.0e+006 * ()b1 1.0e+005 * 1.0e+006 *0.0006 1.0e+006 * R2= 1.0e+005 * F= 1.0e+005 * p0.0000 s2 = 1.0e+00
7、5 *因为,p0.05,所以可知回归方程为y=-1579600 + 800x先观察观察模型残差:如图所示,应该剔除第2组数据。MATLAB代码为: x=1991 1993 1994 1995 1996 1997 1998 1999 2000 2001 ; x=ones(10,1) x; y=7691 9329 9926 10149 11067 12495 12987 13902 15781 16909;plot(x,y, +);b,bint,r,rint,stats=regress(y,x)b,bint ,stats ,rcoplot(r,rint);结果为:b = 1.0e+006 *bin
8、t = 1.0e+006 *stats = 1.0e+005 *(其中:1.0e+006 *为1*106)同理1.0e+005 *为1*105剔除之后结果如下:回归系数回归系数估计值回归系数置信区间b01.0e+006 *()1.0e+006 *()1.0e+005 * ()b1 1.0e+006 *1.0e+006 * 0.0008 1.0e+006*R2= 0.0000 F= 1.0e+005 *0.0025 p s2 = 1.0e+005 *将异常数据去除后,再次对去除异常点的数据进行最小二乘法拟合一个多元回归模型,残差图如下:因为,p0.05, 无异常数据可剔除因此,可知最终回归方程为
9、y=-1787900 + 900x,对ployfit拟合的函数进行评价与估计。运用polyconf函数对多项式评价和置信区间估计,matlab代码如下: x=1991 1993 1994 1995 1996 1997 1998 1999 2000 2001 ; y=7691 9329 9926 10149 11067 12495 12987 13902 15781 16909; p,S=polyfit(x,y,1)结果为:p = 1.0e+006 *S = R: 2x2 double df: 8 normr: 1.5547e+003对2015年的货运量预测,即 y=polyconf(p,201
10、5)y = 2.8793e+004DELTA = 2.7899e+003(其中)所以预测区间为: (2.8793e+004)-(2.7899e+003), (2.8793e+004)+(2.7899e+003)即,2015年的货运量在()之间。同理对2016年的货运量预测,即y = 2.9695e+004DELTA = 2.9065e+003所以预测区间为: (2.9695e+004)-(2.9065e+003), (2.9695e+004)+(2.9065e+003)即,2016年的货运量在()之间。对2017年的货运量预测,即y = 3.0596e+004DELTA = 3.0244e+0
11、03所以预测区间为: (3.0596e+004)- (3.0244e+003), (3.0596e+004)+(3.0244e+003)即,2017年的货运量在()之间。对2018年的货运量预测,即y = 3.1498e+004DELTA = 3.1433e+003所以预测区间为: (3.1498e+004)- (3.1433e+003), (3.1498e+004)+( 3.1433e+003)即,2018年的货运量在()之间。对2019年的货运量预测,即y = 3.2399e+004DELTA = 3.2633e+003所以预测区间为: (3.2399e+004)-(3.2633e+003
12、), (3.2399e+004)+ (3.2633e+003)即,2019年的货运量在()之间。对2020年的货运量预测,即y = 3.3301e+004DELTA = 3.3842e+003所以预测区间为: (3.3301e+004)-(3.3842e+003), (3.3301e+004)+(3.3842e+003)即,2020年的货运量在( )之间。附:MATLAB代码:1, x=1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 ; x=ones(11,1) x; y=7691 10923 9329 9926 10149 110
13、67 12495 12987 13902 15781 16909;plot(x,y, +);b,bint,r,rint,stats=regress(y,x)b,bint ,stats ,rcoplot(r,rint);2,x=1991 1993 1994 1995 1996 1997 1998 1999 2000 2001 ; x=ones(10,1) x; y=7691 9329 9926 10149 11067 12495 12987 13902 15781 16909;plot(x,y, +);b,bint,r,rint,stats=regress(y,x)b,bint ,stats ,rcoplot(r,rint);3,x=1991 1993 1994 1995 1996 1997 1998 1999 2000 2001 ; y=7691 9329 9926 10149 11067 12495 12987 13902 15781 16909; p,S=polyfit(x,y,1)y=polyconf(p,2015)-第 8 页年份
限制150内