本页已使用福昕阅读器进行编辑。福昕软件������,版权所有,仅供试用。第二十四章时间序列模型时间序列是按时间顺序排列的、随时间变化且相互关联的数据序列。分析时间序列的方法构成数据分析的一个重要领域,即时间序列分析。时间序列根据所研究的依据不同,可有不同的分类。1.按所研究的对象的多少分,有一元时间序列和多元时间序列。2.按时间的连续性可将时间序列分为离散时间序列和连续时间序列两种。3.按序列的统计特性分,有平稳时间序列和非平稳时间序列。如果一个时间序列的概率分布与时间t无关,则称该序列为严格的(狭义的)平稳时间序列。如果序列的一、二阶矩存在,而且对任意时刻t满足:(1)均值为常数(2)协方差为时间间隔的函数。则称该序列为宽平稳时间序列,也叫广义平稳时间序列。我们以后所研究的时间序列主要是宽平稳时间序列。4.按时间序列的分布规律来分,有高斯型时间序列和非高斯型时间序列。§1确定性时间序列分析方法概述时间序列预测技术就是通过对预测目标自身时间序列的处理,来研究其变化趋势的。一个时间序列往往是以下几类变化形式的叠加或耦合。(1)长期趋势变动。它是指时间序列朝着一定的方向持续上升或下降,或停留在某一水平上的倾向,它反映了客观事物的主要变化趋势。(2)季节变动。(3)循环变动。通常是指周期为一年以上,由非季节因素引起的涨落起伏波形相似的波动。(4)不规则变动。通常它分为突然变动和随机变动。通常用Tt表示长期趋势项,St表示季节变动趋势项,Ct表示循环变动趋势项,Rt表示随机干扰项。常见的确定性时间序列模型有以下几种类型:(1)加法模型ytTtStCtRt(2)乘法模型ytTtStCtRt(3)混合模型ytTtStRtytStTtCtRt22其中yt是观测目标的观测记录,E(Rt)0,E(Rt)。如果在预测时间范围以内,无突然变动且随机变动的方差2较小,并且有理由认为过去和现在的演变趋势将继续发展到未来时,可用一些经验方法进行预测。§2移动平均法移动平均法是根据时间序列资料逐渐推移,依次计算包含一定项数的时序平均数,以反映长期趋势的方法。当时间序列的数值由于受周期变动和不规则变动的影响,起伏较大,不易显示出发展趋势时,可用移动平均法,消除这些因素的影响,分析、预测序-280-本页已使用福昕阅读器进行编辑。福昕软件������,版权所有,仅供试用。列的长期趋势。移动平均法有简单移动平均法,加权移动平均法,趋势移动平均法等。2.1简单移动平均法设观测序列为y1,L,yT,取移动平均的项数NT。一次简单移动平均值计算公式为:Mt(1)=1(yt+yt−1+L+yt−N+1)N=1(yt−1+L+yt−N)+1(yt−yt−N)=Mt(−11)+1(yt−yt−N)(1)NNN当预测目标的基本趋势是在某一水平上下波动时,可用一次简单移动平均方法建立预测模型:yˆt+1=Mt(1)=1(yˆt+L+yˆt−N+1),t=N,N+1,L,(2)N其预测标准误差为:T∑(yˆt−yt)2S=t=N+1,(3)T−N最近N期序列值的平均值作为未来各期的预测结果。一般N取值范围:5≤N≤200。当历史序列的基本趋势变化不大且序列中随机变动成分较多时,N的取值应较大一些。否则N的取值应小一些。在有确定的季节变动周期的资料中,移动平均的项数应取周期长度。选择最佳N值的一个有效方法是,比较若干模型的预测误差。预测标准误差最小者为好。例1某企业1月~11月份的销售收入时间序列如表1示。试用一次简单滑动平均法预测第12月份的销售收入。表1企业销售收入3月份t销售收入yt月份t12456533.8574.6606.9649.8705.1772.07891011销售收入yt816.4892.7963.91015.11102.7解:分别取N=4,N=5的预测公式=yt+yt−1+yt−2+yt−3yˆt(+11)yˆt(+21),t=4,5,L,114=yt+yt−1+yt−2+yt−3+yt−4,t=5,L,115当N=4时,预测值yˆ(1)12=993.6,预测的标准误差为11∑(yˆt(1)−yt)2S1=t=5=150.511−4当N=5时,预测值yˆ(2)12=182.4,预测的标准误差为-281-11(yˆt(2)yt)2S2t6958.2115计算结果表明,N4时,预测的标准误差较小,所以选取N4。预测第12月份的销售收入为993.6。计算的Matlab程序如下:clc,cleary=[533.8574.6606.9649.8705.1772.0816.4892.7963.91015.11102.7];m=length(y);n=[4,5];%n为移动平均的项数fori=1:length(n)%由于n的取值不同,yhat的长度不一致,下面使用了细胞数组forj=1:m-n(i)+1yhat{i}(j)=sum(y(j:j+n(i)-1))/n(i);endy12(i)=yhat{i}(end);s(i)=sqrt(mean((y(n(i)+1:m)-yhat{i}(1:end-1)).^2));endy12,s简单移动平均法只适合做近期预测,而且是预测目标的发展趋势变化不大的情况。如果目标的发展趋势存在其它的变化,采用简单移动平均法就会产生较大的预测偏差和滞后。2.2加权移动平均法在简单移动平均公式中,每期数据在求平均时的作用是等同的。但是,每期数据所包含的信息量不一样,近期数据包含着更多关于未来情况的信心。因此,把各期数据等同看待是不尽合理的,应考虑各期数据的重要性,对近期数据给予较大的权重,这就是加权移动平均法的基本思想。设时间序列为y1,y2,L,yt,L;加权移动平均公式为Mtww1ytw2y2LwNytN1,tN(4)w1w2LwN式中Mtw为t期加权移动平均数;wi为yti1的权数,它体现了相应的yt在加权平均数中的重要性。利用加权移动平均数来做预测,其预测公式为yˆt1Mtw(5)即以第t期加权移动平均数作为第t1期的预测值。例2我国1979~1988年原煤产量如表2所示,试用加权移动平均法预测1989年的产量。表2我国原煤产量统计数据及加权移动平均预测值表年份197919801981198219831984198519868.9419879.2819889.8原煤产量yt6.356.206.226.667.157.898.72三年加权移动平均预测值6.2356.43676.83177.43838.18178.69179.0733-282-相对误差(%)6.389.9813.4114.78.486.347.41解取w13,w22,w31,按预测公式yˆt13yt2yt1yt2321计算三年加权移动平均预测值,其结果列于表2中。1989年我国原煤产量的预测值为(亿吨)39.829.288.949.48yˆ19896这个预测值偏低,可以修正。其方法是:先计算各年预测值与实际值的相对误差,例如1982年为6.666.2356.38%6.66将相对误差列于表2中,再计算总的平均相对误差。yˆ1t100%(15528..4489)100%9.5%yt由于总预测值的平均值比实际值低9.5%,所以可将1989年的预测值修正为9.4819.5%10.4788计算的MATLAB程序如下:y=[6.356.209.8];6.226.667.157.898.728.949.28w=[1/6;2/6;3/6];m=length(y);n=3;fori=1:m-n+1yhat(i)=y(i:i+n-1)*w;endyhaterr=abs(y(n+1:m)-yhat(1:end-1))./y(n+1:m)T_err=1-sum(yhat(1:end-1))/sum(y(n+1:m))y1989=yhat(end)/(1-T_err)在加权移动平均法中,wt的选择,同样具有一定的经验性。一般的原则是:近期数据的权数大,远期数据的权数小。至于大到什么程度和小到什么程度,则需要按照预测者对序列的了解和分析来确定。2.3趋势移动平均法简单移动平均法和加权移动平均法,在时间序列没有明显的趋势变动时,能够准确反映实际情况。但当时间序列出现直线增加或减少的变动趋势时,用简单移动平均法和加权移动平均法来预测就会出现滞后偏差。因此,需要进行修正,修正的方法是作二次移动平均,利用移动平均滞后偏差的规律来建立直线趋势的预测模型。这就是趋势移动平均法。一次移动的平均数为-283-本页已使用福昕阅读器进行编辑。福昕软件������,版权所有,仅供试用。Mt(1)1(ytyt1LytN1)N在一次移动平均的基础上再进行一次移动平均就是二次移动平均,其计算公式为Mt(2)1(Mt(1)LMt(1)N1)Mt(21)1(Mt(1)Mt(1)N)(6)NN下面讨论如何利用移动平均的滞后偏差建立直线趋势预测模型。设时间序列{yt}从某时期开始具有直线趋势,且认为未来时期也按此直线趋势变化,则可设此直线趋势预测模型为yˆtTatbtT,T1,2,L(7)其中t为当前时期数;T为由t至预测期的时期数;at为截距;bt为斜率。两者又称为平滑系数。现在,我们根据移动平均值来确定平滑系数。由模型(7)可知atytyt1ytbtyt2yt2bt…ytN1yt(N1)bt所以ytyt1LytN1yt(ytbt)L[yt(N1)bt]Mt(1)NNNy[12L(N1)]btytN1bttN2因此N1btytMt(1)(8)2由式(7),类似式(8)的推导,可得N1btyt1Mt(11)(9)(10)(11)2所以ytyt1Mt(1)Mt(11)bt类似式(8)的推导,可得N1btMt(1)Mt(2)2于是,由式(8)和式(11)可得平滑系数的计算公式为(1)M(2)a2Mttt(12)2btN1(Mt(1)Mt(2))例3我国1965~1985年的发电总量如表3所示,试预测1986年和1987年的发电总量。-284-本页已使用福昕阅读器进行编辑。福昕软件������,版权所有,仅供试用。表3我国发电量及一、二次移动平均值计算表年份196519661967196819691970197119721973197419751976197719781979198019811982198319841985t12345678发电总量yt676825774716一次移动平均,N=6二次移动平均,N=69401159138415241668168819582031223425662820300630933277351437704107848.3966.31082.81231.81393.81563.51708.81850.52024.22216.22435.8262591011121314151617181920211181.11324.51471.91628.81792.81966.52143.42330.725302832.730463246.73461.22733.72941.2解由散点图1可以看出,发电总量基本呈直线上升趋势,可用趋势移动平均法来预测。450040003500300025002000150010005000510152025图1原始数据散点图取N6,分别计算一次和二次移动平均值并列于表3中。21(1)3461.2,M21(2)2941.2M再由公式(12),得a212M2(11)M21(2)3981.1261b21(M2(11)M21(2))208于是,得t21时直线趋势预测模型为yˆ21T3981.1208T预测1986年和1987年的发电总量为yˆ1986yˆ22yˆ2114192.1yˆ1987yˆ23yˆ2124397.1计算的MATLAB程序如下:-285-本页已使用福昕阅读器进行编辑。福昕软件������,版权所有,仅供试用。clc,clearloady.txt%把原始数据保存在纯文本文件y.txt中m1=length(y);n=6;%n为移动平均的项数fori=1:m1-n+1y