Performance comparison of Python, MATLAB and R for numerical solutions of SI and SIR epidemiological models

Este estudio compara el rendimiento computacional y la precisión de Python, MATLAB y R al resolver numéricamente los modelos epidemiológicos SI y SIR mediante métodos como Euler, Runge-Kutta de cuarto orden y Predictor-Corrector, proporcionando orientación práctica para la selección de herramientas en la modelización de epidemias.

Berkay Özışık, Elif Demirci

Publicado 2026-03-05
📖 4 min de lectura🧠 Análisis profundo

Each language version is independently generated for its own context, not a direct translation.

¡Hola! Imagina que este artículo es como una carrera de coches de Fórmula 1, pero en lugar de pilotos famosos, los competidores son tres programas informáticos muy populares: Python, MATLAB y R. Y en lugar de una pista de asfalto, la "pista" son unos problemas matemáticos que intentan predecir cómo se propaga un virus (como la gripe o el COVID) en una población.

Aquí te explico la historia de la carrera de forma sencilla:

1. El escenario: ¿Qué están intentando resolver?

Los científicos usan modelos matemáticos para entender enfermedades. Imagina dos tipos de "juegos de mesa" para simular una epidemia:

  • El juego SI (Susceptible-Infecioso): Es como un juego donde si tocas a alguien, te contagias y ya no puedes volver a estar sano. Es un modelo simple.
  • El juego SIR (Susceptible-Infecioso-Recuperado): Es un poco más complejo. Aquí, después de estar enfermo, puedes curarte y quedarte inmune.

Para resolver estos "juegos" y saber cuánta gente se enfermará mañana, no podemos hacerlo a mano (sería como intentar contar hasta un millón con los dedos). Necesitamos usar métodos numéricos, que son como recetas de cocina paso a paso para calcular el resultado. Los autores probaron tres recetas:

  1. Método de Euler: La receta más simple y rápida, pero a veces un poco "tosca" (como usar un cuchillo de plástico para cortar pan).
  2. Método RK4: Una receta muy sofisticada y precisa (como un cuchillo de chef japonés).
  3. Método Predictor-Corrector: Una receta que primero adivina el resultado y luego lo corrige para que sea perfecto.

2. Los competidores: Python, MATLAB y R

Ahora, ¿quién cocina estas recetas?

  • Python: Es como un chef versátil y moderno. Es gratuito, muy popular y se adapta a todo.
  • MATLAB: Es como un chef de un restaurante de lujo. Es muy potente y profesional, pero cuesta dinero y a veces es un poco más lento en tareas simples.
  • R: Es como un chef especialista en estadística. Es excelente para analizar datos, pero a veces se toma su tiempo para cocinar platos complejos.

3. La carrera: ¿Quién gana?

Los autores pusieron a los tres chefs a cocinar los mismos platos (resolver los modelos SI y SIR) usando las tres recetas (métodos) en una computadora moderna (un MacBook con chip M4).

Los resultados fueron sorprendentes:

  • Precisión (¿Qué tan bueno es el sabor?):

    • La receta RK4 fue la ganadora indiscutible en todos los casos. Fue tan precisa que, incluso cuando los otros métodos cometían pequeños errores, RK4 dio resultados casi perfectos (como si el sabor fuera idéntico al original).
    • El método Euler fue el menos preciso, especialmente si se intentaba cocinar rápido (con pasos grandes).
    • Conclusión: Si quieres que el resultado sea perfecto, usa la receta RK4, da igual qué programa uses.
  • Velocidad (¿Quién termina primero?):

    • Python fue el campeón de la velocidad. Terminó la tarea mucho más rápido que los otros dos, especialmente cuando la receta era complicada o requería muchos pasos pequeños. Fue como si el chef Python tuviera un motor de cohete.
    • MATLAB fue el segundo lugar. Fue decente, pero más lento que Python.
    • R fue el último lugar. Aunque sus resultados eran correctos, tardó mucho más en cocinar el plato. Fue como un chef que mide cada gramo de sal con una balanza de precisión antes de echarla.

4. La analogía final

Imagina que tienes que pintar un mural gigante de una epidemia:

  • Python es el pintor que usa una pistola de pintura de alta tecnología: rápido, limpio y preciso.
  • MATLAB es el pintor que usa un rodillo profesional: hace un buen trabajo, pero tarda un poco más.
  • R es el pintor que usa un pincel fino: hace un trabajo excelente, pero le toma mucho más tiempo cubrir la misma superficie.

¿Qué nos enseña esto?

El mensaje principal del artículo es: Si eres un investigador y necesitas simular epidemias, Python es probablemente tu mejor aliado.

Ofrece el mejor equilibrio: es tan preciso como los otros programas (especialmente si usas el método RK4) y es mucho más rápido. MATLAB sigue siendo útil, pero R, aunque poderoso para estadísticas, puede ser lento para estas simulaciones matemáticas específicas.

En resumen: Para predecir cómo se mueve un virus, usa Python con la receta RK4; será rápido y no te dará sorpresas.