exponential smoothing: level & trend data - edx · ctl.sc1x - supply chain and logistics...

21
MIT Center for Transportation & Logistics CTL.SC1x -Supply Chain & Logistics Fundamentals Exponential Smoothing: Level & Trend Data

Upload: vandang

Post on 21-Aug-2019

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Exponential Smoothing: Level & Trend Data - edX · CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend Treatment of History • Previous

MIT Center for Transportation & Logistics

CTL.SC1x -Supply Chain & Logistics Fundamentals

Exponential Smoothing:

Level & Trend Data

Page 2: Exponential Smoothing: Level & Trend Data - edX · CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend Treatment of History • Previous

CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend

Treatment of History •  Previous models differed in the amount of history considered,

but were similar in their equal treatment of it. n  Cumulative & Moving Average – equal weighting to all observations n  Naïve – all weight to most recent observation

•  Is there something in between these extremes? •  Should we treat historical data differently?

n  The value of data degrades over time n  Weight the newer observations more than the older ones

•  This is what exponential smoothing does n  Each observation is weighted n  Weights decrease exponentially as they age

xt ,t+1 =xii=t+1−M

t∑

Mxt ,t+1 =

xii=1

t∑t

xt ,t+1 = xt

xt ,t+1 =αxt + 1−α( ) xt−1,t 0 ≤α ≤1

2

Page 3: Exponential Smoothing: Level & Trend Data - edX · CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend Treatment of History • Previous

CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend

Simple Exponential Smoothing xt ,t+1 =αxt + 1−α( ) xt−1,t 0 ≤α ≤1

xt−1,t =αxt−1 + 1−α( ) xt−2,t−1Recall that:

Expanding and collecting terms:

xt ,t+1 =αxt + 1−α( ) αxt−1 + 1−α( ) xt−2,t−1( )xt ,t+1 =αxt +α 1−α( ) xt−1 + 1−α( )

2xt−2,t−1

xt ,t+1 =αxt +α 1−α( ) xt−1 +α 1−α( )2xt−2 + 1−α( )

3xt−3,t−2

Continuing to substitute:

xt ,t+1 =α 1−α( )0xt +α 1−α( )

1xt−1 +α 1−α( )

2xt−2 +α 1−α( )

3xt−3. . .

Which leads us to the general form:

Obs.   α=0.2   α=0.4   α=0.6  t   0.2   0.4   0.6  t-­‐1   0.16   0.24   0.24  t-­‐2   0.128   0.144   0.096  t-­‐3   0.1024   0.0864   0.0384  t-­‐4   0.08192   0.05184   0.01536  t-­‐5   0.065536   0.031104   0.006144  

Weights attached to observations for different alpha values

3

Page 4: Exponential Smoothing: Level & Trend Data - edX · CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend Treatment of History • Previous

CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend

Exponential Smoothing Weights

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

0 1 2 3 4 5 6 7 8 9 10

Effe

ctiv

e W

eigh

t

Age of Observation

Alpha=0.1 Alpha=0.3 Alpha=0.5 Alpha=0.7 Alpha=0.9

The alpha value indicates the value of “new” information versus “old” information. As alpha approaches it limits:

•  αè1 leads to fast smoothing (nervous, volatile, naïve) •  αè0 leads to slow smoothing (calm, staid, cumulative)

xt ,t+1 =αxt + 1−α( ) xt−1,t 0 ≤α ≤1

4

Page 5: Exponential Smoothing: Level & Trend Data - edX · CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend Treatment of History • Previous

CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend

Simple Exponential Smoothing

5

Page 6: Exponential Smoothing: Level & Trend Data - edX · CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend Treatment of History • Previous

CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend

Time Series Analysis •  Simple Exponential Smoothing

n  Stationary demand – no trends or seasonality n  Value of observations degrade over time n  Utilizes a smoothing constant (α) where 0 ≤ α  ≤ 1 n  In practice 0.1 ≤ α  ≤ 0.3

Underlying  Model:  

xt    =    a    +    et  

where:      

e  t  ~  iid  (μ=0  ,  σ2=V[e])  

ForecasOng  Model:  

   

xt ,t+1 =αxt + 1−α( ) xt−1,t 0 ≤α ≤1

xt ,t+1 =αxt + 1−α( ) xt−1,txt ,t+1 =αxt + xt−1,t −α xt−1,txt ,t+1 = xt−1,t +α xt − xt−1,t( )xt ,t+1 = xt−1,t +αet

New estimate is the old estimate plus some fraction of the most recent error.

We can also think of this as error-correcting.

6

Page 7: Exponential Smoothing: Level & Trend Data - edX · CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend Treatment of History • Previous

CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend

Example Calculate the forecast for period 6 from period 5 with alpha = 0.3:

x^t,t+1

Exp. Smoothing t

xt

Alpha =0.7

Alpha =0.3

Alpha =0.1

1 109 109.0 109.0 109.0 2 92 97.1 103.9 107.3 3 98 97.7 102.1 106.4 4 96 96.5 100.3 105.3 5 104 101.8 101.4 105.2 6 98 99.1 100.4 104.5 7 109 106.0 103.0 104.9 8 99 101.1 101.8 104.3 9 94 96.1 99.4 103.3

10 96 96.0 98.4 102.6

90 92 94 96 98

100 102 104 106 108 110

1 2 3 4 5 6 7 8 9 10 11

Actual Alpha=0.7 Alpha=0.3 Alpha=0.1

x5,6 = α( ) x5 + 1−α( ) x4,5= .3( ) 104( )+ 0.7( ) 100.3( ) =101.4

What is the forecast for period 12 from period 10 with alpha = 0.3? (hint: it is the same as the forecast for period 13, 14, . . .)

7

Page 8: Exponential Smoothing: Level & Trend Data - edX · CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend Treatment of History • Previous

CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend

Exponential Smoothing with Trend

8

Page 9: Exponential Smoothing: Level & Trend Data - edX · CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend Treatment of History • Previous

CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend

Time Series: Non-Stationary Models

Challenges: •  Moving average & simple exponential smoothing

models will always lag a trend •  They only look at history to find the stationary level •  Need to capture the ‘trend’ or ‘seasonality’ factors

x^t,t+1

Forecasts

t xt Alpha =

0.3 MA =

3 1 95 95.0 2 102 97.0 3 117 103.1 104.7 4 123 109.0 113.9 5 139 118.1 126.5 6 143 125.5 135.0 7 164 137.0 148.6 8 160 143.8 155.4 9 162 149.3 161.8

10 169 155.2 163.6 90

100

110

120

130

140

150

160

170

1 2 3 4 5 6 7 8 9 10 11

Actual Alpha=0.3 MA=3

9

Page 10: Exponential Smoothing: Level & Trend Data - edX · CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend Treatment of History • Previous

CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend

Time Series Analysis time

Dem

and

rate

a

time

Dem

and

rate

b

time

Dem

and

rate

a

time

Dem

and

rate

a

time

Dem

and

rate

b

time

Dem

and

rate

b

•  Exponential Smoothing for Level & Trend n  Expand exponential smoothing to include trend n  Often referred to as Holt’s Method n  Uses smoothing constants (α,β) where 0 ≤ α,  β  ≤ 1

Underlying Model: xt = a + bt + et

where: et ~ iid (µ=0 , σ2=V[e]) Forecasting Model:

Updating Procedure:

This is just x^t-1,t

These are estimates of the level and

trend components at end of time

period t. The “new” trend - difference between this period and last period’s estimated level.

The “old” trend - estimated trend from last period

xt ,t+τ = at +τ bt

at =αxt + 1−α( ) at−1 + bt−1( )bt = β at − at−1( )+ 1−β( ) bt−1

10

Page 11: Exponential Smoothing: Level & Trend Data - edX · CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend Treatment of History • Previous

CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend

Example Suppose we are in time 101 and we use alpha=0.3 and beta=0.1.

a)  Forecast demand for t=102 b)  Forecast demand for t=110

Data

xt ,t+τ = at +τ bt

at =αxt + 1−α( ) at−1 + bt−1( )bt = β at − at−1( )+ 1−β( ) bt−1

Forecasting Model

Updating Procedure

Part a) Estimating demand for t=102 1. Find a^

101 2. Find b^

101

3. Find x^

101,102 =97.5+8.4 = 105.9

a101 = 0.3( ) x101 + 0.7( ) a100 + b100( )= 0.3( ) 95.0( )+ 0.7( ) 90.0+8.5( ) ≈ 97.5

b101 = 0.1( ) a101 − a100( )+ 0.9( ) b100= 0.1( ) 97.5−90.0( )+ 0.9( ) 8.5( ) ≈ 8.4

t xt a^t b^

t x^t,t+1

101

100

95

92 90 8.5 98.5

97.5 8.4 105.9

Part b) Estimating demand for t=110 This means τ=9, so x^

101,110 =97.5+(9)8.4 = 173.1

11

Page 12: Exponential Smoothing: Level & Trend Data - edX · CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend Treatment of History • Previous

CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend

Example

12

Page 13: Exponential Smoothing: Level & Trend Data - edX · CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend Treatment of History • Previous

CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend

Example: #VMI1984 You need to develop monthly forecasts (in pallets) for item #VMI1984 that seems to have an upward trend. Looking at past year’s data, you have determined that α=0.25 and β= 0.10. Your estimated level (a^

0) in January (t=0) is 28 pallets/month and the estimate of trend (b^

0) is 1.35. a)  Using exponential smoothing, estimate a forecast for February

This is easy – just plug in the numbers. x^

J,F=a^J + (1)(b^

J) = 28 + (1)(1.35) = 29.35 pallets

b)  It is now the end of February and demand was 27 pallets. What is your forecast for March?

=D5+E5

=$B$2*(D6-D5)+(1-$B$2)*E5 =$B$1*C6+(1-$B$1)*F5

=C6-F5

Spreadsheets are in resources link for this video

13

Page 14: Exponential Smoothing: Level & Trend Data - edX · CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend Treatment of History • Previous

CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend

Example: #VMI1984 c) Build a spreadsheet for “next month” estimates for the next 8 months.

Actual Demand

Spreadsheets are in resources link for this video

“Next Month” Forecasts

How good are the forecasts? Look at MSE=(1/n)Σe2, but which one? We will need an estimate of the the forecast error for finding safety stock. Keep a current running update of the MSE – using exponential smoothing. Select an

omega where 0.01≤ ω ≤0.1

MSEt =ω xt − xt−1,t( )2+ 1−ω( )MSEt−1 =$H$1*(C14-F13)^2+(1-$H$1)*I13

14

Page 15: Exponential Smoothing: Level & Trend Data - edX · CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend Treatment of History • Previous

CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend

Damped Trends

15

Page 16: Exponential Smoothing: Level & Trend Data - edX · CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend Treatment of History • Previous

CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend

Damped Trends •  Problems with trend terms

n  Trends do not continue unchanging indefinitely n  Constant linear trends can lead to over-forecasting n  This is especially true for longer forecast horizons

•  Damped trend model n  Slight modification to exponential smoothing model n  Select dampening parameter phi, where 0≤ ϕ ≤ 1 n  If ϕ = 1, this is just a linear trend

xt ,t+τ = at + φ ibti=1

τ

at =αxt + 1−α( ) at−1 +φbt−1( )bt = β at − at−1( )+ 1−β( )φbt−1

Forecasting Model

Updating Procedure

16

Page 17: Exponential Smoothing: Level & Trend Data - edX · CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend Treatment of History • Previous

CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend

Same Example Build a spreadsheet for “next month” estimates for the next 8 months using a damped trend.

=D6+$B$3*E6

=$B$2*(D15-D14)+(1-$B$2)*$B$3*E14 =$B$1*C15+(1-$B$1)*(D14+$B$3*E14)

Spreadsheets are in resources link for this video

17

Page 18: Exponential Smoothing: Level & Trend Data - edX · CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend Treatment of History • Previous

CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend

Comparing Linear versus Damped •  ff

26

28

30

32

34

36

38

Jan Feb Mar Apr May Jun Jul Aug Sep Oct

Mon

thly

Dem

and

Next Month Forecasts

Actual Linear Damped

26

28

30

32

34

36

38

40

42

Feb Mar Apr May Jun Jul Aug Sep Oct

Mon

thly

Dem

and

Forecast @ EOM Jan

Comparing  MSE:          Linear:  4.52          Damped:    3.80    Results  are  data  specific,  obviously  

Nine  month  forecast  made  at  EOM  Jan.        Note  the  tapering  effect  of  the  damped  model.    

18

Page 19: Exponential Smoothing: Level & Trend Data - edX · CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend Treatment of History • Previous

CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend

Key Points from Lesson

19

Page 20: Exponential Smoothing: Level & Trend Data - edX · CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend Treatment of History • Previous

CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend

Key Points •  Exponential Smoothing Models

n  Simple Model (level)

n  Holt Model (level & trend)

•  Other Smoothing Models n  MSE Trending – for use in inventory models (ω) n  Damped Trends – tapering effect (ϕ)

•  Core Concepts: n  Value of information degrades over time n  Balance of using both old & new information

xt ,t+1 =αxt + 1−α( ) xt−1,t

xt ,t+τ = at +τ bt

at =αxt + 1−α( ) at−1 + bt−1( )bt = β at − at−1( )+ 1−β( ) bt−1

20

Page 21: Exponential Smoothing: Level & Trend Data - edX · CTL.SC1x - Supply Chain and Logistics Fundamentals Lesson: Exponential Smoothing for Level & Trend Treatment of History • Previous

MIT Center for Transportation & Logistics

CTL.SC1x -Supply Chain & Logistics Fundamentals

Questions, Comments, Suggestions? Use the Discussion!

[email protected]

“Lexi” Photo courtesy Yankee Golden

Retriever Rescue (www.ygrr.org)