C291-78 Tópicos Avanzados: Inteligencia Computacional I Instructoras (en orden alfabético) Dra. Ma. del Pilar Gómez Gil Dra. Alicia Morales Reyes Primavera 2016 pgomez@inaoep.mx V: 20-Ene-16 (c) 2016. P. Gómez-Gil, INAOE 1 Objetivo del curso Introducir a estudiantes de posgrado en los tópicos fundamentales relacionados a la Inteligencia Computacional (IC), así como en sus principales aplicaciones (c) 2016. P. Gómez-Gil, INAOE 2 Inteligencia Computacional Incluye conceptos, paradigmas, algoritmos e implementaciones de sistemas que exhiben un comportamiento “inteligente” al aplicarse en sistemas complejos. Los algoritmos usados están inspirados en sistemas biológicos, e incluyen principalmente las áreas de redes neuronales artificiales, sistemas difusos y algoritmos evolutivos. (c) 2016. P. Gómez-Gil, INAOE 3 ¿Que es “inteligencia”? Según el diccionario Merriam-Webster: “Es la habilidad de aprender, entender o enfrentar nuevas situaciones; Es la habilidad de aplicar conocimiento para manipular el medio ambiente; Es la habilidad de pensar de manera abstracta; puede medirse con criterios objetivos obtenidos de pruebas. (c) 2016. P. Gómez-Gil, INAOE 4 Página de recursos del curso: http://ccc.inaoep.mx/~pgomez/cursos/IC-I/ (c) 2016. P. Gómez-Gil, INAOE 5 Dr. James Bezdek, en su visita al INAOE, en Febrero del 2012 (c) 2016. P. Gómez-Gil, INAOE 6 Dr. Haykin y Dra. Gómez en el MICAI 2008 (c) 2016. P. Gómez-Gil, INAOE 7 Método de trabajo Curso impartido en 2 etapas, involucrando a los diferentes instructores. Dependiendo de la etapa y el tema, habrá exposiciones en clase de los conceptos fundamentales de cada tema, se discutirán las dudas en clase y se propondrán temas o artículos específicos para revisión del estado del arte. Se desarrollarán tareas y proyectos de investigación asignados por los instructores (c) 2016. P. Gómez-Gil, INAOE 8 Contenido del curso (1/3) disponible en: http://ccc.inaoep.mx/~pgomez/cursos/IC-I/temario.pdf No. de SEMANA del Periodo TEMA 1 I. Introducción (1 sesión) a) Los sistemas inteligentes. b) La inteligencia computacional c) Definiciones básicas d) Ejemplos de aplicaciones 1½ II. REDES NEURONALES (11 sesiones): 1. Fundamentos de las RNA (2 sesiones) a) Organización cerebral b) Tipos de arquitecturas neuronales c) Tipos de entrenamiento 2. Redes alimentadas hacia adelante (3 sesiones) a) El modelo más simple: perceptron b) Redes de perceptrones de un nivel c) Redes de perceptrones de varios niveles d) El algoritmo de retro-propagación 3. El modelo básico de Hopfield (2 sesiones, 3 hrs) a) Modelo general de recurrencia a) Entrenamiento 4. Mapas auto-organizados SOM (4 sesiones, 6 hrs) a) Arquitecturas (c) 2016. P. Gómez-Gil, INAOE 9 Contenido del curso (2/3) No. de SEMANA del Periodo TEMA PRIMER PARCIAL (1 hr) a) a) 7 Entrenamiento Ejemplos III. SISTEMAS DIFUSOS: (3 sesiones, 4.5 hrs) 1. Teoría difusa 2. Sistemas difusos c) Sistemas expertos difusos d) Aplicaciones diversas Examen área RNA y Lógica Difusa (1 sesión, 1.5 hrs) (c) 2016. P. Gómez-Gil, INAOE 10 Contenido del curso (3/3) No. de SEMANA del Periodo 9 TEMA IV. ALGORITMOS EVOLUTIVOS (6 semanas, 9 hrs): 1. Introducción al cómputo evolutivo (1.5 hrs) 2. Algoritmos genéticos (3 hrs) 3. Estrategias evolutivas (1.5 hrs) 4. Programación evolutiva (1.5 hrs) 5. Programación genética (3 hrs) 6. Otros métodos de optimización heurística (1.5 hrs) Examen área Algoritmos Evolutivos IV. ALGORITMOS EVOLUTIVOS (6 semanas, 9 hrs): (c) 2016. P. Gómez-Gil, INAOE 11 Evaluación del curso Cada parte será evaluada por el instructor(a) involucrado(a). La calificación final está dada por el promedio de estas evaluaciones. Por la parte de Redes Neuronales y Lógica difusa, la evaluación estará distribuida como: Examen 1 ………… 30% Examen 2 …..……. 30% Tareas/proyectos.... 40% (c) 2016. P. Gómez-Gil, INAOE 12 Código de Ética Se espera que el/la estudiante observe en todas las actividades del curso, el comportamiento ético adecuado a cualquier profesional de ingeniería o ciencias. Como un ejemplo de Código de Ética consultar el de la IEEE (www.ieee.org) o de la ACM (www.acm.org). (c) 2016. P. Gómez-Gil, INAOE 13 Un poco sobre Inteligencia Computacional (IC)… (c) 2016. P. Gómez-Gil, INAOE 14 Comportamiento “inteligente” (Kruse et al. 2013) Algunas aplicaciones de sistemas complejos requieren apoyar la toma de decisiones, controlar procesos, reconocer e interpretar patrones, o maniobrar de manera autónoma vehículos o robots en un ambiente desconocido (c) 2016. P. Gómez-Gil, INAOE 15 Sistemas inteligentes (Kruse et al. 2013) Requieren simular el pensamiento inteligente y realizar acciones en el campo en que son aplicados Su calidad depende fuertemente de la manera en que se representa el conocimiento La IC incluye aspectos teóricos (¿Cómo y por qué trabajan los sistemas inteligentes?) y prácticos (¿Dónde y cuándo se pueden usar estos sistemas?) (c) 2016. P. Gómez-Gil, INAOE 16 Inteligencia Artificial e inteligencia computacional Originalmente, el conocimiento de los sistemas artificiales inteligentes fue representado por modelos simbólicos. Por ejemplo, representaciones top-down, sistemas expertos basados en reglas, probadores automáticos de teoremas y técnicas de investigación de operaciones (planeación, “scheduling”) (c) 2016. P. Gómez-Gil, INAOE 17 Inteligencia Artificial e inteligencia computacional (cont.) La representación simbólica funciona bien en muchos casos, pero no es fácilmente escalable; los errores/complicaciones pequeñas crecen exponencialmente (Kruse et al. 2013) Aunque esa representación obtiene soluciones óptimas, muchas veces no puede aplicarse en la práctica La inteligencia computacional (IC) permite trabajar con sistemas imprecisos y encontrar soluciones en tiempos razonables, aunque no exactas (c) 2016. P. Gómez-Gil, INAOE 18 http://cis.ieee.org/ (c) 2016. P. Gómez-Gil, INAOE 19 Inteligencia computacional (cont.) Cubre una gran cantidad de modelos, pero los mas comunes incluyen: 1) Sistemas inspirados en la naturaleza. Ejemplos de estos son las redes neuronales artificiales y los algoritmos evolutivos 2) Sistemas que representan conocimiento incierto, vago o incompleto. Ejemplos de éstos son los sistemas difusos y las redes bayesianas Es muy común combinar las soluciones, creando sistemas híbridos, ejemplo sistemas neurodifusos. (c) 2016. P. Gómez-Gil, INAOE 20 Redes Neuronales Artificiales Inspiradas en neurociencia Formados por un número grande de procesadores simples que trabajan en paralelo y se conectan entre sí Simulan al cerebro (c) 2016. P. Gómez-Gil, INAOE 21 Algoritmos Evolutivos Se basan en ideas de la evolución biológica, donde los algoritmos se adaptan a las condiciones del medio ambiente después de varias generaciones Son un tipo de meta-heurística (secuencias de pasos abstractos aplicables a una o mas descripciones de problemas arbitrarios) Se dirigen a problemas de optimización (c) 2016. P. Gómez-Gil, INAOE 22 Sistemas difusos Representan conocimiento vago dado por un experto, usando lógica difusa y teoría de conjuntos difusos Pueden hacer inferencias basadas en esta representación generando métodos de razonamiento aproximado Se aplican en ingeniería de control pues en muchas aplicaciones es impractico o imposible modelar a los sistemas de una manera precisa y completa (c) 2016. P. Gómez-Gil, INAOE 23 Redes Bayesianas Son modelos gráficos probabilistas que representan variables random y sus dependencias condicionales, usando grafos dirigidos acíclicos Pueden representar conocimiento vago Pueden hacer inferencias basadas en nueva información (c) 2016. P. Gómez-Gil, INAOE 24 Mapa Conceptual de Inteligencia Computacional hace 10 años (Eck et al., 2006) (c) 2016. P. Gómez-Gil, INAOE 25 Mapa conceptual Simplificado [Eck et al 2006] (c) 2016. P. Gómez-Gil, INAOE 26 Referencias R. Kruse, C. Moewes, C. Borgelt, M. Steinbrecher, F. Klawonn, P. Held. Computational Intelligence, a methodological introduction. Springer: London, 2013. Eck, J. et al .”Visualizing the Computational Intelligence field,” IEEE Computational Intelligence Magazine Nov. 2006. (c) 2016. P. Gómez-Gil, INAOE 27