구획 모형
1927년 윌리엄 커맥과 앤더슨 매켄드릭은 모든 사람을 몇 개의 집단으로 나누고 사람들이 집단 사이를 어떻게 옮겨 가는지 따라가며 유행을 나타냈습니다. SIR 모형에서는 누구나 감수성자 (S), 감염자 (I), 회복자 (R, 면역 있음) 중 하나입니다. SEIR 모형은 감염은 됐지만 아직 남에게 옮기지 못하는 사람들을 위해 노출자 (E) 집단을 더합니다. 인구 N인 마을에서는
dS/dt = −βSI ÷ N, dE/dt = βSI ÷ N − σE, dI/dt = σE − γI, dR/dt = γI
- β는 감염자 한 명이 하루에 하는 전염성 접촉 수입니다. 마을의 S ÷ N을 차지하는 감수성자와 접촉하면 감염이 옮습니다.
- σ는 1 ÷ 잠복기입니다. SIR에는 E가 없고, 새 환자는 바로 전염력이 생깁니다.
- γ는 1 ÷ 전염 기간입니다.
R₀와 실질감염재생산수
기초감염재생산수 R₀는 다른 모든 사람이 감수성자일 때 환자 한 명이 평균 몇 명을 감염시키는지를 나타냅니다. 이 모형들에서 R₀ = β ÷ γ, 즉 하루 접촉 수에 전염력이 있는 날수를 곱한 값입니다. 1보다 크면 유행이 커질 수 있고, 1보다 작으면 모든 감염 사슬이 끊깁니다.
사람들이 회복해 면역을 얻을수록 환자 한 명이 옮길 수 있는 상대는 줄어듭니다. 실질감염재생산수는 R_t = R₀ × S ÷ N입니다. 유행은 R_t가 정확히 1로 떨어지는 순간, 즉 마을의 1 ÷ R₀가 아직 감수성자일 때 정점에 이르고, 그 뒤로 줄어듭니다. 접촉을 줄이는 대책은 R_t를 더 낮춥니다.
집단 면역
유행이 시작되기 전에 인구의 p가 면역을 가지고 있으면 R_t는 R₀ × (1 − p)에서 시작합니다. 이 값이 1보다 작으면 유행이 커질 수 없으므로, 집단 면역 문턱값은
p = 1 − 1 ÷ R₀
입니다. R₀ = 2면 인구의 절반, R₀ = 3이면 3분의 2, R₀가 약 12~18인 홍역은 약 92%~95%입니다. 면역이 있는 사람은 감염 사슬을 끊어 다른 사람을 보호합니다.
최종 규모
유행은 집단 면역 문턱값에서 멈추지 않습니다. 정점에서도 아직 많은 사람이 전염력을 가지고 다른 사람에게 계속 옮기므로, 문턱값을 넘어 진행합니다. 한 번도 감염되지 않는 비율 s는, 모두가 감수성자인 마을에서 최종 규모 방정식
ln(1 ÷ s) = R₀ × (1 − s)
을 만족합니다. 이 식은 대수적으로 풀리지 않지만, 조금씩 다가가며 풀 수 있습니다. 결과는 SIR과 SEIR에서 같습니다. 잠복기가 바꾸는 것은 환자가 나오는 시기이지 그 수가 아닙니다.
계산 예
시뮬레이션은 R₀ = 3, 잠복기 3일, 전염 기간 7일, 인구 1,000명의 마을에 감염자 5명으로 시작합니다.
- γ = 1 ÷ 7 = 하루 0.143이므로, β = R₀ × γ = 하루 0.429번의 전염성 접촉입니다.
- 집단 면역 문턱값: 1 − 1 ÷ 3 = 0.667, 즉 667명입니다.
- 최종 규모: s = 0.06을 넣어 보면 ln(1 ÷ 0.06) = 2.81, 3 × 0.94 = 2.82로 충분히 가깝습니다. 마을의 약 94%가 감염되며, 문턱값 67%를 훨씬 넘습니다.
- SIR의 초기 증가: 환자는 하루 β − γ = 0.286의 비율로 늘고, ln 2 ÷ 0.286 = 2.4일마다 두 배가 됩니다. 잠복기가 있으면 이것이 느려집니다.
- 방정식에서 SIR 유행은 약 21일째에, 잠복기 3일이면 약 36일째에 정점에 이릅니다.
먼저 마을의 절반에 백신을 접종하면 R_t는 1.5에서 시작하고, 마을의 약 30%가 감염됩니다. 문턱값을 넘는 70%에 접종하면 유행은 환자 수십 명 만에 사그라듭니다.
유행 곡선 평평하게 하기
거리 두기는 β를 낮추고, 격리는 일부 환자가 아무에게도 옮기지 못하게 합니다. 둘 다 실질적인 R₀를 낮춥니다. 접촉을 절반으로 줄이면 R₀ = 3이 1.5가 되어 정점은 훨씬 낮고 늦어지며, 최종 규모는 94%에서 약 59%로 떨어집니다. 낮아진 문턱값을 넘어서는 폭이 작아지기 때문입니다. 정점을 낮게 유지하는 것은 한 번에 치료할 수 있는 사람 수에 한계가 있는 병원에 중요합니다.
시뮬레이션 사용법
감염병 확산 시뮬레이터: SIR과 SEIR에서 다음을 해 보세요.
- 기본 설정으로 실행하고 마을 (실선)과 방정식 (점선)을 비교하세요. R_t가 1 아래로 떨어지는 날을 확인하고 정점과 비교해 보세요.
- 잠복기를 0으로 해서 SIR로 만드세요. 유행이 더 일찍, 더 빠르게 오지만 최종 규모는 같습니다.
- 60%, 이어서 70%에 백신을 접종하세요. R₀ = 3의 문턱값은 그 사이에 있습니다.
- 환자의 50%를 격리한 경우와 50% 거리 두기를 비교하세요. 둘 다 R₀를 절반으로 줄입니다.
- R₀를 1.2, 마을을 200명, 감염자 1명으로 하세요. 곧바로 끝나는 실행도 있고, 퍼지는 실행도 있습니다.
모형의 가정
- 균일한 섞임: 모든 감염자는 마을의 누구와도 같은 확률로 만납니다. 가정, 학교, 인맥은 없습니다.
- 모두가 같음: 감수성, 접촉, 전염 기간이 누구나 같습니다.
- 지수 분포의 대기 시간: 노출자나 감염자는 매일 같은 확률로 다음 단계로 넘어가므로, 하루 만에 회복하는 사람도 몇 주 걸리는 사람도 있으며 평균은 맞습니다.
- 평생 가는 면역: 회복자와 백신 접종자는 다시 감염되지 않고, 백신은 완벽하게 듣습니다.
- 닫힌 마을: 한 번의 유행 동안 출생, 사망, 이동, 병으로 인한 사망이 없습니다.
- 격리는 환자의 일정 비율을 전염력이 생기는 순간 붙잡아 회복할 때까지 가둡니다. 거리 두기는 모든 접촉을 같은 비율로 줄입니다.
경계 사례
- R₀가 1 미만: 모든 감염 사슬이 평균 1 ÷ (1 − R₀)명에서 끊깁니다. R₀ = 0.9면 10명, R₀ = 0.5면 2명입니다.
- R₀가 1을 조금 넘을 때: 작은 마을에서는 방정식이 유행을 예측해도 많은 유행이 퍼지기 전에 우연히 사라집니다. 감염자 1명에 R₀ = 1.2면 대부분의 실행이 일찍 끝납니다.
- 문턱값을 넘는 접종: R_t가 1 미만에서 시작하므로 유행이 커질 수 없지만, 접종하지 않은 사람 몇 명은 여전히 감염될 수 있습니다.
- 아주 높은 R₀: R₀ = 12에서는 면역이 없는 사람 거의 모두가 감염됩니다.
- 잠복기 0: SEIR이 SIR이 됩니다.
- 모두 격리: 아무도 누구에게도 옮길 수 없고, 유행은 첫 환자들과 함께 끝납니다.
모형이 맞지 않게 되는 경우
- 슈퍼 전파. 많은 병에서 소수의 환자가 감염의 대부분을 일으키고, 대부분의 환자는 아무에게도 옮기지 않습니다. 그러면 유행이 우연히 사라지는 일이 잦아지지만, 살아남은 유행은 폭발적으로 퍼질 수 있습니다.
- 구조. 사람들은 같은 가족과 동료를 거듭 만납니다. 뭉친 접촉은 확산을 늦추고, 무작위로 섞일 때보다 최종 규모를 줄이며, 연령대마다 섞이는 방식도 크게 다릅니다.
- 행동이 바뀐다. 사람들은 환자가 늘면 접촉을 줄이고 줄면 느슨해지므로, R_t는 모형의 단순한 경로를 따르지 않습니다.
- 면역은 약해진다. 독감, 감기, COVID-19에서는 면역이 약해지고 바이러스도 면역을 피하도록 진화합니다. 그러면 유행이 물결처럼 되풀이되어 SIRS 모형이 필요해집니다.
- 대기 시간은 지수 분포가 아니다. 실제 잠복기와 전염 기간은 평균 근처에 몰려 있습니다. 이는 정점의 시기와 높이를 바꾸지만 최종 규모는 바꾸지 않습니다.
- 무증상·발병 전 전파. 격리는 발견된 환자에게만 효과가 있습니다. 증상이 나타나기 전에 전파되면 격리의 효과는 이 모형이 보여 주는 것보다 훨씬 작아집니다.
- R₀는 병원체의 고정된 성질이 아니다. 사람들이 사는 방식과 만나는 방식에 따라 달라지므로, 추정치는 장소와 연구마다 다릅니다.
관련 도구
유행의 초기 증가는 세균 성장 시뮬레이터의 성장처럼 지수적입니다. 세포 배가 시간 계산기로 세포 배가 시간 계산하는 법처럼 그 배가 시간을 구할 수 있습니다. 퍼센트 계산기는 환자 수를 인구 대비 비율로 바꿉니다. 포식자와 피식자 개체군 시뮬레이터는 같은 질량 작용의 개념을 토끼를 잡는 여우에 적용합니다.