Cardiff University Logo Data Lab Logo HISP UIO Logo DHIS2 Logo WGSSS Logo UKRI Logo

From Cases to Consumption

Evaluating Forecasting Model Portability for Public-Health Supply Chains

Harsha Halgamuwe Hewage, Bahman Rostami-Tabar, Geir Kjetil Ferkingstad Sandve, Breno Horsth

Data Lab for Social Good Research Group in collaboration with HISP Centre, University of Oslo

2026/01/15



  • Three-month Overseas Institutional Visit (OIV) at the HISP Centre, University of Oslo, Norway
  • Collaborated with:

    – DHIS2 core development team

    – Climate and health modelling team (CHAP)

  • Focus of the collaboration:

    – Understanding how disease forecasts are produced, validated, and deployed in DHIS2

    – Model reuse across domains is attractive, but largely untested



Outline

Background

The fundamental question

What we are going to do

What did we find

What NEXT?

BACKGROUND

The Problem: A tale of two data streams


Health supply chains are struggling with forecasting at sub-national/ facility level.

  • Operational realities: Incomplete records, irregular orders, frequent manual adjustments.

  • This masks true demand and leads to a cycle of persistent, critical stockouts.


But… we have a success story.


Platforms like DHIS2 and CHAP have robust, high-performing models for forecasting disease cases (morbidity).

What is DHIS2 and CHAP?


DHIS2 (District Health Information Software 2) is a free, open-source, web-based health information platform.


It is the world’s largest Health Management Information System (HMIS), used by Ministries of Health in over 80 countries.


CHAP stands for the Climate Health Analytics Platform.


CHAP is a predictive modelling layer integrated within DHIS2, designed to support climate-informed disease forecasting and early warning.

The fundemental question


✅ We’re good at forecasting cases (e.g., malaria).


❌ We’re struggling with forecasting consumption (e.g., antimalarials) at sub-national level.


Can the same CHAP morbidity models and pipelines be ported to health commodity demand and inventory decisions?


Portability lens

  • Same platform (DHIS2/CHAP)
  • Same model pipelines
  • New target (consumption)

The challenge: Why isn’t this easy?


Case data and consumption data are different.


Different Data Structures

Consumption data is “messier”.

  • Missing entries (e.g., “0” = no consumption, or “0” = data not entered?)
  • Intermittency (infrequent demand).
  • Inconsistent recording.

Different Metadata

Consumption is affected by logistics.

  • Lead times.
  • Procurement cycles.
  • Existing stock levels and stockouts.

OUR APPROACH

What we are going to do


Apply the same CHAP morbidity models (no extra tuning) to product demand (malaria commodities, vaccines).


Link forecasts to operations: evaluate both forecast accuracy and inventory impact.


Build a portability matrix: when can we transfer a model?


Design an implementation workflow for DHIS2/CHAP.


Provide R scripts, CHAP YAML configs and sample datasets for full reproducibility.

Our experimental workflow


Data sources


Data source Domain Geography / Sites Coverage period Granularity
DHIS2 Dengue cases Brazil (23 locations) 2001 Jan – 2017 Dec Monthly, subnational
Laos (7 locations) 2000 Jul – 2013 Jun Monthly, subnational
Paraguay (16 locations) 2012 Mar – 2017 Dec Monthly, subnational
Vietnam (19 locations) 2000 Jul – 2017 Jun Monthly, subnational
DHIS2 Malaria incidence Rwanda (30 locations) 2015 Jan – 2024 Dec Monthly, subnational
DHIS2 / LMIS Malaria commodities Laos (11 products, 18 facilities) 2019 Feb – 2021 Jun Monthly, subnational
DHIS2 / LMIS Vaccine consumption Laos (21 products, 10 facilities) 2021 Feb – 2024 Jan Monthly, subnational
DHIS2 Climate App Climate covariates All study settings Study-specific Monthly, subnational

Overview of the candidate models

Method Covariates
Auto EWARS Population, rainfall, teamperature
INLA Baseline None
Naïve None
sNaive None
Mean None
ETS None
ARIMA None
ARIMA Climate Rainfall, temperature
ARIMA Madagaskar Rainfall (Lag 3), temperature (Lag 3)
Linear Regression Trend, seasonality
Linear Regression Climate Trend, seasonality, rainfall, teamperature
LightGBM Percentage of zero values, lags of target variable (lag 6 - 12), rainfall, temperature, month, healthcare facility code, product code
XGBoost Percentage of zero values, lags of target variable (lag 6 - 12), rainfall, temperature, month, healthcare facility code, product code
Random Forest Percentage of zero values, lags of target variable (lag 6 - 12), rainfall, temperature, month, healthcare facility code, product code

FINDINGS

Data exploration

Figure 1: Classification of all morbidity and consumption series using the ln(CV²) and ln(IDI) map. Each point represents a monthly series plotted on the logarithmic CV²–IDI scale.

Average forecast method rankings

Figure 2: Average point forecast (MASE) ranks. Methods on the y-axis are ordered from best (top) to worst (bottom) based on their overall average rank across all domains. Lower ranks indicate better performance.

Average forecast method rankings

Figure 3: Average probabilistic forecast (quantile loss) ranks. Methods on the y-axis are ordered from best (top) to worst (bottom) based on their overall average rank across all domains. Lower ranks indicate better performance.

Overall inventory performance - Malaria products

Figure 4: Inventory performance across malaria-product simulations using quantile-based order-up-to policies (q80–q97.5).

Overall inventory performance - Vaccine

Figure 5: Inventory performance across vaccine-product simulations using quantile-based order-up-to policies (q80–q97.5).

Execution scalability of all forecasting methods

Figure 6: Model portability metrics for all candidate forecasting methods, relative to the Mean method. Relative MASE and QL(0.9) are reported separately for malaria and vaccine products; values below 1 indicate improvement over the Mean method.

WHAT NEXT

Proposed end-to-end forecasting-to-inventory architecture


Research impact and engagement


DHIS2 community webinar (90+ participants across industry, NGOs, and implementers)


Technical briefing to the DHIS2 development team and country representatives from Ministries


Open release of code, YAML configurations, and deployable DHIS2/CHAP pipelines


Planned hands-on practitioner demo using the existing DHIS2 ecosystem


Co-delivering one-week, in-person forecasting training (Kigali, February)


Long-term collaboration between DL4SG (Cardiff) and HISP (Oslo)

Any questions or thoughts? 💬