Skip to content

09. Calibration

Nao Yamamoto edited this page Oct 18, 2025 · 1 revision

This page describes how to calibrate disease incidence in MIGHTI by fitting acquisition probabilities (p_acquire) so that simulated prevalence aligns with observed data.


What We Calibrate

MIGHTI calibrates the acquisition probability (p_acquire) for each health condition to match simulated prevalence to real-world data. Calibration ensures that the model outputs reflect country-specific or context-specific prevalence patterns over time.


How It Works

MIGHTI uses two key scripts located in:

mighti/calibration/
├── calibration_diseases.py
├── diseases_for_calibration.py
  • diseases_for_calibration.py: Defines the list of diseases to calibrate and how they should be set up (e.g., parameter ranges).
  • calibration_diseases.py: Runs simulations using those diseases and performs calibration using Starsim’s built-in optimizer.

What Users Must Do

After calibration, users should manually update the p_acquire value for each disease by editing the corresponding file in:

mighti/diseases/*.py

Search for where the disease is initialized and pass the calibrated p_acquire value in the pars argument or update it in the CSV if you load from parameters.


Example Workflow

  1. Run calibration_diseases.py to generate best-fit acquisition parameters.
  2. Check the output logs or results to find the calibrated values.
  3. Update p_acquire in the relevant disease module file in mighti/diseases/.
  4. Re-run your full simulation to confirm the prevalence fit.

See Also

Clone this wiki locally