您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > 时间序列的移动平均预测法
3.2时间序列的移动平均预测法由于影响时间序列的因素很多、很复杂,在对时间序列进行预测时,只能抓住主要矛盾。一般地说,只能考虑它的趋势性和周期性,对不规则的扰动应该消除。消除不规则扰动最简单的方法就是取时间序列的算术平均或几何平均。显然,这样的方法太过简单、粗糙。这些方法的实质是数据的过分修匀,即完全不顾数据的扰动及其他特征。对此想法进行修正,有移动平均法(Movingaveragemethod),这种方法就是对数据进行一定程度的修匀,部分消除不规则的扰动。3.2.1移动平均法的基本原理设时间序列为Nxxx,,,21,即样本容量为N,有N个历史数据。所谓移动平均,是指每次移动地求算术平均值。若每次按)1(Nnn个数据移动地求平均值,那么在第t时点的移动平均值tM为:yntiittnttxnxxxnM1111)(1(3-3)式中,Ntn1,而tM作为第t时点的移动平均值,即可作为第1t时点的预测值tttMyy11:。由公式(3-3)可以容易地推出如下迭代公式:)(1)(1)(11121ntttnttntnttttxxnMxxnxxxxnM(3-4)【例3-6】某商品某年1~11月销售量ix如表3-1所示。其移动平均计算后也列入表3-1(也可按下面的Matlab程序计算)。表3-1某商品销售量历史数据及其移动平均值t123456789101112ix4650595755645561454946)3(nMt51.6755.435758.67586053.6751.6746.6767.4612y)6(nMt55.1756.6758.5056.1754.8353.3333.5312y3.2.2均方差(MSE)检验显然,取不同的n就有不同的移动平均值,同时也容易看出,当Nn1时,移动平均值随着n的增大,tM越显均匀(称为修匀)。因此,应该选择一个较为合理的n值来做移动平均。选择较为合理n值的方法是:在计算多个移动平均值(对应多个n)后,计算各自的均方差nMSE:NnttinMxnNMSE121)(1(3-5)比较不同的nMSE,最小者对应的移动平均值是合适的。这个方法称为均方差检验。实际上,nMSE的值反映了移动平均值与历史数据的拟合程度,所以这种挑选方法是合理的。移动平均法及其均方差检验以及挑选预测值的Matlab程序(文件名为funmat.m)如下:funmat.mfunctionMt=funmat(x)%输入时间序列xM=zeros(length(x));MSE=zeros(1,length(x));forn=1:length(x)fort=n:length(x)fori=t-n+1:tM(n,t)=M(n,t)+x(i);endM(n,t)=M(n,t)/n;%计算移动平均值endenddisp('Movingaveragematrix:')%矩阵的行为n,列为时间点tMforn=2:length(x)-1fort=n:length(x)-1MSE(n)=MSE(n)+(x(t+1)-M(n,t))^2;endMSE(n)=MSE(n)/(length(x)-n);%计算均方差MSEenddisp('ThesmallestMSEandthecorrespondingnandtheforecast:')MSE(1)=inf;MSE(length(x))=inf;[MSE,n]=min(MSE),y=M(n,length(x))%挑选最小MSE及其预测值yend对于上面的例子,容易计算得到x=[46,50,59,57,55,64,55,61,45,49,46];funmat(x)Movingaveragematrix:M=Columns1through746.000050.000059.000057.000055.000064.00005.0000048.000054.500058.000056.000059.500059.50000051.666755.333357.000058.666758.000000053.000055.250058.750057.7500000053.400057.000058.00000000055.166756.666700000055.14290000000000000000000000000000Columns8through1161.000045.000049.000046.000058.000053.000047.000047.500060.000053.666751.666746.666758.750056.250052.500050.250058.400056.000054.800051.200058.500056.166754.833353.333357.285756.571455.142953.571455.875055.750055.625054.0000054.666755.000054.55560054.100054.100000053.3636ThesmallestMSEandthecorrespondingnandtheforecast:MSE=45.4167n=2y=47.5000可见,选取2n时的移动平均值较为合适,且第12月份的预测销售量为47.5。移动平均法的适用范围狭窄,一般针对变化较为平稳,用于短期预测的时间序列。移动平均法的实质是通过求若干个样本观察值的算术平均来消除不规则的、随机的扰动。如果考虑到不同时点值对预测值的影响,那么就有加权移动平均。此外,还可以在移动平均值数列的基础上再作移动平均以期反映出时间序列的长期趋势性。后面的指数平滑法就可以看成为这两种方法的一般描述。
本文标题:时间序列的移动平均预测法
链接地址:https://www.777doc.com/doc-7318123 .html