Profesor | Mario Iván Jaen Márquez | lu mi | 17 a 18:30 | O130 |
Ayudante | Diego David Rafael Rivera Osorio | ma ju | 17 a 18 | P203 |
Ayud. Lab. | Marisol Amezcua López | ju | 14 a 16 | Laboratorio de Ciencias de la Computación 2 |
Cómputo Evolutivo. Semestre 2019-2
Licenciatura en Computación, Facultad de Ciencias, UNAM.
Profesor: M. C. Mario Iván Jaen Márquez
Email: mjaenm@ciencias.unam.mx
Sitio web del curso: https://mjaenm.github.io/compevounam/2019-2/
Horario de clase: Lunes y Miércoles de 17:00 a 18:30, Salón: O130
Ayudantes: Diego Rivera (teoría), Marisol Amezcua (laboratorio)
Panorama del curso:
Un curso para estudiantes de licenciatura avanzados que aborda los temas fundamentales de una subárea de la Inteligencia Artificial popularmente conocida como Cómputo Evolutivo, también denominada Inteligencia Computacional o Computación Bio-Inspirada, incluso Optimización Estocástica. Se estudian métodos principalmente para optimización global usando (pero no necesariamente) inspiración del comportamiento de especies en la naturaleza.
Se trata de un curso teórico/práctico. La teoría comprende un conjunto de algoritmos históricamente relevantes en el desarrollo del área, tales como el algoritmo genético, así como los métodos recientes del estado del arte como redes neuronales evolutivas. En la parte práctica se modelan problemas reales de diferentes áreas y se implementan soluciones usando esta clase de algoritmos para resolverlos.
Objetivos:
Conocer los fundamentos, teóricos y prácticos, de los algoritmos evolutivos.
Proporcionar bases teóricas importantes para participar en investigación en al área de cómputo evolutivo.
Dar un panorama de las aplicaciones del cómputo evolutivo como herramienta de optimización.
Implementar soluciones creativas usando algoritmos evolutivos a problemas complejos que no pueden abordarse a través de métodos exactos.
Resolver problemas complejos del mundo real vistos en diferentes áreas (procesamiento de imágenes, inteligencia artificial, finanzas, etc.)
Prerrequisitos recomendados
Matemáticas: Cálculo multivariado, Probabilidad y estadística.
Programación: Programación en Python de preferencia (Las primeras sesiones de ayudantía cubrirán este requisito), Análisis de algoritmos, Complejidad computacional.
Temario:
Introducción al cómputo evolutivo
Metaheurísticas de búsqueda y optimización
Principales paradigmas del cómputo evolutivo
Algoritmo Genético (AG)
Estrategias Evolutivas (EE)
Algoritmos evolutivos del estado del arte
Programación Evolutiva y Programación Genética
Redes Neuronales Evolutivas
Bibliografía:
A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing, 2nd Edition. Springer, 2015.
Goldberg G., Genetic Algorithms in Search, Optimisation and Machine Learning, AddisonWesley, 1989.
Russell Eberhart Yuhui Shi James Kennedy. Swarm Intelligence. Morgan Kaufmann, 2001.
Zbigniew Michalewicz. Genetic Algorithms + Data Structures = Evolution Programs. Springer, 3rd ed. 1998
M. Vose, The Simple Genetic Algorithm, MIT Press, Cambridge, 1999.
Clinton Sheppard. Genetic Algorithms with Python. 2018.
Lecturas adicionales:
Adicional a la bibliografía del curso, se revisarán algunos artículos de investigación relevantes en la literatura científica del área.
Forma de evaluación (a considerar con el grupo):
Relación con otras asignaturas: