Taller de computación científica y exploración de modelos complejos

Introducción

Este curso introduce los principios y herramientas fundamentales de la computación científica moderna para el estudio de sistemas complejos mediante simulación. Se abordan conceptos generales de modelización computacional, análisis de datos y aprendizaje automático, junto con técnicas para ejecutar experimentos computacionales a gran escala.

El curso pone especial énfasis en tres aspectos clave del trabajo científico computacional contemporáneo:

  • Procesamiento y gestión de grandes volúmenes de datos.
  • Ejecución eficiente de simulaciones a gran escala.
  • Diseño de experimentos computacionales reproducibles.
  • Exploración de modelos e inferencia de parámetros.

Las sesiones combinan fundamentos teóricos con ejercicios prácticos en Python utilizando herramientas actuales del ecosistema de análisis de datos (Jupyter, Pandas, Polars, Dask, scikit-learn, seaborn).

Objetivo

Al finalizar el curso, el estudiante será capaz de:

  • Identificar y aplicar distintos paradigmas de computación paralela.
  • Procesar y analizar grandes volúmenes de datos, tanto observacionales como generados mediante simulaciones.
  • Utilizar herramientas modernas de manipulación de datos basadas en dataframes.
  • Desarrollar flujos de trabajo reproducibles para experimentos computacionales.
  • Diseñar estrategias de exploración de modelos y calibración de parámetros.

Inscripciones

Las inscripciones están abiertas hasta el 3 de mayo inclusive.

Para anotarse, enviar un mail aquí: falvarez@fcien.edu.uy/cicada@ei.udelar.edu.uy

Estructura General y Temario

Carga horaria: 25 horas en 5 clases teórico-prácticas de 4 h cada una (presenciales), seguidas de dos sesiones de discusión de proyectos y tutorías prácticas.

Módulo 1 – Procesamiento y gestión de datos científicos

  • Dataframes y operaciones.
  • Escalabilidad.
  • Datos complejos.
  • Almacenamiento.
  • Buenas prácticas.

Módulo 2 – Simulación de sistemas complejos

  • ¿Qué es una simulación?
  • Tipos de modelos.
  • Experimentos computacionales.
  • Reproducibilidad.

Módulo 3 – Exploración de modelos y ejecución eficiente

  • El problema de los modelos complejos.
  • Estrategias de exploración.
  • Métodos avanzados.
  • Ejecución eficiente.

Público esperado y competencias

El curso está dirigido a estudiantes avanzados de grado en disciplinas científicas o técnicas (biología, física, ingeniería u otras áreas cuantitativas), así como a estudiantes de posgrado interesados en la modelización y el análisis computacional de sistemas complejos.

Se recomienda contar con conocimientos básicos de programación (preferiblemente en Python) y con fundamentos de matemáticas y estadística a nivel de grado. No se requiere experiencia previa en simulación o computación de alto rendimiento.

Aprobación

Cada estudiante desarrollará un proyecto de exploración de un modelo computacional, que deberá incluir:

  1. Definición del problema
  2. Diseño del experimento computacional
  3. Implementación
  4. Análisis de resultados
  5. Entrega final

Docentes

Miguel Ponce de Leon (Barcelona Supercomputing Center).

Fechas, lugar, duración y carga horaria

De lunes 4/5 al viernes 8/5, Facultad de Ciencias (salón a confirmar) de 9 a 13 hs (20 hs  aula más proyecto final, total sugerido: 4 créditos)

Bibliografía

La bibliografía combina referencias prácticas para el análisis de datos con trabajos metodológicos y aplicaciones en sistemas complejos, proporcionando una base tanto conceptual como aplicada.

VanderPlas, J. (2016). Python Data Science Handbook. O’Reilly Media.

Harrison, M. (2021). Effective Pandas: Patterns for Data Manipulation. Treading on Python.

Downey, A. (2023). Modeling and Simulation in Python.

Wilson, G., Bryan, J., Cranston, K., Kitzes, J., Nederbragt, L., & Teal, T. K. (2017). Good enough practices in scientific computing. PLOS Computational Biology, 13(6), e1005510.

Ponce-de-Leon, M., et al. (2021). COVID-19 Flow-Maps: An open geographic information system on COVID-19 and human mobility for Spain. Scientific Data, 8(1), 310.

Sunnåker, M., Busetto, A. G., Numminen, E., Corander, J., Foll, M., & Dessimoz, C. (2013). Approximate Bayesian computation. PLOS Computational Biology, 9(1), e1002803.

Akasiadis, C., Ponce-de-Leon, M., Montagud, A., et al. (2022). Parallel model exploration for tumor treatment simulations. Computational Intelligence.

Collier, N., Wozniak, J. M., Fadikar, A., Stevens, A., & Ozik, J. (2024). Distributed model exploration with EMEWS. In Winter Simulation Conference (pp. 72–86). IEEE.

Ozik, J., Wozniak, J. M., Collier, N., Macal, C. M., & Binois, M. (2021). A population data-driven workflow for COVID-19 modeling and learning. The International Journal of High Performance Computing Applications, 35(5), 483–499.

Cranmer, K., Brehmer, J., & Louppe, G. (2020). The frontier of simulation-based inference. Proceedings of the National Academy of Sciences, 117(48), 30055–30062.