三次指数平滑java代码 三次指数平滑法excel操作( 三 )


编辑本段基本公式
指数平滑法的基本公式是三次指数平滑java代码:St=ayt+(1-a)St-1 式中,St--时间t的平滑值; yt--时间t的实际值; St-1--时间t-1的平滑值; a--平滑常数 , 其取值范围为[0,1]; 由该公式可知: 1.St是yt和 St-1的加权算数平均数 , 随着a取值的大小变化 , 决定yt和 St-1对St的影响程度,当a取1时,St= yt;当a取0时,St= St-1 。2.St具有逐期追溯性质,可探源至St-t+1为止,包括全部数据 。其过程中,平滑常数以指数形式递减,故称之为指数平滑法 。指数平滑常数取值至关重要 。平滑常数决定了平滑水平以及对预测值与实际结果之间差异的响应速度 。平滑常数a越接近于1 , 远期实际值对本期平滑值的下降越迅速;平滑常数a越接近于 0,远期实际值对本期平滑值影响程度的下降越缓慢 。由此,当时间数列相对平稳时,可取较大的a;当时间数列波动较大时 , 应取较小的a,以不忽略远期实际值的影响 。生产预测中,平滑常数的值取决于产品本身和管理者对良好响应率内涵的理解 。3.尽管St包含有全期数据的影响 , 但实际计算时,仅需要两个数值,即yt和 St-1,再加上一个常数a,这就使指数滑动平均具逐期递推性质,从而给预测带来了极大的方便 。4.根据公式S1=ay1+(1-a)S0,当欲用指数平滑法时才开始收集数据,则不存在y0 。无从产生S0,自然无法据指数平滑公式求出S1,指数平滑法定义S1为初始值 。初始值的确定也是指数平滑过程的一个重要条件 。如果能够找到y1以前的历史资料,那么,初始值S1的确定是不成问题的 。数据较少时可用全期平均、移动平均法;数据较多时,可用最小二乘法 。但不能使用指数平滑法本身确定初始值,因为数据必会枯竭 。如果仅有从y1开始的数据,那么确定初始值的方法有: 1)取S1等于y1; 2)待积累若干数据后,取S1等于前面若干数据的简单算术平均数,如:S1=(y1+ y2+y3)/3等等 。
编辑本段预测公式
据平滑次数不同 , 指数平滑法分为:一次指数平滑法、二次指数平滑法和三次指数平滑法等 。
一次指数平滑预测
当时间数列无明显的趋势变化 , 可用一次指数平滑预测 。其预测公式为:yt+1'=ayt+(1-a)yt' 式中,yt+1'--t+1期的预测值,即本期(t期)的平滑值St ; yt--t期的实际值; yt'--t期的预测值 , 即上期的平滑值St-1。该公式又可以写作:yt+1'=yt'+a(yt- yt') 。可见,下期预测值又是本期预测值与以a为折扣的本期实际值与预测值误差之和 。
二次指数平滑预测
二次指数平滑是对一次指数平滑的再平滑 。它适用于具线性趋势的时间数列 。指数平滑法预测
其预测公式为: yt+m=(2+am/(1-a))yt'-(1+am/(1-a))yt=(2yt'-yt)+m(yt'-yt) a/(1-a)式中,yt= ayt-1'+(1-a)yt-1 显然,二次指数平滑是一直线方程 , 其截距为:(2yt'-yt),斜率为:(yt'-yt) a/(1-a),自变量为预测天数 。二次指数平滑基本公式 St=αSt+(1-α)St-1 Yt+T=at+btT at=2St-St bt=(α/1-α)(St-St) 式中
St--第t期的一次指数平滑值 St--第t期的二次指数平滑值 α--平滑系数 Yt+T--第t+T期预测值 T--由t期向后推移期数
三次指数平滑预测
三次指数平滑预测是二次平滑基础上的再平滑 。其预测公式是:yt+m=(3yt'-3yt+yt)+[(6-5a)yt'-(10-8a)yt+(4-3a)yt]*am/2(1-a)2+ (yt'-2yt+yt')*a2m2/2(1-a)2 式中,yt=ayt-1+(1-a)yt-1 它们的基本思想都是:预测值是以前观测值的加权和,且对不同的数据给予不同的权 , 新数据给较大的权,旧数据给较小的权 。
编辑本段趋势调整
一段时间内收集到的数据所呈现的上升或下降趋势将导致指数预测滞后于实际需求 。通过趋势调整 , 添加趋势修正值,可以在一定程度上改进指数平滑预测结果 。调整后的指数平滑法的公式为: 包含趋势预测(YITt)=新预测(Yt)+趋势校正(Tt) 进行趋势调整的指数平滑预测有三个步骤: 1、 利用前面介绍的方法计算第t期的简单指数平滑预测(Yt); 2、 计算趋势 。其公式为: Tt=(1-b)Tt-1+b(Yt-Yt-1)其中,Tt=第t期经过平滑的趋势; Tt-1=第t期上期经过平滑的趋势; b=选择的趋势平滑系数; Yt=对第t期简单指数平滑预测; Yt-1=对第t期上期简单指数平滑预测 。3、计算趋势调整后的指数平滑预测值(YITt).计算公式为:YITt=Yt+Tt 。

推荐阅读