forecasting using - rob j hyndman exponential smoothing forecasting using r simple exponential...

65
Forecasting using 5. Exponential smoothing methods OTexts.com/fpp/7/ Forecasting using R 1 Rob J Hyndman

Upload: vanphuc

Post on 18-Mar-2018

237 views

Category:

Documents


1 download

TRANSCRIPT

Forecasting using

5. Exponential smoothing methods

OTexts.com/fpp/7/

Forecasting using R 1

Rob J Hyndman

Outline

1 Simple exponential smoothing

2 Non-seasonal trend methods

Forecasting using R Simple exponential smoothing 2

Simple methods

Random walk forecasts

yT+1|T = yT

Average forecasts

yT+1|T =1

T

T∑t=1

yt

Want something in between that weights mostrecent data more highly.Simple exponential smoothing uses a weightedmoving average with weights that decreaseexponentially.

Forecasting using R Simple exponential smoothing 3

Simple methods

Random walk forecasts

yT+1|T = yT

Average forecasts

yT+1|T =1

T

T∑t=1

yt

Want something in between that weights mostrecent data more highly.Simple exponential smoothing uses a weightedmoving average with weights that decreaseexponentially.

Forecasting using R Simple exponential smoothing 3

Simple methods

Random walk forecasts

yT+1|T = yT

Average forecasts

yT+1|T =1

T

T∑t=1

yt

Want something in between that weights mostrecent data more highly.Simple exponential smoothing uses a weightedmoving average with weights that decreaseexponentially.

Forecasting using R Simple exponential smoothing 3

Simple methods

Random walk forecasts

yT+1|T = yT

Average forecasts

yT+1|T =1

T

T∑t=1

yt

Want something in between that weights mostrecent data more highly.Simple exponential smoothing uses a weightedmoving average with weights that decreaseexponentially.

Forecasting using R Simple exponential smoothing 3

Simple Exponential Smoothing

Forecast equation

yT+1|T = αyT + α(1− α)yT−1 + α(1− α)2yT−2 + · · · ,

where 0 ≤ α ≤ 1.

Weights assigned to observations for:Observation α = 0.2 α = 0.4 α = 0.6 α = 0.8

yT 0.2 0.4 0.6 0.8yT−1 0.16 0.24 0.24 0.16yT−2 0.128 0.144 0.096 0.032yT−3 0.1024 0.0864 0.0384 0.0064yT−4 (0.2)(0.8)4 (0.4)(0.6)4 (0.6)(0.4)4 (0.8)(0.2)4

yT−5 (0.2)(0.8)5 (0.4)(0.6)5 (0.6)(0.4)5 (0.8)(0.2)5

Forecasting using R Simple exponential smoothing 4

Simple Exponential Smoothing

Forecast equation

yT+1|T = αyT + α(1− α)yT−1 + α(1− α)2yT−2 + · · · ,

where 0 ≤ α ≤ 1.

Weights assigned to observations for:Observation α = 0.2 α = 0.4 α = 0.6 α = 0.8

yT 0.2 0.4 0.6 0.8yT−1 0.16 0.24 0.24 0.16yT−2 0.128 0.144 0.096 0.032yT−3 0.1024 0.0864 0.0384 0.0064yT−4 (0.2)(0.8)4 (0.4)(0.6)4 (0.6)(0.4)4 (0.8)(0.2)4

yT−5 (0.2)(0.8)5 (0.4)(0.6)5 (0.6)(0.4)5 (0.8)(0.2)5

Forecasting using R Simple exponential smoothing 4

Simple Exponential Smoothing

Weighted average form

yt+1|t = αyt + (1− α)yt|t−1

for t = 1, . . . , T, where 0 ≤ α ≤ 1 is the smoothingparameter.

The process has to start somewhere, so we let thefirst forecast of y1 be denoted by `0. Then

y2|1 = αy1 + (1− α)`0

y3|2 = αy2 + (1− α)y2|1

y4|3 = αy3 + (1− α)y3|2...

yT+1|T = αyT + (1− α)yT|T−1Forecasting using R Simple exponential smoothing 5

Simple Exponential Smoothing

Weighted average form

yt+1|t = αyt + (1− α)yt|t−1

for t = 1, . . . , T, where 0 ≤ α ≤ 1 is the smoothingparameter.

The process has to start somewhere, so we let thefirst forecast of y1 be denoted by `0. Then

y2|1 = αy1 + (1− α)`0

y3|2 = αy2 + (1− α)y2|1

y4|3 = αy3 + (1− α)y3|2...

yT+1|T = αyT + (1− α)yT|T−1Forecasting using R Simple exponential smoothing 5

Simple Exponential Smoothingyt+1|t = αyt + (1− α)yt|t−1

Substituting each equation into the following equation:

y3|2 = αy2 + (1− α)y2|1

= αy2 + (1− α) [αy1 + (1− α)`0]

= αy2 + α(1− α)y1 + (1− α)2`0

y4|3 = αy3 + (1− α)[αy2 + α(1− α)y1 + (1− α)2`0]

= αy3 + α(1− α)y2 + α(1− α)2y1 + (1− α)3`0

...

yT+1|T = αyT + α(1− α)yT−1 + α(1− α)2yT−2 + · · ·+ (1− α)T`0

Exponentially weighted average

yT+1|T =T−1∑j=0

α(1− α)jyT−j + (1− α)T`0

Forecasting using R Simple exponential smoothing 6

Simple Exponential Smoothingyt+1|t = αyt + (1− α)yt|t−1

Substituting each equation into the following equation:

y3|2 = αy2 + (1− α)y2|1

= αy2 + (1− α) [αy1 + (1− α)`0]

= αy2 + α(1− α)y1 + (1− α)2`0

y4|3 = αy3 + (1− α)[αy2 + α(1− α)y1 + (1− α)2`0]

= αy3 + α(1− α)y2 + α(1− α)2y1 + (1− α)3`0

...

yT+1|T = αyT + α(1− α)yT−1 + α(1− α)2yT−2 + · · ·+ (1− α)T`0

Exponentially weighted average

yT+1|T =T−1∑j=0

α(1− α)jyT−j + (1− α)T`0

Forecasting using R Simple exponential smoothing 6

Simple exponential smoothing

Initialization

Last term in weighted moving average is(1− α)T ˆ0.

So value of `0 plays a role in all subsequentforecasts.

Weight is small unless α close to zero or Tsmall.

Common to set `0 = y1. Better to treat it as aparameter, along with α.

Forecasting using R Simple exponential smoothing 7

Simple exponential smoothing

Initialization

Last term in weighted moving average is(1− α)T ˆ0.

So value of `0 plays a role in all subsequentforecasts.

Weight is small unless α close to zero or Tsmall.

Common to set `0 = y1. Better to treat it as aparameter, along with α.

Forecasting using R Simple exponential smoothing 7

Simple exponential smoothing

Initialization

Last term in weighted moving average is(1− α)T ˆ0.

So value of `0 plays a role in all subsequentforecasts.

Weight is small unless α close to zero or Tsmall.

Common to set `0 = y1. Better to treat it as aparameter, along with α.

Forecasting using R Simple exponential smoothing 7

Simple exponential smoothing

Initialization

Last term in weighted moving average is(1− α)T ˆ0.

So value of `0 plays a role in all subsequentforecasts.

Weight is small unless α close to zero or Tsmall.

Common to set `0 = y1. Better to treat it as aparameter, along with α.

Forecasting using R Simple exponential smoothing 7

Simple exponential smoothing

Year

No.

str

ikes

in U

S

1950 1960 1970 1980 1990

3500

4000

4500

5000

5500

6000

Forecasting using R Simple exponential smoothing 8

Simple exponential smoothing

Forecasting using R Simple exponential smoothing 9

Simple exponential smoothing

Optimization

We can choose α and `0 by minimizing MSE:

MSE =1

T − 1

T∑t=2

(yt − yt|t−1)2

Unlike regression there is no closed formsolution — use numerical optimization.

Forecasting using R Simple exponential smoothing 10

Simple exponential smoothing

Optimization

We can choose α and `0 by minimizing MSE:

MSE =1

T − 1

T∑t=2

(yt − yt|t−1)2

Unlike regression there is no closed formsolution — use numerical optimization.

Forecasting using R Simple exponential smoothing 10

Simple exponential smoothing

Forecasting using R Simple exponential smoothing 11

Simple exponential smoothing

Forecasting using R Simple exponential smoothing 12

0.0 0.2 0.4 0.6 0.8 1.0

0.8

1.0

1.2

1.4

1.6

1.8

2.0

alpha

MS

E (

'000

000

)

α = 0.68

Simple exponential smoothing

Multi-step forecasts

yT+h|T = yT+1|T, h = 2,3, . . .

A “flat” forecast function.

Remember, a forecast is an estimated mean ofa future value.

So with no trend, no seasonality, and no otherpatterns, the forecasts are constant.

Forecasting using R Simple exponential smoothing 13

Simple exponential smoothing

Multi-step forecasts

yT+h|T = yT+1|T, h = 2,3, . . .

A “flat” forecast function.

Remember, a forecast is an estimated mean ofa future value.

So with no trend, no seasonality, and no otherpatterns, the forecasts are constant.

Forecasting using R Simple exponential smoothing 13

Simple exponential smoothing

Multi-step forecasts

yT+h|T = yT+1|T, h = 2,3, . . .

A “flat” forecast function.

Remember, a forecast is an estimated mean ofa future value.

So with no trend, no seasonality, and no otherpatterns, the forecasts are constant.

Forecasting using R Simple exponential smoothing 13

Simple exponential smoothing

Multi-step forecasts

yT+h|T = yT+1|T, h = 2,3, . . .

A “flat” forecast function.

Remember, a forecast is an estimated mean ofa future value.

So with no trend, no seasonality, and no otherpatterns, the forecasts are constant.

Forecasting using R Simple exponential smoothing 13

Example: Oil production

Time Observed α = 0.2 α = 0.6 α = 0.89∗

Year period t values yt Level `t

– 0 – 446.7 446.7 447.5∗

1996 1 446.7 446.7 446.7 446.71997 2 454.5 448.2 450.6 453.61998 3 455.7 449.7 453.1 455.41999 4 423.6 444.5 438.4 427.12000 5 456.3 446.8 447.3 453.12001 6 440.6 445.6 444.0 441.92002 7 425.3 441.5 434.6 427.12003 8 485.1 450.3 459.9 478.92004 9 506.0 461.4 483.0 503.12005 10 526.8 474.5 504.9 524.22006 11 514.3 482.5 509.6 515.32007 12 494.2 484.8 501.9 496.5

h Forecasts yT+h|T2008 1 – 484.8 501.9 496.52009 2 – 484.8 501.9 496.52010 3 – 484.8 501.9 496.5

∗α = 0.89 and `0 = 447.5 are obtained by minimising SSE over periods t = 1, 2, . . . , 12.

Forecasting using R Simple exponential smoothing 14

Example: Oil production

Forecasting using R Simple exponential smoothing 15

● ●

Year

Oil

(mill

ions

of t

onne

s)

1996 1998 2000 2002 2004 2006 2008 2010

420

440

460

480

500

520

● ● ●

● ●●

●● ●

● ●

●●

●●

● ●

●●

● ● ●

● ● ●

● ● ●

dataα = 0.2α = 0.6α = 0.89

SES in R

fit1 <- ses(oildata, alpha=0.2,initial="simple", h=3)

fit2 <- ses(oildata, alpha=0.6,initial="simple", h=3)

fit3 <- ses(oildata, h=3)

accuracy(fit1)accuracy(fit2)accuracy(fit3)

Forecasting using R Simple exponential smoothing 16

Equivalent forms

Weighted average form

yt+1|t = αyt + (1− α)yt|t−1

Error correction form

yt+1|t = yt|t−1 + α(yt − yt|t−1)

Component form

yt+h|t = `t

`t = αyt + (1− α)`t−1

`t = estimate of level of series.

Forecasting using R Simple exponential smoothing 17

Equivalent forms

Weighted average form

yt+1|t = αyt + (1− α)yt|t−1

Error correction form

yt+1|t = yt|t−1 + α(yt − yt|t−1)

Component form

yt+h|t = `t

`t = αyt + (1− α)`t−1

`t = estimate of level of series.

Forecasting using R Simple exponential smoothing 17

Equivalent forms

Weighted average form

yt+1|t = αyt + (1− α)yt|t−1

Error correction form

yt+1|t = yt|t−1 + α(yt − yt|t−1)

Component form

yt+h|t = `t

`t = αyt + (1− α)`t−1

`t = estimate of level of series.

Forecasting using R Simple exponential smoothing 17

Outline

1 Simple exponential smoothing

2 Non-seasonal trend methods

Forecasting using R Non-seasonal trend methods 18

Holt’s local trend method

Holt (1957) extended SES to allow forecastingof data with trends.Two smoothing parameters: α and β∗ (withvalues between 0 and 1).

yt+h|t = `t + hbt`t = αyt + (1− α)(`t−1 + bt−1)

bt = β∗(`t − `t−1) + (1− β∗)bt−1

`t denotes an estimate of the level of the seriesat time tbt denotes an estimate of the slope of theseries at time t.

Forecasting using R Non-seasonal trend methods 19

Holt’s local trend method

Holt (1957) extended SES to allow forecastingof data with trends.Two smoothing parameters: α and β∗ (withvalues between 0 and 1).

yt+h|t = `t + hbt`t = αyt + (1− α)(`t−1 + bt−1)

bt = β∗(`t − `t−1) + (1− β∗)bt−1

`t denotes an estimate of the level of the seriesat time tbt denotes an estimate of the slope of theseries at time t.

Forecasting using R Non-seasonal trend methods 19

Holt’s local trend method

Holt (1957) extended SES to allow forecastingof data with trends.Two smoothing parameters: α and β∗ (withvalues between 0 and 1).

yt+h|t = `t + hbt`t = αyt + (1− α)(`t−1 + bt−1)

bt = β∗(`t − `t−1) + (1− β∗)bt−1

`t denotes an estimate of the level of the seriesat time tbt denotes an estimate of the slope of theseries at time t.

Forecasting using R Non-seasonal trend methods 19

Holt’s local trend method

Holt (1957) extended SES to allow forecastingof data with trends.Two smoothing parameters: α and β∗ (withvalues between 0 and 1).

yt+h|t = `t + hbt`t = αyt + (1− α)(`t−1 + bt−1)

bt = β∗(`t − `t−1) + (1− β∗)bt−1

`t denotes an estimate of the level of the seriesat time tbt denotes an estimate of the slope of theseries at time t.

Forecasting using R Non-seasonal trend methods 19

Holt’s local trend method

Holt (1957) extended SES to allow forecastingof data with trends.Two smoothing parameters: α and β∗ (withvalues between 0 and 1).

yt+h|t = `t + hbt`t = αyt + (1− α)(`t−1 + bt−1)

bt = β∗(`t − `t−1) + (1− β∗)bt−1

`t denotes an estimate of the level of the seriesat time tbt denotes an estimate of the slope of theseries at time t.

Forecasting using R Non-seasonal trend methods 19

Holt’s local trend method

Holt (1957) extended SES to allow forecastingof data with trends.Two smoothing parameters: α and β∗ (withvalues between 0 and 1).

yt+h|t = `t + hbt`t = αyt + (1− α)(`t−1 + bt−1)

bt = β∗(`t − `t−1) + (1− β∗)bt−1

`t denotes an estimate of the level of the seriesat time tbt denotes an estimate of the slope of theseries at time t.

Forecasting using R Non-seasonal trend methods 19

Holt’s local trend method

Optimization

Need to find α and β∗ by minimizing the valueof MSE.We also optimize MSE for `0 and b0.Optimizing in four dimensions is getting tricky!

Forecasting using R Non-seasonal trend methods 20

Holt’s method in R

fit1 <- holt(strikes)plot(fit1$model)plot(fit1, plot.conf=FALSE)lines(fitted(fit1), col="red")fit1$model

fit2 <- ses(strikes)plot(fit2$model)plot(fit2, plot.conf=FALSE)lines(fit1$mean, col="red")

accuracy(fit1)accuracy(fit2)

Forecasting using R Non-seasonal trend methods 21

Comparing Holt and SES

Holt’s method will almost always have betterin-sample RMSE because it is optimized overone additional parameter.

It may not be better on other measures.

You need to compare out-of-sample RMSE(using a test set) for the comparison to beuseful.

But we don’t have enough data.

A better method for comparison will be in thenext session!

Forecasting using R Non-seasonal trend methods 22

Comparing Holt and SES

Holt’s method will almost always have betterin-sample RMSE because it is optimized overone additional parameter.

It may not be better on other measures.

You need to compare out-of-sample RMSE(using a test set) for the comparison to beuseful.

But we don’t have enough data.

A better method for comparison will be in thenext session!

Forecasting using R Non-seasonal trend methods 22

Comparing Holt and SES

Holt’s method will almost always have betterin-sample RMSE because it is optimized overone additional parameter.

It may not be better on other measures.

You need to compare out-of-sample RMSE(using a test set) for the comparison to beuseful.

But we don’t have enough data.

A better method for comparison will be in thenext session!

Forecasting using R Non-seasonal trend methods 22

Comparing Holt and SES

Holt’s method will almost always have betterin-sample RMSE because it is optimized overone additional parameter.

It may not be better on other measures.

You need to compare out-of-sample RMSE(using a test set) for the comparison to beuseful.

But we don’t have enough data.

A better method for comparison will be in thenext session!

Forecasting using R Non-seasonal trend methods 22

Comparing Holt and SES

Holt’s method will almost always have betterin-sample RMSE because it is optimized overone additional parameter.

It may not be better on other measures.

You need to compare out-of-sample RMSE(using a test set) for the comparison to beuseful.

But we don’t have enough data.

A better method for comparison will be in thenext session!

Forecasting using R Non-seasonal trend methods 22

Exponential trend method

Multiplicative version of Holt’s method

yt+h|t = `tbht

`t = αyt + (1− α)(`t−1bt−1)

bt = β∗(`t/`t−1) + (1− β∗)bt−1

`t denotes an estimate of the level of the series attime tbt denotes an estimate of the relative growth of theseries at time t.In R: holt(x, exponential=TRUE)Comparing additive and multiplicative trendmethods in-sample is ok because they have thesame number of parameters to optimize.

Forecasting using R Non-seasonal trend methods 23

Exponential trend method

Multiplicative version of Holt’s method

yt+h|t = `tbht

`t = αyt + (1− α)(`t−1bt−1)

bt = β∗(`t/`t−1) + (1− β∗)bt−1

`t denotes an estimate of the level of the series attime tbt denotes an estimate of the relative growth of theseries at time t.In R: holt(x, exponential=TRUE)Comparing additive and multiplicative trendmethods in-sample is ok because they have thesame number of parameters to optimize.

Forecasting using R Non-seasonal trend methods 23

Exponential trend method

Multiplicative version of Holt’s method

yt+h|t = `tbht

`t = αyt + (1− α)(`t−1bt−1)

bt = β∗(`t/`t−1) + (1− β∗)bt−1

`t denotes an estimate of the level of the series attime tbt denotes an estimate of the relative growth of theseries at time t.In R: holt(x, exponential=TRUE)Comparing additive and multiplicative trendmethods in-sample is ok because they have thesame number of parameters to optimize.

Forecasting using R Non-seasonal trend methods 23

Exponential trend method

Multiplicative version of Holt’s method

yt+h|t = `tbht

`t = αyt + (1− α)(`t−1bt−1)

bt = β∗(`t/`t−1) + (1− β∗)bt−1

`t denotes an estimate of the level of the series attime tbt denotes an estimate of the relative growth of theseries at time t.In R: holt(x, exponential=TRUE)Comparing additive and multiplicative trendmethods in-sample is ok because they have thesame number of parameters to optimize.

Forecasting using R Non-seasonal trend methods 23

Exponential trend method

Multiplicative version of Holt’s method

yt+h|t = `tbht

`t = αyt + (1− α)(`t−1bt−1)

bt = β∗(`t/`t−1) + (1− β∗)bt−1

`t denotes an estimate of the level of the series attime tbt denotes an estimate of the relative growth of theseries at time t.In R: holt(x, exponential=TRUE)Comparing additive and multiplicative trendmethods in-sample is ok because they have thesame number of parameters to optimize.

Forecasting using R Non-seasonal trend methods 23

Damped trend method

Gardner and McKenzie (1985) suggested thatthe trends should be “damped” to be moreconservative for longer forecast horizons.Two smoothing parameters: α and β∗ (withvalues between 0 and 1), and one dampingparameter 0 < φ < 1.

yt+h|t = `t + (φ+ φ2 + · · ·+ φh−1)bt`t = αyt + (1− α)(`t−1 + φbt−1)

bt = β∗(`t − `t−1) + (1− β∗)φbt−1

φ dampens the trend so it approaches aconstant.

Forecasting using R Non-seasonal trend methods 24

Damped trend method

Gardner and McKenzie (1985) suggested thatthe trends should be “damped” to be moreconservative for longer forecast horizons.Two smoothing parameters: α and β∗ (withvalues between 0 and 1), and one dampingparameter 0 < φ < 1.

yt+h|t = `t + (φ+ φ2 + · · ·+ φh−1)bt`t = αyt + (1− α)(`t−1 + φbt−1)

bt = β∗(`t − `t−1) + (1− β∗)φbt−1

φ dampens the trend so it approaches aconstant.

Forecasting using R Non-seasonal trend methods 24

Damped trend method

Gardner and McKenzie (1985) suggested thatthe trends should be “damped” to be moreconservative for longer forecast horizons.Two smoothing parameters: α and β∗ (withvalues between 0 and 1), and one dampingparameter 0 < φ < 1.

yt+h|t = `t + (φ+ φ2 + · · ·+ φh−1)bt`t = αyt + (1− α)(`t−1 + φbt−1)

bt = β∗(`t − `t−1) + (1− β∗)φbt−1

φ dampens the trend so it approaches aconstant.

Forecasting using R Non-seasonal trend methods 24

Damped trend method

Gardner and McKenzie (1985) suggested thatthe trends should be “damped” to be moreconservative for longer forecast horizons.Two smoothing parameters: α and β∗ (withvalues between 0 and 1), and one dampingparameter 0 < φ < 1.

yt+h|t = `t + (φ+ φ2 + · · ·+ φh−1)bt`t = αyt + (1− α)(`t−1 + φbt−1)

bt = β∗(`t − `t−1) + (1− β∗)φbt−1

φ dampens the trend so it approaches aconstant.

Forecasting using R Non-seasonal trend methods 24

Damped trend method

Gardner and McKenzie (1985) suggested thatthe trends should be “damped” to be moreconservative for longer forecast horizons.Two smoothing parameters: α and β∗ (withvalues between 0 and 1), and one dampingparameter 0 < φ < 1.

yt+h|t = `t + (φ+ φ2 + · · ·+ φh−1)bt`t = αyt + (1− α)(`t−1 + φbt−1)

bt = β∗(`t − `t−1) + (1− β∗)φbt−1

φ dampens the trend so it approaches aconstant.

Forecasting using R Non-seasonal trend methods 24

Damped trend method

Forecasting using R Non-seasonal trend methods 25

Forecasts from damped Holt's method

1950 1960 1970 1980 1990

2500

3500

4500

5500

Damped trend method

yt+h|t = `t + (φ+ φ2 + · · ·+ φh−1)bt`t = αyt + (1− α)(`t−1 + φbt−1)

bt = β∗(`t − `t−1) + (1− β∗)φbt−1

If φ = 1, this is the same as Holt’s method.

φ can be estimated along with α and β∗ byminimizing the MSE.

Damped trend method often gives betterforecasts than linear trend.

Forecasts converge to `T + φbT/(1− φ) ash→∞.

Forecasting using R Non-seasonal trend methods 26

Damped trend method

yt+h|t = `t + (φ+ φ2 + · · ·+ φh−1)bt`t = αyt + (1− α)(`t−1 + φbt−1)

bt = β∗(`t − `t−1) + (1− β∗)φbt−1

If φ = 1, this is the same as Holt’s method.

φ can be estimated along with α and β∗ byminimizing the MSE.

Damped trend method often gives betterforecasts than linear trend.

Forecasts converge to `T + φbT/(1− φ) ash→∞.

Forecasting using R Non-seasonal trend methods 26

Damped trend method

yt+h|t = `t + (φ+ φ2 + · · ·+ φh−1)bt`t = αyt + (1− α)(`t−1 + φbt−1)

bt = β∗(`t − `t−1) + (1− β∗)φbt−1

If φ = 1, this is the same as Holt’s method.

φ can be estimated along with α and β∗ byminimizing the MSE.

Damped trend method often gives betterforecasts than linear trend.

Forecasts converge to `T + φbT/(1− φ) ash→∞.

Forecasting using R Non-seasonal trend methods 26

Damped trend method

yt+h|t = `t + (φ+ φ2 + · · ·+ φh−1)bt`t = αyt + (1− α)(`t−1 + φbt−1)

bt = β∗(`t − `t−1) + (1− β∗)φbt−1

If φ = 1, this is the same as Holt’s method.

φ can be estimated along with α and β∗ byminimizing the MSE.

Damped trend method often gives betterforecasts than linear trend.

Forecasts converge to `T + φbT/(1− φ) ash→∞.

Forecasting using R Non-seasonal trend methods 26

Damped trend method

yt+h|t = `t + (φ+ φ2 + · · ·+ φh−1)bt`t = αyt + (1− α)(`t−1 + φbt−1)

bt = β∗(`t − `t−1) + (1− β∗)φbt−1

If φ = 1, this is the same as Holt’s method.

φ can be estimated along with α and β∗ byminimizing the MSE.

Damped trend method often gives betterforecasts than linear trend.

Forecasts converge to `T + φbT/(1− φ) ash→∞.

Forecasting using R Non-seasonal trend methods 26

Multiplicative damped trend method

Taylor (2003) introduced multiplicative damping.

yt+h|t = `tb(φ+φ2+···+φh)t

`t = αyt + (1− α)(`t−1bφt−1)

bt = β∗(`t/`t−1) + (1− β∗)bφt−1

φ = 1 gives exponential trend method

Forecasts converge to `T + bφ/(1−φ)T as h→∞.

Forecasting using R Non-seasonal trend methods 27

Multiplicative damped trend method

Taylor (2003) introduced multiplicative damping.

yt+h|t = `tb(φ+φ2+···+φh)t

`t = αyt + (1− α)(`t−1bφt−1)

bt = β∗(`t/`t−1) + (1− β∗)bφt−1

φ = 1 gives exponential trend method

Forecasts converge to `T + bφ/(1−φ)T as h→∞.

Forecasting using R Non-seasonal trend methods 27

Multiplicative damped trend method

Taylor (2003) introduced multiplicative damping.

yt+h|t = `tb(φ+φ2+···+φh)t

`t = αyt + (1− α)(`t−1bφt−1)

bt = β∗(`t/`t−1) + (1− β∗)bφt−1

φ = 1 gives exponential trend method

Forecasts converge to `T + bφ/(1−φ)T as h→∞.

Forecasting using R Non-seasonal trend methods 27