encyklopedia.space

Model SEIR

Model SEIR (ang. Susceptible‑Exposed‑Infectious‑Recovered) jest jednym z podstawowych matematycznych modeli służących do modelowania rozprzestrzeniania chorób zakaźnych. Rozwija on klasyczny model SIR, wprowadzając dodatkową grupę narażonych na infekcję (Exposed, E), co pozwala lepiej odzwierciedlić okres inkubacji choroby, w którym osoba jest już zainfekowana, ale jeszcze nie jest zdolna do przenoszenia patogenów.

Historia

Podstawy modelu SEIR sformułowano w latach 70. XX wieku w ramach rozwoju epidemiologii matematycznej. Pierwsze publikacje opisujące ten model pojawiły się w pracach Kermacka i McKendry’ego oraz w późniejszych opracowaniach autorów takich jak Anderson i May. Od tego czasu model SEIR stał się standardowym narzędziem w analizie przebiegu pandemii, m.in. grypy, SARS, a ostatnio COVID‑19.

Struktura modelu

Populację rozdziela się na cztery grupy:

  • S (Susceptible) – osoby podatne na zakażenie;
  • E (Exposed) – osoby, które zostały zarażone, ale znajdują się w okresie inkubacji i nie są jeszcze zakaźne;
  • I (Infectious) – osoby chorujące i zdolne do przenoszenia infekcji;
  • R (Recovered) – osoby, które wyzdrowiały i uzyskały odporność (lub zmarły, w zależności od wersji modelu).

Równania różniczkowe

Model opisuje dynamikę grup za pomocą układu zwykłych równań różniczkowych (równania różniczkowe):

dS/dt = -β·S·I/N
dE/dt =  β·S·I/N - σ·E
dI/dt =  σ·E - γ·I
dR/dt =  γ·I
  

gdzie:

  • β – współczynnik transmisji (tempo zarażania);
  • σ – współczynnik przejścia z fazy Exposed do Infectious (odwrotność średniego czasu inkubacji);
  • γ – współczynnik wyzdrowienia (odwrotność średniego czasu trwania zakaźności);
  • N = S + E + I + R – całkowita liczba jednostek w populacji.

Podstawowe pojęcia

  • R₀ (basic reproduction number) w modelu SEIR wyraża się jako R₀ = β / γ przy założeniu, że faza Exposed nie wpływa na liczbę nowych zakażeń, ale w praktyce uwzględnia się opóźnienie spowodowane okresem inkubacji.
  • Parametr latent period (= 1/σ) odgrywa kluczową rolę w prognozowaniu tempa wzrostu epidemii.

Warianty i rozszerzenia

W zależności od specyfiki badanej choroby i dostępnych danych, model SEIR może być modyfikowany:

  • SEIRS – dodaje powrót do klasy Susceptible po utracie odporności;
  • SEIHR – wprowadza dodatkową kategorię Hospitalized (hospitalizowani);
  • SEAIQHR – uwzględnia wyizolowane przypadki (Quarantined) i asymptomatyczne zakażenia;
  • Model przestrzenny – łączy SEIR z równaniami dyfuzyjnymi lub sieciami kontaktów, aby opisać rozprzestrzenianie się w różnych regionach.

Zastosowania

Model SEIR stosowany jest w:

  • Prognozowaniu przebiegu pandemii, np. grypy A(H1N1) w 2009 r.;
  • Analizie interwencji zdrowotnych, takich jak szczepienia, dystans społeczny czy kwarantanna;
  • Oceny wpływu zmiany parametrów (β, σ, γ) na R₀ i liczbę przypadków;
  • Wsparciu decyzji politycznych i przygotowania systemów opieki zdrowotnej.

Estymacja parametrów

Parametry β, σ i γ najczęściej estymuje się na podstawie danych epidemiologicznych przy użyciu metod:

  • Maximum likelihood (MLE);
  • Metody bayesowskie (np. MCMC);
  • Algorytmy optymalizacji (np. algorytm genetyczny);
  • Iteracyjne dopasowanie krzywej do rzeczywistych danych przypadków (uwagi statystyczne).

Oprogramowanie

Do symulacji modelu SEIR dostępne są pakiety w językach:

  • R – np. pakiet deSolve lub EpiModel;
  • Python – biblioteka epipy lub SciPy (solve_ivp);
  • MATLAB – funkcja ode45 lub dedykowane toolboxy;
  • Julia – paczka DifferentialEquations.jl.

Zalety i ograniczenia

Zalety:

  • Prostota i przejrzystość konstrukcji;
  • Możliwość szybkiego dostosowania do różnych chorób poprzez zmianę parametrów;
  • Szerokie zastosowanie w literaturze naukowej.

Ograniczenia:

  • Zakłada jednorodną mieszankę populacji (brak heterogeniczności kontaktów);
  • Nie uwzględnia zmian w zachowaniach społecznych w czasie trwania epidemii, chyba że wprowadzi się dodatkowe zmienne;
  • Wymaga dokładnych danych o okresie inkubacji i czasie trwania zakaźności, które nie zawsze są dostępne.

Przykład prostego kodu w Pythonie

import numpy as np
from scipy.integrate import solve_ivp
import matplotlib.pyplot as plt

def seir(t, y, beta, sigma, gamma, N):
    S, E, I, R = y
    dS = -beta * S * I / N
    dE =  beta * S * I / N - sigma * E
    dI =  sigma * E - gamma * I
    dR =  gamma * I
    return [dS, dE, dI, dR]

N = 1_000_000
beta, sigma, gamma = 0.3, 1/5.2, 1/2.9
y0 = [N-1, 0, 1, 0]
t_span = (0, 160)
t_eval = np.linspace(*t_span, 160)

sol = solve_ivp(seir, t_span, y0, args=(beta, sigma, gamma, N), t_eval=t_eval)

plt.plot(sol.t, sol.y[0], label='S')
plt.plot(sol.t, sol.y[1], label='E')
plt.plot(sol.t, sol.y[2], label='I')
plt.plot(sol.t, sol.y[3], label='R')
plt.legend()
plt.xlabel('Dni')
plt.ylabel('Liczba osób')
plt.title('Prosty model SEIR')
plt.show()
  

Literatura

  1. Kermack, W.O.; McKendrick, A.G. (1927). Contributions to the mathematical theory of epidemics – I. Proceedings of the Royal Society A.
  2. Anderson, R.M.; May, R.M. (1991). Infectious Diseases of Humans: Dynamics and Control. Oxford University Press.
  3. Keeling, M.J.; Rohani, P. (2008). Modeling Infectious Diseases in Humans and Animals. Princeton University Press.
  4. Wallinga, J.; Lipsitch, M. (2007). How generation intervals shape the relationship between growth rates and reproductive numbers. Proceedings of the Royal Society B.
  5. Ferguson, N. et al. (2020). Impact of non-pharmaceutical interventions (NPIs) to reduce COVID‑19 mortality and healthcare demand. Imperial College London.

Model SEIR pozostaje jednym z najważniejszych narzędzi w modelowaniu rozprzestrzeniania chorób, łącząc prostotę z możliwością uwzględnienia kluczowych cech biologicznych patogenów.