Skip to content

07. Interventions

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

MIGHTI supports a modular intervention system built on top of the base capabilities provided by StarSim and STI-Sim. These core frameworks already include common intervention types such as:

  • Testing (e.g., HIV testing via sti.HIVTest)
  • Treatment (e.g., ART via sti.ART, lifestyle or pharmacological care)
  • Prevention (e.g., PrEP, VMMC)

We extend this by integrating disease-specific interventions as well as interventions for social determinants of health (SDoH).


Disease-Specific Interventions

Each disease class (e.g., Type2Diabetes, AlcoholUseDisorder) can include its own intervention logic. This allows interventions to:

  • Target affected individuals (e.g., all with diabetes)
  • Modulate condition-specific outcomes (e.g., reduce rel_death for treated individuals)
  • Enable flexible design (e.g., coverage probability, eligibility functions)

Example: Type 2 Diabetes (T2D)

from mighti.diseases.type2diabetes import ReduceMortalityTx

t2d_treatment = ReduceMortalityTx(
    label='T2D Mortality Reduction',
    product=ss.Tx(df=tx_df),
    prob=1.0,
    rel_death_reduction=0.5,
    eligibility=lambda sim: sim.diseases.type2diabetes.affected.uids
)

SDoH Interventions (in interventions.py)

The file mighti/interventions.py is used to define interventions that act on social determinants of health, including:

  • Housing stability
  • Income or education uplift
  • Food or transportation support

These interventions can modify:

  • Eligibility for health interventions
  • Disease acquisition or progression probabilities
  • Adherence disruptors (via the CASM module)

Applying Interventions in a Simulation

Interventions are passed into the simulation as a list:

interventions = [
    sti.HIVTest(test_prob_data=...),
    sti.ART(coverage_data=...),
    t2d_treatment,
    sdoh_intervention  # e.g., Housing or Income support
]

Clone this wiki locally