Este curso es una introducción a algunos paradigmas avanzados para el diseño de algoritmos de búsqueda y optimización: búsqueda en grafos, programación dinámica (tanto exacta como aproximada), branch-and-bound y algunos métodos heurísticos de optimización global (por ejemplo algoritmos genéticos).
En el curso aprenderán en qué situaciones se aplican estos paradigmas así como algunos problemas importantes que pueden resolverse usándolos (encontrar caminos más cortos, topological sort, Knapsack, algunos problemas de logística y planeación, el problema del agente viajero, alineación de secuencias de ADN, etc.). También tendrán la oportunidad de trabajar con sus compañeros en un proyecto longitudinal para explorar alguno de estos algoritmos, así como su implementación y aplicación.
Textos: La referencia principal del curso seran las notas del instructor. Estas se basarán en los siguientes libros de referencia (altamente recomendados y complementarios entre si):
Metodología y Evaluación:
La mayor parte de lo que aprenderán en este curso será el resultado de su propio trabajo en tres aspectos de igual importancia: Reflexión posterior a cada clase sobre los resultados discutidos en ella, trabajo en los talleres Prácticos asignados clase a clase y un Proyecto longitudinal.
Los criterios de evaluación del curso son:
Instructor:
PLAN DEL CURSO:
Semana | Tema | Notas Clase | Prácticos | Evaluaciones (con *) |
1 | El algoritmo de Dijkstra | [pdf] | [P1], [M3] | |
2 | Heaps y Dijkstra | [pdf], [M4] | ||
3 | Fundamentos de Optimización | [pdf] | *Entrega Práctico [P1] | |
4 | Entrega 1 -- Proyecto Longitudinal | *Q1 | ||
5 | Programación Dinámica 1 PD1 | [pdf] | [P2] | |
6 | Programación Dinámica 2 PD2 | [pdf] | ||
7 | PD3 Pesos negativos | [pdf] | [P3] | *Entrega Práctico [P2] |
8 | PD4 Heurísticas (A*, etc.) | *Q2 | ||
SEMANA UCU | ||||
9 | Entrega 2 -- Proyecto Longitudinal | |||
10 | PD5 TSP y coloración | [pdf] | *Entrega Práctico [P3] | |
11 | Búsqueda | [pdf] | [P4] | *Q3 |
12 | Algoritmo A^* | [pdf] | ||
13 | TSP & Branch & Bound | [pdf] [py] | [P5] | *Entrega Práctico [P4] |
14 | Optim Lineal & Branch-and-Bound 2 | |||
15 | Algoritmos genéticos | [pdf][GSG] | *Q4 | |
16 | Entrega 3 -- Proyecto Longitudinal | *Entrega Práctico [P5] |