Python、MATLAB 和 R 用于 SI 和 SIR 流行病模型数值解的性能比较
数值分析
2026-03-05 v2 数值分析
摘要
数学建模在流行病学中发挥着关键作用,为理解传染病的传播和控制提供深刻见解。Kermack 与 McKendrick 所发展的 compartmental 模型,特别是 SI(易感-感染)和 SIR(易感-感染-康复)模型,构成了许多流行病研究的基础。虽然某些简单情形允许解析解,但大多数现实模型需要数值方法,如欧拉法、四阶 Runge-Kutta(RK4)法和预测-校正(P-C)方法。这些方法通常在 Python、MATLAB 和 R 等科学计算软件中实现。然而,这些软件工具在求解流行病模型方面的计算效率和运行时间性能尚未在文献中进行全面比较。本研究通过在 Python、MATLAB 和 R 中分别实现欧拉法、RK4 和 P-C 方法来求解 SI 和 SIR 模型,记录每个实现的执行时间,以评估计算效率。此外,对于存在解析解的 SI 模型,计算 R2 值以评估数值精度。对于 SIR 模型,采用 MATLAB 的 ODE45 求解器获得高精度参考解,并将 MATLAB 中通过 RK4 方法得到的 SIR 解与该参考解进行比较。结果提供了关于不同软件和数值方法在准确性和运行时间性能方面的比较视角,为研究人员和实践者在流行病建模中选择合适工具提供了实际指导。
引用
@article{arxiv.2603.01916,
title = {Performance comparison of Python, MATLAB and R for numerical solutions of SI and SIR epidemiological models},
author = {Berkay Özışık and Elif Demirci},
journal= {arXiv preprint arXiv:2603.01916},
year = {2026}
}