320 likes | 637 Views
Module 4. Forecasting. MGS3100. Forecasting. Quantitative Forecasting. -- Forecasting based on data and models. Casual Models:. Price Population Advertising …… . Causal Model. Year 2000 Sales. Time Series Models:. Sales 1999 Sales 1998 Sales 1997 …… . Time Series Model.
E N D
Module 4. Forecasting MGS3100
Quantitative Forecasting --Forecasting based on data and models • Casual Models: Price Population Advertising …… Causal Model Year 2000 Sales • Time Series Models: Sales1999 Sales1998 Sales1997 …… Time Series Model Year 2000 Sales
Causal forecasting • Regression • Find a straight line that fits the data best. • y = Intercept + slope * x (= b0+ b1x) • Slope = change in y / change in x Best line! Intercept
Causal Forecasting Models • Curve Fitting: Simple Linear Regression • One Independent Variable (X) is used to predict one Dependent Variable (Y): Y = a + bX • Given n observations (Xi, Yi), we can fit a line to the overall pattern of these data points. The Least Squares Method in statistics can give us the best a and b in the sense of minimizing (Yi - a - bXi)2: Regression formula is an optional learning objective
Curve Fitting: Simple Linear Regression • Find the regression line with Excel • Use Function: a = INTERCEPT(Y range; X range) b = SLOPE(Y range; X range) • Use Solver • Use Excel’s Tools | Data Analysis | Regression • Curve Fitting: Multiple Regression • Two or more independent variables are used to predict the dependent variable: Y = b0 + b1X1 + b2X2 + … + bpXp • Use Excel’s Tools | Data Analysis | Regression
Time Series Forecasting Process Look at the data (Scatter Plot) Forecast using one or more techniques Evaluate the technique and pick the best one.
Evaluation of Forecasting Model • BIAS - The arithmetic mean of the errors • n is the number of forecast errors • Excel: =AVERAGE(error range) • Mean Absolute Deviation - MAD • No direct Excel function to calculate MAD
Evaluation of Forecasting Model • Mean Square Error - MSE • Excel: =SUMSQ(error range)/COUNT(error range) • Standard error is square root of MSE • Mean Absolute Percentage Error - MAPE • R2 - only for curve fitting model such as regression • In general, the lower the error measure (BIAS, MAD, MSE) or the higher the R2, the better the forecasting model
Stationary data forecasting • Naïve • I sold 10 units yesterday, so I think I will sell 10 units today. • n-period moving average • For the past n days, I sold 12 units on average. Therefore, I think I will sell 12 units today. • Exponential smoothing • I predicted to sell 10 units at the beginning of yesterday; At the end of yesterday, I found out I sold in fact 8 units. So, I will adjust the forecast of 10 (yesterday’s forecast) by adding adjusted error (α * error). This will compensate over (under) forecast of yesterday.
Naïve Model • The simplest time series forecasting model • Idea: “what happened last time (last year, last month, yesterday) will happen again this time” • Naïve Model: • Algebraic: Ft = Yt-1 • Yt-1 : actual value in period t-1 • Ft : forecast for period t • Spreadsheet: B3: = A2; Copy down
Moving Average Model • Simple n-Period Moving Average • Issues of MA Model • Naïve model is a special case of MA with n = 1 • Idea is to reduce random variation or smooth data • All previous n observations are treated equally (equal weights) • Suitable for relatively stable time series with no trend or seasonal pattern
Smoothing Effect of MA Model Longer-period moving averages (larger n) react to actual changes more slowly
Moving Average Model • Weighted n-Period Moving Average • Typically weights are decreasing: w1>w2>…>wn • Sum of the weights = wi = 1 • Flexible weights reflect relative importance of each previous observation in forecasting • Optimal weights can be found via Solver
Weighted MA: An Illustration Month Weight Data August 17% 130 September 33% 110 October 50% 90 November forecast: FNov = (0.50)(90)+(0.33)(110)+(0.17)(130) = 103.4
Exponential Smoothing • Concept is simple! • Make a forecast, any forecast • Compare it to the actual • Next forecast is • Previous forecast plus an adjustment • Adjustment is fraction of previous forecast error • Essentially • Not really forecast as a function of time • Instead, forecast as a function of previous actual and forecasted value
weight Decreasing weights given to older observations Today Simple Exponential Smoothing • A special type of weighted moving average • Include all past observations • Use a unique set of weights that weight recent observations much more heavily than very old observations:
Simple ES: The Model New forecast = weighted sum of last period actual value and last period forecast • : Smoothing constant • Ft : Forecast for period t • Ft-1:Last period forecast • Yt-1: Last period actual value
Simple Exponential Smoothing • Properties of Simple Exponential Smoothing • Widely used and successful model • Requires very little data • Larger, more responsive forecast; Smaller , smoother forecast (See Table 13.2) • “best” can be found by Solver • Suitable for relatively stable time series
Time Series Components • Trend • persistent upward or downward pattern in a time series • Seasonal • Variation dependent on the time of year • Each year shows same pattern • Cyclical • up & down movement repeating over long time frame • Each year does not show same pattern • Noise or random fluctuations • follow no specific pattern • short duration and non-repeating
Time Series Components Cycle Trend Random movement Time Time Seasonal pattern Trend with seasonal pattern Demand Time Time
Trend Model • Curve fitting method used for time series data (also called time series regression model) • Useful when the time series has a clear trend • Can not capture seasonal patterns • Linear Trend Model: Yt = a + bt • t is time index for each period, t = 1, 2, 3,…
Pattern-based forecasting - Trend • Regression – Recall Independent Variable X, which is now time variable – e.g., days, months, quarters, years etc. • Find a straight line that fits the data best. • y = Intercept + slope * x (= b0+ b1x) • Slope = change in y / change in x Best line! Intercept
Pattern-based forecasting – Seasonal • Once data turn out to be seasonal, deseasonalize the data. • The methods we have learned (Heuristic methods and Regression) is not suitable for data that has pronounced fluctuations. • Make forecast based on the deseasonalized data • Reseasonalize the forecast • Good forecast should mimic reality. Therefore, it is needed to give seasonality back.
Pattern-based forecasting – Seasonal Example (SI + Regression) Actual data Deseasonalized data Deseasonalize Forecast Reseasonalize
Pattern-based forecasting – Seasonal • Deseasonalization • Deseasonalized data = Actual / SI • Reseasonalization • Reseasonalized forecast = deseasonalized forecast * SI
Seasonal Index • What’s an index? • Ratio • SI = ratio between actual and average demand • Suppose • SI for quarter demand is 1.20 • What’s that mean? • Use it to forecast demand for next fall • So, where did the 1.20 come from?!
Calculating Seasonal Indices • Quick and dirty method of calculating SI • For each year, calculate average demand • Divide each demand by its yearly average • This creates a ratio and hence a raw index • For each quarter, there will be as many raw indices as there are years • Average the raw indices for each of the quarters • The result will be four values, one SI per quarter
Classical decomposition • Start by calculating seasonal indices • Then, deseasonalize the demand • Divide actual demand values by their SI values y ’ = y / SI • Results in transformed data (new time series) • Seasonal effect removed • Forecast • Regression if deseasonalized data is trendy • Heuristics methods if deseasonalized data is stationary • Reseasonalize with SI
Causal or Time series? • What are the difference? • Which one to use?
Can you… • describe general forecasting process? • compare and contrast trend, seasonality and cyclicality? • describe the forecasting method when data is stationary? • describe the forecasting method when data shows trend? • describe the forecasting method when data shows seasonality?