编辑: 梦三石 2013-01-08

5 .

9 ,所以可将

1989 年的预测值修正为

4788 .

10 %

5 .

9 1

48 .

9 = ? 计算的 MATLAB 程序如下: y=[6.35 6.20 6.22 6.66 7.15 7.89 8.72 8.94 9.28 9.8];

w=[1/6;

2/6;

3/6];

m=length(y);

n=3;

for i=1:m-n+1 yhat(i)=y(i:i+n-1)*w;

end yhat err=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) 在加权移动平均法中, t w 的选择,同样具有一定的经验性.一般的原则是:近期 数据的权数大,远期数据的权数小.至于大到什么程度和小到什么程度,则需要按照预 测者对序列的了解和分析来确定. 2.3 趋势移动平均法 简单移动平均法和加权移动平均法, 在时间序列没有明显的趋势变动时, 能够准确 反映实际情况. 但当时间序列出现直线增加或减少的变动趋势时, 用简单移动平均法和 加权移动平均法来预测就会出现滞后偏差.因此,需要进行修正,修正的方法是作二次 移动平均, 利用移动平均滞后偏差的规律来建立直线趋势的预测模型. 这就是趋势移动 平均法. 一次移动的平均数为 -284- ) (

1 1

1 )

1 ( + ? ? + + + = N t t t t y y y N M L 在一次移动平均的基础上再进行一次移动平均就是二次移动平均,其计算公式为 ) (

1 ) (

1 )

1 ( )

1 ( )

2 (

1 )

1 (

1 )

1 ( )

2 ( N t t t N t t t M M N M M M N M ? ? + ? ? + = + + = L (6) 下面讨论如何利用移动平均的滞后偏差建立直线趋势预测模型. 设时间序列 } { t y 从某时期开始具有直线趋势,且认为未来时期也按此直线趋势变 化,则可设此直线趋势预测模型为 T b a y t t T t + = + ? , L ,

2 ,

1 = T (7) 其中t 为当前时期数;

T 为由t 至预测期的时期数;

t a 为截距;

t b 为斜率.两者又称为 平滑系数. 现在,我们根据移动平均值来确定平滑系数.由模型(7)可知 t t y a = t t t b y y ? = ?1 t t t b y y

2 2 ? = ? … t t N t b N y y )

1 (

1 ? ? = + ? 所以 t t t t t t t t t N t t t t b N y N b N Ny N b N y b y y N y y y M

2 1 )]

1 (

2 1 [ ] )

1 ( [ ) (

1 1 )

1 ( ? ? = ? + + + ? = ? ? + + ? + = + + + = + ? ? L L L 因此 t t t b N M y

2 1 )

1 ( ? = ? (8) 由式(7) ,类似式(8)的推导,可得 t t t b N M y

2 1 )

1 (

1 1 ? = ? ? ? (9) 所以 t t t t t b M M y y = ? = ? ? ? )

1 (

1 )

1 (

1 (10) 类似式(8)的推导,可得 t t t b N M M

2 1 )

2 ( )

1 ( ? = ? (11) 于是,由式(8)和式(11)可得平滑系数的计算公式为 ? ? ? ? ? ? ? = ? = ) (

1 2

2 )

2 ( )

1 ( )

2 ( )

1 ( t t t t t t M M N b M M a (12) 例3我国 1965~1985 年的发电总量如表

3 所示,试预测

1986 年和

1987 年的发 电总量. -285- 表3我国发电量及

一、二次移动平均值计算表 年份 t 发电总量 yt 一次移动平均,N=6 二次移动平均,N=6

1965 1

676 1966

2 825

1967 3

774 1968

4 716

1969 5

940 1970

6 1159 848.3

1971 7

1384 966.3

1972 8 1........

下载(注:源文件不在本站服务器,都将跳转到源网站下载)
备用下载
发帖评论
相关话题
发布一个新话题