Supply Chain Management Chapter 7 Demand Forecasting in

  • Slides: 37
Download presentation
Supply Chain Management Chapter 7 Demand Forecasting in a Supply Chain 7 -1

Supply Chain Management Chapter 7 Demand Forecasting in a Supply Chain 7 -1

Role of Forecasting in a Supply Chain u. The basis for all strategic and

Role of Forecasting in a Supply Chain u. The basis for all strategic and planning decisions in a supply chain u. Used for both push and pull processes u. Examples: – Production: scheduling, inventory, aggregate planning – Marketing: sales force allocation, promotions, new production introduction – Finance: plant/equipment investment, budgetary planning – Personnel: workforce planning, hiring, layoffs u. All of these decisions are interrelated 7 -2

Characteristics of Forecasts u. Forecasts are always wrong. Should include expected value and measure

Characteristics of Forecasts u. Forecasts are always wrong. Should include expected value and measure of error. u. Long-term forecasts are less accurate than shortterm forecasts (forecast horizon is important) u. Aggregate forecasts are more accurate than disaggregate forecasts 7 -3

Forecasting Methods u. Qualitative: primarily subjective; rely on judgment and opinion u. Time Series:

Forecasting Methods u. Qualitative: primarily subjective; rely on judgment and opinion u. Time Series: use historical demand only – Static – Adaptive u. Causal: use the relationship between demand some other factor to develop forecast u. Simulation – Imitate consumer choices that give rise to demand – Can combine time series and causal methods 7 -4

Components of an Observation Observed demand (O) = Systematic component (S) + Random component

Components of an Observation Observed demand (O) = Systematic component (S) + Random component (R) Level (current deseasonalized demand) Trend (growth or decline in demand) Seasonality (predictable seasonal fluctuation) • Systematic component: Expected value of demand • Random component: The part of the forecast that deviates from the systematic component • Forecast error: difference between forecast and actual demand 7 -5

Time Series Forecasting Forecast demand for the next four quarters. 7 -6

Time Series Forecasting Forecast demand for the next four quarters. 7 -6

Time Series Forecasting 7 -7

Time Series Forecasting 7 -7

Time Series Forecasting Methods u Goal is to predict systematic component of demand –

Time Series Forecasting Methods u Goal is to predict systematic component of demand – Multiplicative: (level)(trend)(seasonal factor) – Additive: level + trend + seasonal factor – Mixed: (level + trend)(seasonal factor) u Static methods u Adaptive forecasting – – Moving average Simple exponential smoothing Holt’s model (with trend) Winter’s model (with trend and seasonality) 7 -8

Static Methods u. Assume a mixed model: Systematic component = (level + trend)(seasonal factor)

Static Methods u. Assume a mixed model: Systematic component = (level + trend)(seasonal factor) Ft+l = [L + (t + l)T]St+l (forecast in period t for demand in period t + l) L = estimate of level for period 0 T = estimate of trend St = estimate of seasonal factor for period t Dt = actual demand in period t Ft = forecast of demand in period t 7 -9

Static Methods u. Estimating level and trend u. Estimating seasonal factors 7 -10

Static Methods u. Estimating level and trend u. Estimating seasonal factors 7 -10

Time Series Forecasting Forecast demand for the next four quarters. 7 -11

Time Series Forecasting Forecast demand for the next four quarters. 7 -11

Time Series Forecasting 7 -12

Time Series Forecasting 7 -12

Estimating Level and Trend u. Deseasonalize the Demand – Deseasonalized demand: Demand that would

Estimating Level and Trend u. Deseasonalize the Demand – Deseasonalized demand: Demand that would have been observed in the absence of seasonal fluctuations u. Periodicity (p) – the number of periods after which the seasonal cycle repeats itself – In our example: p = 4 7 -13

Deseasonalizing Demand [Dt-(p/2) + Dt+(p/2) + S 2 Di] / 2 p for p

Deseasonalizing Demand [Dt-(p/2) + Dt+(p/2) + S 2 Di] / 2 p for p even Dt = (sum is from i = t+1 -(p/2) to t-1+(p/2)) S Di / p for p odd (sum is from i = t-[(p-1)/2] to t+[(p-1)/2] 7 -14

Deseasonalizing Demand For the example, p = 4 is even For t = 3:

Deseasonalizing Demand For the example, p = 4 is even For t = 3: D 3 = (D 1 + D 5 + 2 D 2+2 D 3+2 D 4)/8 = {8000+10000+[(2)(13000)+(2)(23000)+(2)(34000)]}/8 = 19750 D 4 = {D 2 + D 6 + 2 D 3+2 D 4+2 D 5}/8 = {13000+18000+[(2)(23000)+(2)(34000)+(2)(10000)]/8 = 20625 7 -15

Deseasonalized Demand 7 -16

Deseasonalized Demand 7 -16

Time Series of Demand 7 -17

Time Series of Demand 7 -17

Deseasonalizing Demand Then include trend Dt = L + t. T where Dt =

Deseasonalizing Demand Then include trend Dt = L + t. T where Dt = deseasonalized demand in period t L = level (deseasonalized demand at period 0) T = trend (rate of growth of deseasonalized demand) Trend is determined by linear regression using deseasonalized demand as the dependent variable and period as the independent variable (can be done in Excel) In the example, L = 18, 439 and T = 524 7 -18

Estimating Seasonal Factors Use the previous equation to calculate deseasonalized demand for each period

Estimating Seasonal Factors Use the previous equation to calculate deseasonalized demand for each period St = Dt / Dt = seasonal factor for period t In the example, D 2 = 18439 + (524)(2) = 19487 D 2 = 13000 S 2 = 13000/19487 = 0. 67 The seasonal factors for the other periods are calculated in the same manner 7 -19

Estimating Seasonal Factors 7 -20

Estimating Seasonal Factors 7 -20

Estimating Seasonal Factors The overall seasonal factor for a “season” is then obtained by

Estimating Seasonal Factors The overall seasonal factor for a “season” is then obtained by averaging all of the factors for a “season” If there are r seasonal cycles, for all periods of the form pt+i, 1<i<p, the seasonal factor for season i is Si = [Sum(j=0 to r-1) Sjp+i]/r In the example, there are 3 seasonal cycles in the data and p=4, so S 1 = (0. 42+0. 47+0. 52)/3 = 0. 47 S 2 = (0. 67+0. 83+0. 55)/3 = 0. 68 S 3 = (1. 15+1. 04+1. 32)/3 = 1. 17 S 4 = (1. 66+1. 68+1. 66)/3 = 1. 67 7 -21

Estimating the Forecast Using the original equation, we can forecast the next four periods

Estimating the Forecast Using the original equation, we can forecast the next four periods of demand: F 13 = (L+13 T)S 1 = [18439+(13)(524)](0. 47) = 11868 F 14 = (L+14 T)S 2 = [18439+(14)(524)](0. 68) = 17527 F 15 = (L+15 T)S 3 = [18439+(15)(524)](1. 17) = 30770 F 16 = (L+16 T)S 4 = [18439+(16)(524)](1. 67) = 44794 7 -22

Adaptive Forecasting u. The estimates of level, trend, and seasonality are adjusted after each

Adaptive Forecasting u. The estimates of level, trend, and seasonality are adjusted after each demand observation u. Moving average u. Simple exponential smoothing u. Trend-corrected exponential smoothing (Holt’s model) u. Trend- and seasonality-corrected exponential smoothing (Winter’s model) 7 -23

Basic Formula for Adaptive Forecasting Ft+1 = (Lt + l. Tt)St+1 = forecast for

Basic Formula for Adaptive Forecasting Ft+1 = (Lt + l. Tt)St+1 = forecast for period t+l in period t Lt = Estimate of level at the end of period t Tt = Estimate of trend at the end of period t St = Estimate of seasonal factor for period t Ft = Forecast of demand for period t Dt = Actual demand observed in period t Et = Forecast error in period t At = Absolute deviation for period t = |Et| MAD = Mean Absolute Deviation = average value of At 7 -24

General Steps in Adaptive Forecasting u. Initialize: Compute initial estimates of level (L 0),

General Steps in Adaptive Forecasting u. Initialize: Compute initial estimates of level (L 0), trend (T 0), and seasonal factors (S 1, …, Sp). This is done as in static forecasting. u. Forecast: Forecast demand for period t+1 using the general equation u. Estimate error: Compute error Et+1 = Ft+1 - Dt+1 u. Modify estimates: Modify the estimates of level (Lt+1), trend (Tt+1), and seasonal factor (St+p+1), given the error Et+1 in the forecast u. Repeat steps 2, 3, and 4 for each subsequent period 7 -25

Moving Average u Used when demand has no observable trend or seasonality u Systematic

Moving Average u Used when demand has no observable trend or seasonality u Systematic component of demand = level u The level in period t is the average demand over the last N periods (the N-period moving average) u Current forecast for all future periods is the same and is based on the current estimate of the level Lt = (Dt + Dt-1 + … + Dt-N+1) / N Ft+1 = Lt and Ft+n = Lt After observing the demand for period t+1, revise the estimates as follows: Lt+1 = (Dt+1 + Dt + … + Dt-N+2) / N Ft+2 = Lt+1 7 -26

Moving Average Example Ex: At the end of period 4, what is the forecast

Moving Average Example Ex: At the end of period 4, what is the forecast demand for periods 5 through 8 using a 4 -period moving average? L 4 = (D 4+D 3+D 2+D 1)/4 = (34000+23000+13000+8000)/4 = 19500 F 5 = 19500 = F 6 = F 7 = F 8 Observe demand in period 5 to be D 5 = 10000 Forecast error in period 5, E 5 = F 5 - D 5 = 19500 - 10000 = 9500 Revise estimate of level in period 5: L 5 = (D 5+D 4+D 3+D 2)/4 = (10000+34000+23000+13000)/4 = 20000 F 6 = L 5 = 20000 7 -27

Simple Exponential Smoothing u Used when demand has no observable trend or seasonality u

Simple Exponential Smoothing u Used when demand has no observable trend or seasonality u Systematic component of demand = level u Initial estimate of level, L 0, assumed to be the average of all historical data L 0 = [Sum(i=1 to n)Di]/n Current forecast for all future periods is equal to the current estimate of the level and is given as follows: Ft+1 = Lt and Ft+n = Lt After observing demand Dt+1, revise the estimate of the level: Lt+1 = a. Dt+1 + (1 -a)Lt 7 -28

Simple Exponential Smoothing Example Ex: L 0 = average of all 12 periods of

Simple Exponential Smoothing Example Ex: L 0 = average of all 12 periods of data = Sum(i=1 to 12)[Di]/12 = 22083 F 1 = L 0 = 22083 Observed demand for period 1 = D 1 = 8000 Forecast error for period 1, E 1, is as follows: E 1 = F 1 - D 1 = 22083 - 8000 = 14083 Assuming a = 0. 1, revised estimate of level for period 1: L 1 = a. D 1 + (1 -a)L 0 = (0. 1)(8000) + (0. 9)(22083) = 20675 F 2 = L 1 = 20675 7 -29

Trend-Corrected Exponential Smoothing (Holt’s Model) u Appropriate when the demand is assumed to have

Trend-Corrected Exponential Smoothing (Holt’s Model) u Appropriate when the demand is assumed to have a level and trend in the systematic component of demand but no seasonality u Obtain initial estimate of level and trend by running a linear regression of the following form: Dt = b + at L 0 = b T 0 = a In period t, the forecast for future periods is expressed as follows: Ft+1 = Lt + Tt Ft+n = Lt + n. Tt 7 -30

Trend-Corrected Exponential Smoothing (Holt’s Model) After observing demand for period t, revise the estimates

Trend-Corrected Exponential Smoothing (Holt’s Model) After observing demand for period t, revise the estimates for level and trend as follows: Lt+1 = a. Dt+1 + (1 -a)(Lt + Tt) Tt+1 = b(Lt+1 - Lt) + (1 -b)Tt a = smoothing constant for level b = smoothing constant for trend Example: Forecast demand for period 1 using Holt’s model (trend corrected exponential smoothing) Using linear regression, L 0 = 12015 (linear intercept) T 0 = 1549 (linear slope) 7 -31

Holt’s Model Example (continued) Forecast for period 1: F 1 = L 0 +

Holt’s Model Example (continued) Forecast for period 1: F 1 = L 0 + T 0 = 12015 + 1549 = 13564 Observed demand for period 1 = D 1 = 8000 E 1 = F 1 - D 1 = 13564 - 8000 = 5564 Assume a = 0. 1, b = 0. 2 L 1 = a. D 1 + (1 -a)(L 0+T 0) = (0. 1)(8000) + (0. 9)(13564) = 13008 T 1 = b(L 1 - L 0) + (1 -b)T 0 = (0. 2)(13008 - 12015) + (0. 8)(1549) = 1438 F 2 = L 1 + T 1 = 13008 + 1438 = 14446 F 5 = L 1 + 4 T 1 = 13008 + (4)(1438) = 18760 7 -32

Trend- and Seasonality-Corrected Exponential Smoothing u. Appropriate when the systematic component of demand is

Trend- and Seasonality-Corrected Exponential Smoothing u. Appropriate when the systematic component of demand is assumed to have a level, trend, and seasonal factor u. Systematic component = (level+trend)(seasonal factor) u. Assume periodicity p u. Obtain initial estimates of level (L 0), trend (T 0), seasonal factors (S 1, …, Sp) using procedure for static forecasting u. In period t, the forecast for future periods is given by: Ft+1 = (Lt+Tt)(St+1) and Ft+n = (Lt + n. Tt)St+n 7 -33

Trend- and Seasonality-Corrected Exponential Smoothing (continued) After observing demand for period t+1, revise estimates

Trend- and Seasonality-Corrected Exponential Smoothing (continued) After observing demand for period t+1, revise estimates for level, trend, and seasonal factors as follows: Lt+1 = a(Dt+1/St+1) + (1 -a)(Lt+Tt) Tt+1 = b(Lt+1 - Lt) + (1 -b)Tt St+p+1 = g(Dt+1/Lt+1) + (1 -g)St+1 a = smoothing constant for level b = smoothing constant for trend g = smoothing constant for seasonal factor 7 -34

Trend- and Seasonality-Corrected Exponential Smoothing Example: Forecast demand for period 1 using Winter’s model.

Trend- and Seasonality-Corrected Exponential Smoothing Example: Forecast demand for period 1 using Winter’s model. Initial estimates of level, trend, and seasonal factors are obtained as in the static forecasting case: L 0 = 18439, T 0 = 524, S 1=0. 47, S 2=0. 68, S 3=1. 17, S 4=1. 67 F 1 = (L 0 + T 0)S 1 = (18439+524)(0. 47) = 8913 The observed demand for period 1 = D 1 = 8000 Forecast error for period 1 = E 1 = F 1 -D 1 = 8913 - 8000 = 913 Assume a = 0. 1, b=0. 2, g=0. 1; revise estimates for level and trend for period 1 and for seasonal factor for period 5 L 1 = a(D 1/S 1)+(1 -a)(L 0+T 0) = (0. 1)(8000/0. 47)+(0. 9)(18439+524)=18769 T 1 = b(L 1 -L 0)+(1 -b)T 0 = (0. 2)(18769 -18439)+(0. 8)(524) = 485 S 5 = g(D 1/L 1)+(1 -g)S 1 = (0. 1)(8000/18769)+(0. 9)(0. 47) = 0. 47 F 2 = (L 1+T 1)S 2 = (18769 + 485)(0. 68) = 13093 7 -35

Measures of Forecast Error u Forecast error = Et = Ft - Dt u

Measures of Forecast Error u Forecast error = Et = Ft - Dt u Mean squared error (MSE) MSEn = (Sum(t=1 to n)[Et 2])/n u Absolute deviation = At = |Et| u Mean absolute deviation (MAD) MADn = (Sum(t=1 to n)[At])/n u Mean absolute percentage error (MAPE) MAPEn = 100*(Sum(t=1 to n)|Et/ Dt|)/n u Bias = Sum(t=1 to n)[Et] Shows whether the forecast consistently under- or overestimates demand; should fluctuate around 0 u Tracking Signal = Bias / MAD Should be within the range of +6. Otherwise, possibly use a new forecasting method 7 -36

Forecasting in Practice u. Collaborate in building forecasts u. The value of data depends

Forecasting in Practice u. Collaborate in building forecasts u. The value of data depends on where you are in the supply chain u. Be sure to distinguish between demand sales 7 -37