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:
- Definición del problema
- Diseño del experimento computacional
- Implementación
- Análisis de resultados
- 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.