Profesor | Andrés Aldana González | ma ju | 17:30 a 19 |
Ayudante | Felipe de Jesús Navarrete Córdova | lu mi | 19 a 20 |
Ayud. Lab. | Gerardo Eugenio Martínez Ramos | ma | 14 a 16 |
Los invitamos a unirse a este curso a través de google classroom a partir del martes 15 de febrero de 2022, en donde encontrarán el enlace de meet para las clases.
Enlace de invitación:
https://classroom.google.com/c/NDY1NzM4NDU3MTE3?cjc=w2gfr6b
Es necesario ingresar conectado con una cuenta de correo de la facultad de ciencias para poder ver el enlace de meet
En la primer sesión acordaremos los lineamientos del curso, tales como la dinámica de evaluación, material bibliográfico y una breve introducción al curso. LA TOTALIDAD DE LA CLASE SE LLEVARÁ A CABO DE FORMA VIRTUAL
Resumen del curso:
La computación evolutiva es una rama de la inteligencia artificial que integra un conjunto de técnicas y algoritmos de búsqueda y optimización, capaces de evolucionar con la disponibilidad de nuevos datos y experiencias. Estos algoritmos están inspirados en diversas dinámicas colectivas y procesos evolutivos observados en diversas especies en la naturaleza. La computación evolutiva inicia con una población en la que cada individuo representa una posible solución a un problema determinado. Cada individuo es evaluado y modificado de acuerdo a sus características e interacción con otros miembros de la población, para acercarse a las mejores soluciones del problema. Esta aproximación incluye estrategias evolutivas, programación genética, inteligencia de enjambre, algoritmos genéticos, programación evolutiva, evolución diferencial y diversos algoritmos utilizados en tareas de optimización multiobjetivo.
El objetivo de este curso es presentar al alumno los algoritmos y teorías fundamentales que conforman al cómputo evolutivo. Para entender de forma integral los algoritmos y técnicas presentadas, tomaremos conceptos de diversas áreas, incluyendo estadística, probabilidad, inteligencia artificial, biología, ecología y ciencias de la complejidad. El curso será presentado de forma que el alumno pueda pasar rápidamente de la teoría y los conceptos vistos en clase, a su implementación y aplicación en problemas concretos.
Temario y bibliografía:
Tomaremos como base el temario y bibliografía oficial que pueden encontrar en el classroom del curso, así como en el siguiente vínculo: https://web.fciencias.unam.mx/asignaturas/664.pdf
Evaluación tentativa:
El curso estará enfocado al trabajo constante del alumno en la implementación y aplicación de las técnicas y algoritmos revisados en clase. Los exámenes serán proyectos pequeños que integren los conocimientos adquiridos de cada tema en la solución de un problema concreto. El proyecto final será propuesto por el alumno y tendrá que resolver un problema que integre diversas técnicas aprendidas durante el curso.
Tareas 40%
Exámenes 30%
Proyecto final 30%
Requisitos del alumno:
Este curso revisará la teoría e implementación de diversos algoritmos fundados en una fuerte teoría matemática y de programación. Por ello, es deseable (no obligatorio) que el alumno tenga conocimientos de álgebra, estadística, probabilidad y maneje de forma fluída al menos un lenguaje de programación (obligatorio). Preferentemente, son deseables nociones de programación en python y java.
Contacto:
Pueden contactarnos a través de los siguientes correos:
Andrés Aldana: aaldanaglz@ciencias.unam.mx
Felipe Navarrete: felipejnc@ciencias.unam.mx