class: inverse background-image: linear-gradient(to right, rgba(255, 255, 255, .1), rgba(1, 1, 1, .9)),url("resources/hierarchy_back.jpeg") background-size: cover .large[.alert-bottom1[Kedge Business School] <br> <br> <br> <br>] .center[.title[Demand Forecasting in Supply Chains: Aggregation and Hierarchical Approaches]] .sticker-float[![logo](resources/carbts_t.png)] .bottom[ Bahman Rostami-Tabar (
[@Bahman_R_T](https://twitter.com/Bahman_R_T)) <br> Website [www.bahmanrt.com](https://www.bahmanrt.com/) ] --- background-image: url("resources/hierarchy-left.jpeg") background-size: contain background-position: left class: middle .pull-right2[ ## Outline - What is a hierarchical and grouped time series, and why they are essential in forecasting? - What are common approaches to forecast hierarchical/grouped time series? - What is temporal aggregation, what are different TA approaches and how it may affect time series features? - Given a high frequency time series (e.g. daily), If we want a lower frequency forecast(e.g. weekly), should we first forecast and aggregate them or first aggregate time series and forecast? ] --- class: inverse ## Terminilogy **One time series** - Time granularity - Temporal aggregation / temporal hierarchies **Collection of time series** - Cross-sectional aggregation / hierarchical / grouped --- background-image: url("resources/hierarchy-left.jpeg") background-size: contain background-position: left class: middle .pull-right2[ ## Outline - .remember[What is a hierarchical and grouped time series, and why they are essential in forecasting?] - What are common approaches to forecast hierarchical/grouped time series? - What is temporal aggregation, what are different TA approaches and how it may affect time series features? - Given a high frequency time series (e.g. daily), If we want a lower frequency forecast(e.g. weekly), should we first forecast and aggregate them or first aggregate time series and forecast? ] --- ## Informing decisions in multiple levels .pull-left2[ - Multiple decisions - Multiple level of forecasting requirements - Coherency between different levels - Using information available at multiple levels ] .pull-right2[ .center[<img src="figs/Framework.png" width="700px">] ] --- ## Hierarchical time series A .remember[hierarchical time series] is a collection of several time series that are linked together in a hierarchical structure (unique structure).
--- ## Grouped time series A .remember[grouped time series] is a collection of time series that can be grouped together in a number of non-hierarchical ways.
--- ## Grouped time series
--- ## Hierarchical & Grouped time series ### Ambulance attendance
--- class: middle .pull-left[ ### Australian tourism regions <img src="figure/ausmap-1.png" width="100%" style="display: block; margin: auto;" /> ] .pull-right[ ### Australian tourism data - Monthly data on visitor night from 1998 -- 2017 - Geographical hierarchy split by - 7 states - 27 zones - 75 regions ] --- ## Australian tourism data ``` #> # A tsibble: 18,000 x 5 [1M] #> # Key: state, zone, region [75] #> month state zone region visitors #> <mth> <chr> <chr> <chr> <dbl> #> 1 1998 Jan NSW Metro NSW Sydney 926. #> 2 1998 Feb NSW Metro NSW Sydney 647. #> 3 1998 Mar NSW Metro NSW Sydney 716. #> 4 1998 Apr NSW Metro NSW Sydney 621. #> 5 1998 May NSW Metro NSW Sydney 598. #> 6 1998 Jun NSW Metro NSW Sydney 601. #> # … with 17,994 more rows ``` --- ## Australian tourism data <img src="figure/tourism_plots-1.png" width="960" style="display: block; margin: auto;" /> --- ## Australian tourism data <img src="figure/tourism_plots1-1.png" width="960" style="display: block; margin: auto;" /> --- ## Australian tourism data <img src="figure/tourism_plots2-1.png" width="960" style="display: block; margin: auto;" /> --- ## Australian tourism data <img src="figure/tourism_plots3-1.png" width="960" style="display: block; margin: auto;" /> --- background-image: url("resources/hierarchy-left.jpeg") background-size: contain background-position: left class: middle .pull-right2[ ## Outline - What is a hierarchical and grouped time series, and why they are essential in forecasting? - .remember[What are common approaches to forecast hierarchical/grouped time series?] - What is temporal aggregation, what are different TA approaches and how it may affect time series features? - Given a high frequency time series (e.g. daily), If we want a lower frequency forecast(e.g. weekly), should we first forecast and aggregate them or first aggregate time series and forecast? ] --- class: middle ## How to forecast hierarchical/grouped series? .pull-left[ ### Hierarchical series <img src="figs/tourisme1.png" width="55%" style="display: block; margin: auto;" /><img src="figs/tourisme2.png" width="55%" style="display: block; margin: auto;" /><img src="figs/tourisme4.png" width="55%" style="display: block; margin: auto;" /> ] .pull-right[ ### Hierarchical forecasting approaches <img src="figs/pyramid.jpg" width="90%" style="display: block; margin: auto;" /> ] --- ## Optimal reconceiliation - This approach involves first generating independent base forecast for each series in the hierarchy. - As these base forecasts are independently generated they will not be “aggregate consistent” (i.e., they will not add up according to the hierarchical structure). - The optimal combination approach optimally combines the independent base forecasts and generates a set of revised forecasts that are as close as possible to the univariate forecasts but also aggregate consistently with the hierarchical structure. - Unlike any other existing method, this approach uses all the information available within a hierarchy. --- ## Research gaps - There is a need to examine empirically the validity of these theoretical developments in supply chains - Very little research has examined the association between characteristics of time series and the performance of approaches - The potential benefit of incorporating exogenous variables in a hierarchy structure still needs to be examined - Using probabilistic forecasting in hierarchies instead of point forecast in supply chains - The theoretical developments in this area do not support the count nature of time series - Investigating the benefit beyond forecast accuracy --- background-image: url("resources/hierarchy-left.jpeg") background-size: contain background-position: left class: middle .pull-right2[ ## Outline - What is a hierarchical and grouped time series, and why they are essential in forecasting? - What are common approaches to forecast hierarchical/grouped time series? - .remember[What is temporal aggregation, what are different TA approaches and how TA may affect time series features?] - Given a high frequency time series (e.g. daily), If we want a lower frequency forecast(e.g. weekly), should we first forecast and aggregate them or first aggregate time series and forecast? ] --- ## Temporal aggregation approaches <img src="figs/OANOA.JPG" width="75%" style="display: block; margin: auto;" /> --- ## Using TA (non-overlapping) to forecast <img src="figs/adida.png" width="70%" style="display: block; margin: auto;" /> --- ## Hourly time series: ambulance attendance
--- ## Daily time series: ambulance attendance
--- ## Weekly time series: ambulance attendance <img src="figure/hospital-dygraph2-1.png" width="960" style="display: block; margin: auto;" /> --- ## Monthly time series: ambulance attendance <img src="figure/hospital-dygraph3-1.png" width="960" style="display: block; margin: auto;" /> --- ## Quarterly time series: ambulance attendance <img src="figure/hospital-dygraph4-1.png" width="960" style="display: block; margin: auto;" /> --- ## Yearly time series: ambulance attendance <img src="figure/hospital-dygraph5-1.png" width="960" style="display: block; margin: auto;" /> --- ## Using information in multiple levels: MAPA <img src="figs/mapa.png" width="70%" style="display: block; margin: auto;" /> --- ## Using information in multiple levels: temporal hierarchies <img src="figs/TA_HIERARCHY.jpg" width="100%" style="display: block; margin: auto;" /> --- ## Research gaps - We are still unclear when overlapping, non-overlapping or BU should be used - Investigate the association between time series features and the performance of each approach - Investigate TA on high frequency time series (e.g. hourly) - Linking forecast to utility measures - TA research has been built on the non-overlapping aggregation assumption, the characteristics of time series when aggregated with an overlapping approach have not been fully identified yet - Using probabilistic forecast rather than only point forecast --- background-image: url("resources/hierarchy-left.jpeg") background-size: contain background-position: left class: middle .pull-right2[ ## Outline - What is a hierarchical and grouped time series, and why they are essential in forecasting? - What are common approaches to forecast hierarchical/grouped time series? - What is temporal aggregation, what are different TA approaches and how TA may affect time series features? - .remember[Given a high frequency time series (e.g. daily), If we want a lower frequency forecast(e.g. weekly), should we first forecast and aggregate them or first aggregate time series and forecast?] ] --- ## Experiment setup .pull-left[ - M4 competition data time series - 24,000 Quarterly - 48,000 monthly - 4,227 daily - Time series features - 42 features - use `tsfeatures::tsfeatures()` or `feasts::features()` in R ] .pull-right[ - Forecasting methods: ARIMA and Exponential Smoothing State Space (ETS) - Accuracy measure: Mean Absolute Scaled Error (MASE) - Forecasting for lower frequency time using higher frequency time granularity (e.g. using monthly series to forecast bi-monthly, quarterly, yearly forecast) ] --- <img src="figs/p_best_quarterly.jpg" width="60%" style="display: block; margin: auto;" /> --- <img src="figs/p_best_monthly.jpg" width="60%" style="display: block; margin: auto;" /> --- <img src="figs/p_best_daily.jpg" width="60%" style="display: block; margin: auto;" /> --- <img src="figs/plot_error_quarterly.jpg" width="60%" style="display: block; margin: auto;" /> --- <img src="figs/plot_error_monthly.jpg" width="60%" style="display: block; margin: auto;" /> --- <img src="figs/plot_error_daily.jpg" width="60%" style="display: block; margin: auto;" /> --- ## Experiment design <img src="figs/Experiment_design_2.png" width="60%" style="display: block; margin: auto;" /> --- ## How time series features change with TA <img src="figs/mp_2_category.jpg" width="50%" style="display: block; margin: auto;" /> --- ## How time series features change with TA <img src="figs/mp_category.jpg" width="50%" style="display: block; margin: auto;" /> --- <img src="figs/ML_predicting_power.png" width="100%" style="display: block; margin: auto;" /> --- <img src="figs/draft2_Feature_importance_RF.png" width="100%" style="display: block; margin: auto;" /> --- .pull-left[ ### Wroks in progress - Rostami-Tabar B. Hyndman J. R. (2022), hierarchical count time series forecasting in emergency medicine - Rostami-Tabar B., Goltsos T. Wang, S. (2022), Overlapping and non-overlapping temporal aggregation: to combine or not to combine - Rostami-Tabar, D. Mercetic (2022), Temporal aggregation and time series features ] .pull-righ[ ### Published recently - Mircetic, D., et al. (2021), "Forecasting hierarchical time series in supply chains: an empirical investigation." International Journal of Production Research, 1-20. - Babai. M.Z., Boylan, J., Rostami-Tabar, B. (2022), "Demand Forecasting in Supply Chains: A Review of Aggregation and Hierarchical Approaches", International Journal of Production Research, Accepted (to appear). ] --- ## References for hierarchical forecasting - [Forecasting: Principles and Practice](https://otexts.com/fpp3/hierarchical.html), Chapter 11 Forecasting hierarchical and grouped time series - ISF2021 Talk, Professor Rob J Hyndman, [Ten years of forecast reconciliation](https://youtu.be/5jB09R-sKOc) --- ## References for temporal aggregation forecasting - [An aggregate–disaggregate intermittent demand approach (ADIDA) to forecasting: an empirical proposition and analysis](https://www.tandfonline.com/doi/full/10.1057/jors.2010.32?casa_token=FLX_iKeIDXcAAAAA%3ACXYWY6jICM_1_ayaadc8GXxN05kAFo5I_qqmt7XvBjEMTHBUTWLA8kziBWQhUVj-BdNWTwJnIw). Journal of the Operational Research Society. - [Improving forecasting via multiple temporal aggregation](https://www.sciencedirect.com/science/article/pii/S0169207013001477?casa_token=PhrGiXHJJzsAAAAA:-PU7metoOVL4G7avKR6NT9m5kzGNHPy5Lo14iEhVHqtju_L_hRUatM0M3CV3UilcBA47EuU). International Journal of Forecasting. - [Demand forecasting by temporal aggregation](https://onlinelibrary.wiley.com/doi/full/10.1002/nav.21546?casa_token=wfP5AIk8wAQAAAAA%3A4skkyZgQCyVdftE194ZG_16CgG7CfL6-6_kb2Sqi0aiJ0aC4cWL4x2bmmRMPdupj4P4_9lihPLj3), Naval Research Logistics - [Forecasting with temporal hierarchies](https://www.sciencedirect.com/science/article/pii/S0377221717301911?casa_token=wVe_QYpCEFoAAAAA:LT-rFP_KTK8Wbr1iQnqpGpNXjKiocfoSBuM4-0SfYTEB_6njOQcELohyPLiuPQuSgEkstCc), European Journal of Operational Research --- class: inverse, middle - Slides and papers: [www.bahmanrt.com](www.bahmanrt.com) - Check out also [www.f4sg.org](www.f4sg.org) <br><br>
Say hello: [@Bahman_R_T](https://twitter.com/Bahman_R_T)
Connect: [Bahman ROSTAMI-TABAR](https://www.linkedin.com/in/bahman-rostami-tabar-1046171a/)