Skip to content
Back to skills

Compartmental Models

ASecurity

Infectious disease modeling with SIR/SEIR models — R0, fitting, forecasting, and intervention scenarios.

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 29, 2026
ai-agentspythongotesting

Works with

  • cli

Security analysis

A100/100

Scanned September 29, 2026

npx -y skills add aicodedecode/awesome-muse-skills --skill compartmental-models --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Compartmental Models?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Compartmental Models
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/aicodedecode-compartmental-models/badge)](https://www.skillsdirectory.com/skills/aicodedecode-compartmental-models)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: compartmental-models
description: Infectious disease modeling with SIR/SEIR models — R0, fitting, forecasting, and intervention scenarios.
category: scientific
---

## Overview

compartmental-models covers the workhorse models of infectious-disease dynamics: SIR, SEIR, and
their extensions. It focuses on building models that inform decisions — estimating R0, projecting
under interventions, and communicating uncertainty — rather than on mathematical novelty. A model
is a decision tool; its value is measured in better decisions, not in fit statistics.

## When to use

- Estimating R0/Rt from early outbreak data.
- Projecting epidemic trajectories under different intervention scenarios.
- Evaluating interventions: vaccination coverage, NPIs, test-and-trace.
- Understanding herd-immunity thresholds and final-size relations.
- Fitting models to case/hospitalization data with proper uncertainty.
- Communicating model results and limits to decision-makers.

## Core concepts

- **SIR structure.** Susceptible → Infectious → Recovered, with transmission rate β and recovery
  rate γ. dS/dt = −βSI/N, dI/dt = βSI/N − γI, dR/dt = γI. Simple, interpretable, and the
  foundation everything else extends.
- **SEIR and extensions.** Add Exposed (latent period) for SEIR; add compartments for
  asymptomatic (A), hospitalized (H), quarantined (Q), vaccinated (V), or waning immunity
  (SIRS) as the question demands. Every compartment needs a justification — complexity must
  earn its keep in better decisions.
- **R0, Re, Rt.** R0 = β/γ: expected secondary cases in a fully susceptible population. Re/Rt:
  effective reproduction number given immunity and interventions. Rt > 1 means growing. Estimate
  from the early exponential growth rate (r) via the generation-interval distribution — R0 ≈
  1 + r×Tg for simple models, but use the proper estimator (EpiEstim/cori for Rt).
- **Herd immunity threshold.** 1 − 1/R0 — the immune fraction at which Re < 1 without
  interventions. It's a threshold for decline, not eradication, and it assumes homogeneous
  mixing — heterogeneity (superspreading, structured contacts) changes it substantially.
- **Homogeneous mixing is the big lie.** Real populations have age structure, households,
  networks, and superspreading. Age-structured contact matrices (POLYMOD-style) are the minimum
  realism for policy models; overdispersion (k parameter) matters for outbreak probability and
  control strategy.
- **Fitting.** Fit to the most reliable data stream (hospitalizations/deaths over cases, which
  depend on testing). Use Bayesian inference (MCMC) or likelihood-based methods with proper
  observation models (negative binomial for overdispersed counts, reporting delays modeled
  explicitly). Fit to multiple streams jointly when possible.
- **Forecasting discipline.** Short-term forecasts (1-4 weeks) with quantified uncertainty
  (prediction intervals, ensemble approaches); scenario projections (not predictions) for
  policy — "if X, then Y" with X explicit. Evaluate past forecasts honestly (coverage of
  prediction intervals).
- **Intervention modeling.** Vaccination (reduce susceptibility/infectiousness by coverage ×
  efficacy), NPIs (reduce β or contacts), test-trace-isolate (reduce infectious period or
  remove infecteds). Model the intervention as actually implementable — 100% compliance
  scenarios are fantasies.

## Practical workflow

1. **Question.** What decision does this model inform? (Not "model the epidemic" — a specific
   choice with options.)
2. **Structure.** Simplest model that captures the decision-relevant mechanism; justify each
   compartment.
3. **Parameters.** Literature values with sources and ranges; estimate the rest from data;
   document every number.
4. **Fit.** Bayesian/MCMC with observation model; check convergence, posterior predictive fits,
   and sensitivity to priors.
5. **Scenarios.** Baseline + intervention options with explicit assumptions; present as ranges
   across parameter uncertainty, not point trajectories.
6. **Validate.** Backtest on held-out periods; compare against simple baselines (a naive model
   that beats your SIR is telling you something).
7. **Communicate.** Assumptions up front, uncertainty as intervals, scenarios labeled as
   scenarios. Never present a single trajectory as "the prediction."

Example (Python sketch):
```python
from scipy.integrate import odeint
def seir(y, t, N, beta, sigma, gamma):
    S, E, I, R = y
    return [-beta*S*I/N, beta*S*I/N - sigma*E, sigma*E - gamma*I, gamma*I]
```

## Common pitfalls

- Fitting to case counts without modeling testing/reporting changes.
- Ignoring reporting delays (recent data are always incomplete — nowcasting needed).
- Homogeneous-mixing models for policy without age/behavior structure.
- Presenting scenarios as predictions.
- Overconfident narrow intervals (models are usually overconfident — widen honestly).
- Parameters from a different pathogen/population without adjustment.
- No validation against held-out data or simple baselines.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…