demand management and forecasting operations management dr. ron tibben-lembke
TRANSCRIPT
Demand
Management and FORECASTING
Operations ManagementDr. Ron Tibben-Lembke
Demand Management
•Coordinate sources of demand for supply chain to run efficiently, deliver on time
•Independent Demand▫Things demanded by end users
•Dependent Demand▫Demand known, once demand for end
items is known
Affecting Demand
•Increasing demand▫Marketing campaigns▫Sales force efforts, cut prices
•Changing Timing of demand▫Incentives for earlier or later delivery▫At capacity, don’t actively pursue more
Predicting the Future
We know the forecast will be wrong.Try to make the best forecast we can,
▫Given the time we want to invest▫Given the available data
Time Horizons
Different decisions require projections about different time periods:
•Short-range: who works when, what to make each day (weeks to months)
•Medium-range: when to hire, lay off (months to years)
•Long-range: where to build plants, enter new markets, products (years to decades)
Forecast Impact
Finance & Accounting: budget planningHuman Resources: hiring, training, laying
off employeesCapacity: not enough, customers go away
angry, too much, costs are too highSupply-Chain Management: bringing in
new vendors takes time, and rushing it can lead to quality problems later
Qualitative Methods
•Sales force composite / Grass Roots•Market Research / Consumer market
surveys & interviews•Jury of Executive Opinion / Panel
Consensus•Delphi Method•Historical Analogy - DVDs like VCRs•Naïve approach
Quantitative Methods
Time Series Methods0. All-Time Average 1. Simple Moving Average2. Weighted Moving Average3. Exponential Smoothing4. Exponential smoothing with trend5. Linear regressionCausal MethodsLinear Regression
Time Series Forecasting
Assume patterns in data will continue, including:
Trend (T)Seasonality (S)Cycles (C)Random Variations
All-Time Average
To forecast next period, take the average of all previous periods
Advantages: Simple to use
Disadvantages: Ends up with a lot of dataGives equal importance to very old data
Moving Average
Compute forecast using n most recent periods
Jan Feb Mar Apr May Jun Jul
3 month Moving Avg:June forecast: FJun = (AMar + AApr + AMay)/3
If no cycles to demand, quite a bit of freedom to choose n
Moving Average
Advantages:▫ Ignores data that is “too” old▫ Requires less data than simple average▫ More responsive than simple average
Disadvantages:▫ Still lacks behind trend like simple average,
(though not as badly)▫ The larger n is, more smoothing, but the
more it will lag▫ The smaller n is, the more over-reaction
Simple and Moving Averages
Period Demand All-Time 3MA
1 102 12 103 14 11.04 15 12.0 12.05 16 12.8 13.76 17 13.4 15.07 19 14.0 16.08 21 14.7 17.39 23 15.5 19.0
10 16.3 21.0
Centered Moving Average• Take average of n periods,• Plot the average in the middle period• Not useful for forecasting• More stable than actuals• If seasonality, n = season length (4wks, 12 mo,
etc.)
CMA - # Periods to Average
•What if data has 12-month cycle?
Ja F M Ap My Jn Jl Au S O N D Ja F M Avg of Jan-Dec gives average of month 6.5: (1+2+3+4+5+6+7+8+9+10+11+12)/12=6.5Avg of Feb-Jan gives average of month 6.5: (2+3+4+5+6+7+8+9+10+11+12+13)/12=7.5How get a July average? Average of other two averages
Centered Moving Average
• To center even-number of periods• 12: take half each of 1 and 13, plus sum of
2-12.• F14 = 0.5 A1 + A2 + A3 + A4 + A5 + A6
+ A7 + A8 + A9 + A10 + A11 + A12 + 0.5A13
• This is exactly the same as what you get by taking the average of the averages from previous slide
Old Data
Comparison of simple, moving averages clearly shows that getting rid of old data makes forecast respond to trends faster
Moving average still lags the trend, but it suggests to us we give newer data more weight, older data less weight.
Weighted Moving Average
FJun = (AMar + AApr + AMay)/3 = (3AMar + 3DApr + 3AMay)/9
Why not consider:FJun = (2AMar + 3AApr + 4AMay)/9FJun = 2/9 AMar + 3/9 AApr + 4/9 AMay
Ft = w1At-3 + w2At-2 + w3At-1
Complicated:• Have to decide number of periods, and weights for
each• Weights have to add up to 1.0• Most recent probably most relevant, gets most weight• Carry around n periods of data to make new forecast
Weighted Moving Average
Period Demand 3WMA1 102 123 144 15 12.65 16 14.16 17 15.37 19 16.38 21 17.89 23 19.6
10 21.6
Wts = 0.5, 0.3, 0.2
Exponential Smoothing
At-1 Actual demand in period t-1 Ft-1 Forecast for period t-1 Smoothing constant >0, <1Forecast is old forecast plus a portion of the
error of the last forecast.Formulas are equivalent, give same answer
11
111
1
ttt
tttt
AFF
FAFF
Exponential Smoothing
•Smoothing Constant between 0.1-0.3•Easier to compute than moving average•Most widely used forecasting method,
because of its easy use•F1 = 1,050, = 0.05, A1 = 1,000•F2 = F1 + (A1 - F1) •= 1,050 + 0.05(1,000 – 1,050)•= 1,050 + 0.05(-50) = 1,047.5 units•BTW, we have to make a starting forecast
to get started. Often, use actual A1
Weighted Moving Average
Period Demand ES1 10 10.02 12 10.03 14 10.64 15 11.65 16 12.66 17 13.67 19 14.78 21 16.09 23 17.5
10 19.1
Alpha = 0.3
Weighted Moving Average
Period Demand ES1 10 10.02 12 10.03 14 11.04 15 12.55 16 13.86 17 14.97 19 15.98 21 17.59 23 19.2
10 21.1
Alpha = 0.5
Exponential Smoothing
11 1 ttt FAF
221 1 ttt FAF
We take:
And substitute in
to get:
and if we continue doing this, we get:
Older demands get exponentially less weight
22
21 11 tttt FAAF
...1111 34
33
32
21 tttttt AAAAAF
Choosing
•Low : if demand is stable, we don’t want to get thrown into a wild-goose chase, over-reacting to “trends” that are really just short-term variation
•High : If demand really is changing rapidly, we want to react as quickly as possible
Averaging Methods
•Simple Average•Moving Average•Weighted Moving Average•Exponentially Weighted Moving Average
(Exponential Smoothing)•They ALL take an average of the past
▫With a trend, all do badly▫Average must be in-between 30
2010
Trend-Adjusted Ex. Smoothing
Trend IncludingForecast ttt TFFIT
Estimate Trend Smoothed Exp.
for forecast Smoothed Exp.
t
t
T
tF
11
11
111
)1(
tttt
tt
tttt
FITFTT
AFIT
FITAFITF
constants smoothing are and where
Trend-Adjusted Ex. Smoothing
3.103.010)110111(*30.010
121112
FITFTFITFTT ttt
F1 100
T1 10
0.20
0.30Forecast including trend for period 1 is
FIT1 F1 T1100 10 110
F2 FITt 1 At 1 FITt 1 FIT1 A1 FIT1 110 0.2 *(115 110) 110 1111.0
Suppose actual demand is 115, A1=115
FIT2 F2 T 211110.3 121.3
Trend-Adjusted Ex. Smoothing
22.10078.03.10)3.12104.121(*30.03.10
2323
FITFTT
0.1112 F 3.102 T
0.20
0.30Forecast including trend for period 1 is
3.1213.10111222 TFFIT
04.1213.1*2.03.121)3.121120(*2.03.121
2223
FITAFITF
Suppose actual demand is 120, A2=120
26.13122.1004.121333 TFFIT
Selecting and
•You could:▫Try an initial value for each parameter.▫Try lots of combinations and see what looks
best.▫But how do we decide “what looks best?”
•Let’s measure the amount of forecast error.
•Then, try lots of combinations of parameters in a methodical way.▫Let = 0 to 1, increasing by 0.1
For each value, try = 0 to 1, increasing by 0.1
Evaluating Forecasts
How far off is the forecast?
What do we do with this information?
Forecasts
Demands
Evaluating Forecasts
Mean Absolute Deviation
Mean Squared Error
Mean Absolute Percent Error
MAD(1/n) At Fti1
n
MSE (1/n) At Ft 2
i1
n
MAPE (1/n)At FtDii1
n
100
Tracking Signal
•To monitor, compute tracking signal
•If >4 or <-4 something is wrong•Top should sum to 0 over time. If not,
forecast is biased.
n
ttt FARSFE
1
MAD
RSFESignal Tracking
Monitoring Forecast Accuracy
•Monitor forecast error each period, to see if it becomes too great
0
-10
10
Fore
cast
Err
or
Forecast PeriodLower Limit
Upper Limit
Updating MAD
•Simplified calculation avoids keeping running total of all errors and demands:
•Standard Deviation can be estimated from MAD:
MAD 25.1
11 tttt MADForecastActualMADMAD
Techniques for Trend
•Determine how demand increases as a function of time
t = periods since beginning of datab = Slope of the linea = Value of yt at t = 0
btayt
Computing Values
2
)(1
2
22
n
YyS
xbyn
xbya
xnx
yxnxyb
n
i iiyx
Linear Regression•Three methods
▫Type in formulas for trend, intercept▫Tools | Data Analysis | Regression▫Graph, and R click on data, add a trendline,
and display the equation.▫Use intercept(Y,X) and slope(Y,X) commands
•Fits a trend and intercept to the data.•Gives all data equal weight.•Exp. smoothing with a trend gives more
weight to recent, less to old.
Causal Forecasting
•Linear regression seeks a linear relationship between the input variable and the output quantity.
•R2 measures the percentage of change in y that can be explained by changes in x.
bxayc
Video sales of Shrek 2?
Box Office $ Millions
0100
200300400500
600700800
9001000
Shrek Shrek2
•Shrek did $500m at the box office, and sold almost 50 million DVDs & videos
•Shrek2 did $920m at the box office
Video sales of Shrek 2?•Assume 1-1 ratio:
▫920/500 = 1.84▫1.84 * 50 million = 92 million videos?▫Fortunately, not that dumb.
•January 3, 2005: 37 million sold!•March analyst call: 40m by end Q1•March SEC filing: 33.7 million sold. Oops.•May 10 Announcement:
▫In 2nd public Q, missed earnings targets by 25%.
▫May 9, word started leaking▫Stock dropped 16.7%
Lessons Learned
•Flooded market with DVDs•Guaranteed Sales
▫Promised the retailer they would sell them, or else the retailer could return them
▫Didn’t know how many would come back•5 years ago
▫Typical movie 30% of sales in first week▫Animated movies even lower than that
•2004/5 50-70% in first week▫ Shrek 2: 12.1m in first 3 days▫American Idol ending, had to vote in first week
Washoe Gaming Win, 1993-96
180
200
220
240
260
280
300
1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4
What did they mean when they said it was down three quartersin a row?
1993 1994 1995 1996
Seasonality
•Seasonality is regular up or down movements in the data
•Can be hourly, daily, weekly, yearly•Naïve method
▫N1: Assume January sales will be same as December
▫N2: Assume this Friday’s ticket sales will be same as last
Seasonal Factors
•Seasonal factor for May is 1.20, means May sales are typically 20% above the average
•Factor for July is 0.90, meaning July sales are typically 10% below the average
Seasonality & No Trend
Sales FactorSpring 200200/250 = 0.8Summer 350350/250 = 1.4Fall 300300/250 = 1.2Winter 150150/250 = 0.6
Total 1,000Avg 1,000/4=250
Seasonality & No Trend
If we expected total demand for the next year to be 1,100, the average per quarter would be 1,100/4=275
ForecastSpring 275 * 0.8 = 220Summer 275 * 1.4 = 385Fall 275 * 1.2 = 330Winter 275 * 0.6 = 165Total 1,100
Trend & Seasonality
• Deseasonalize to find the trend1. Calculate seasonal factors2. Deseasonalize the demand3. Find trend of deseasonalized line
• Project trend into the future4. Project trend line into future5. Multiply trend line by seasonal component.
Washoe Gaming Win, 1993-96
180
200
220
240
260
280
300
1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4
Looks like a downhill slide-Silver Legacy opened 95Q3-Otherwise, upward trend
1993 1994 1995 1996
Source: Comstock Bank, Survey of Nevada Business & Economics
Washoe Win 1989-1996
150000
170000
190000
210000
230000
250000
270000
290000
1989 1990 1991 1992 1993 1994 1995 1996
Definitely a general upward trend, slowed 93-94
1989-2007
1989-2007
1998-2007
CacheCreek
ThunderValley
CCExpands
9/11
2003Q3 - 2007Q3
2003Q2 - 2007Q3
2003-2007
Date Quarter Win
59 276,371
60 235,766
2004 61 240,221
62 259,350
63 279,758
64 245,811
2005 65 231,608
66 259,687
67 297,414
68 260,149
2006 69 245,775
70 269,670
71 294,839
72 257,015
2007 73 244,643
74 273,116
75 284,734
Q Avg Index
1 240,562 0.9168
2 265,456 1.0117
3 289,187 1.1022
4 254,325 0.9693
Total Avg. 262,382
For each Q:
Compute Indexes
Deseasonalize: Divide Win by Index276,371 / 1.1022 = 250,755
Compute Avg Win for each Q
Divide Avg by Total Avg to get Index:240,562/262,382 = 0.9168
2003-2007period Win Deseasonalized
59 276,371 250,755
60 235,766 243,236
2004 61 240,221 262,010
62 259,350 256,347
63 279,758 253,828
64 245,811 253,598
2005 65 231,608 252,616
66 259,687 256,681
67 297,414 269,847
68 260,149 268,391
2006 69 245,775 268,069
70 269,670 266,548
71 294,839 267,511
72 257,015 265,157
2007 73 244,643 266,834
74 273,116 269,954
75 284,734 258,343
Do LR on deseasonalized dataintercept 185,538.00 slope 1,119.91 rsq 0.497
Create Linear ForecastsInt + slope * period
Linear 251,613 252,733 253,853 254,972 256,092 257,212 258,332 259,452 260,572 261,692 262,812 263,932 265,052 266,172 267,291 268,411 269,531 270,651 271,771 272,891 274,011
Seasonal Forecast58 257,062 Deseasonalized Linear Forecast59 276,371 250,755 251,613 277,317 60 235,766 243,236 252,733 244,972
2004 61 240,221 262,010 253,853 232,741 62 259,350 256,347 254,972 257,959 63 279,758 253,828 256,092 282,254 64 245,811 253,598 257,212 249,314
2005 65 231,608 252,616 258,332 236,848 66 259,687 256,681 259,452 262,491 67 297,414 269,847 260,572 287,191 68 260,149 268,391 261,692 253,656
2006 69 245,775 268,069 262,812 240,956 70 269,670 266,548 263,932 267,023 71 294,839 267,511 265,052 292,129 72 257,015 265,157 266,172 257,998
2007 73 244,643 266,834 267,291 245,063 74 273,116 269,954 268,411 271,556 75 284,734 258,343 269,531 297,066 76 270,651 262,340
2008 77 271,771 263,425 78 272,891 264,511 79 274,011 265,596
Multiply Linear forecast by indexes251,613 * 1.1022= 277,317
267,291 * 0.9168 = 245,063
Q Index1 0.91682 1.01173 1.10224 0.9693