Ministerio de Cultura y Educación Universidad Nacional de San Luis Facultad de Ingeniería y Ciencias Agropecuarias Departamento: Ingeniería Área: Automatización |
I - Oferta Académica | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
II - Equipo Docente | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
III - Características del Curso | |||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
IV - Fundamentación |
---|
Este curso trata sobre los aspectos principales de la Inteligencia Artificial (IA) y los Sistemas Inteligentes (SI). Un SI es un sistema que provee soluciones para problemas que son difíciles o poco práctico para resolver con los métodos tradicionales. Para ello, un SI utilizará en su diseño técnicas y arquitecturas adecuadas para lograr distintos grados de flexibilidad (reactividad, proactividad y sociabilidad), autonomía, adaptabilidad y aprendizaje. Para lograr estas capacidades el diseño de un SI debe involucrar aspectos tales como percepción, planificación y acción, representación de conocimiento y razonamiento, resolución de problemas y búsqueda, incertidumbre, utilidades y aprendizaje automático.
El enfoque adoptado en nuestro caso se basa en el concepto de agente inteligente. Desde esta perspectiva, el desarrollo de SI se centra en el análisis, diseño y construcción de agentes autónomos. Un agente es un sistema de software y/o máquina física provisto de sensores y efectores que le permiten interactuar directamente con un ambiente (virtual o físico). Un agente inteligente debería ser capaz de percibir su ambiente, y actuar racionalmente en pos de sus objetivos de diseño, interactuando cuando fuera necesario con otros agentes artificiales y/o humanos. El énfasis en este curso estará puesto en las aplicaciones de las técnicas de la IA y en los aspectos de ingeniería involucrados en el desarrollo de los SIs. En este contexto, los casos de estudio incluirán diversas áreas tales como los sistemas basados en conocimiento, optimización, sistemas bio-inspirados, agentes inteligentes, procesamiento de lenguaje natural, aprendizaje automático, minería de datos, robótica adaptativa inteligente, etc. |
V - Objetivos / Resultados de Aprendizaje |
---|
Comprender los conceptos fundamentales de la Inteligencia Artificial para determinar cómo los agentes perciben su entorno y actúan de manera racional en pos de sus objetivos de diseño considerando diferentes ámbitos de aplicación y actuando con pensamiento crítico y creativo.
Utilizar y adoptar las técnicas y herramientas necesarias para el análisis, diseño y construcción de agentes autónomos para la resolución de problemas mediante búsqueda, representación de conocimiento y razonamiento considerando su aplicación en problemas de ingeniería utilizando lenguaje de alto nivel de programación y efectuando un análisis crítico de las distintas técnicas estudiadas. Aplicar e Integrar algoritmos de aprendizaje basados en agentes inteligentes para la toma de decisiones en sistemas complejos considerando su aplicación en problemas de ingeniería utilizando lenguaje de alto nivel de programación. |
VI - Contenidos |
---|
Unidad Temática Nº 1. Introducción a la Inteligencia Artificial
Qué es la Inteligencia Artificial. Comportamiento humano vs. racional. Test de Turing. El agente racional. Historia de la IA. Aprendizaje Automático. Unidad Temática Nº 2. Agentes Inteligentes Agentes y entornos. Racionalidad. Aprendizaje y autonomía. Entorno de tareas. Propiedades de los entornos. Arquitecturas de agentes. Tipos de Agentes. Representaciones. Unidad Temática Nº 3. Resolución de problemas y búsqueda Agentes de resolución de problemas. Arboles de búsqueda. Métodos de búsqueda no informada. Búsqueda Informada. Búsqueda local y optimización. Unidad Temática Nº 4. Toma de decisiones Agentes basados en utilidad. Funciones de utilidad. Problemas de decisión secuencial. El enfoque MDP. Algoritmos para resolución de MDPs. Programación Dinámica. |
VII - Plan de Trabajos Prácticos |
---|
Resolución de problemas: Se entregarán guías de trabajos prácticos con ejercicios correspondientes a los temas desarrollados en las clases teóricas.
Los temas a desarrollar serán: 1- Agentes racionales. Desarrollo de ejercicios vinculados a aspectos básicos de la IA, agentes racionales, características de los ambientes y arquitecturas de agentes. 2- Resolución de problemas y búsqueda. Se definen formalmente distintos problemas como “problemas de estado único”. Se analiza y experimenta con distintas estrategias de búsqueda no informada e informada (heurística). También se presentan problemas de satisfacción de restricciones y se analizan y utilizan los métodos más conocidos para su resolución. 3- Toma de decisiones. Se definen formalmente problemas de ingeniería en términos de “Procesos de Markov” (MDP). Se analiza y experimenta con distintas estrategias para hallar una política óptima en el contexto de los MDP. Trabajo de laboratorio: Se realizarán trabajos de laboratorio relacionado a desarrollar algoritmos computacionales para la búsqueda de políticas en problemas complejos. Se deberá presentar un informe por cada laboratorio. Los temas a desarrollar serán: 1- Algoritmos para resolución de problemas de búsqueda. Se desarrollarán y se evaluarán algoritmos en lenguaje Python para resolver un problema mediante estrategias de búsqueda. 2- Algoritmos para hallar políticas óptimas en MDPs. Se desarrollarán y se evaluarán algoritmos en lenguaje Python para encontrar la solución óptima a un problema mediante estrategias de Programación Dinámica. |
VIII - Regimen de Aprobación |
---|
A - METODOLOGÍA DE DICTADO DEL CURSO:
Metodología de dictado y aprobación de la asignatura: Clases teóricas, prácticas y de laboratorio. Los contenidos teóricos y prácticos serán puestos a disposición de los estudiantes a través de la plataforma Google Classroom provista por la universidad. B - CONDICIONES PARA REGULARIZAR EL CURSO Asistencia al 80% de las clases teóricas. Asistencia al 70% de las clases prácticas. Asistencia al 80% de las clases de laboratorio. Aprobación del 100% de los trabajos prácticos de aula. C – RÉGIMEN DE APROBACIÓN CON EXÁMEN FINAL El alumno será evaluado en un examen final oral sobre los temas teóricos que solicite el tribunal. D – RÉGIMEN DE PROMOCIÓN SIN EXAMEN FINAL Asistencia al 80% de las clases teóricas. Asistencia al 70% de las clases prácticas. Asistencia al 80% de las clases de laboratorio. Aprobación del 100% de los trabajos prácticos de aula. Aprobación de los informes de laboratorio con nota mayor a 7. E – RÉGIMEN DE APROBACIÓN PARA ESTUDIANTES |
IX - Bibliografía Básica |
---|
[1] “Artificial Intelligence: A Modern Approach”. S. Russell y P. Norvig. Prentice Hall, 3 ed., 2010. Tipo: libro. Formato: digital. Disponibilidad: disponible en el área.
[2] “Artificial Intelligence: Foundations of Computational Agents”. D. Poole y A. Mackworth. Cambridge University Press, 2 [3] ed.,2017. Tipo: libro. Formato: digital. Disponibilidad: disponible en el área. |
X - Bibliografia Complementaria |
---|
[1] “Machine Learning”, Tom Mitchell, McGraw Hill, 1997. Tipo: libro. Formato: digital. Disponibilidad: disponible en el área.
[2] Alpaydin, E. Introduction to Machine Learning. MIT Press, 3 ed., 2014. Tipo: libro. Formato: digital. Disponibilidad: disponible en el área. [3] “Reinforcement Learning: An Introduction”. Sutton R. S. and A. G. Barto, MIT Press, Cambridge MA, 2 ed.,2018. Tipo: libro. Formato: digital. Disponibilidad: disponible en el área. |
XI - Resumen de Objetivos |
---|
Comprender los conceptos fundamentales de la Inteligencia Artificial.
Utilizar y adoptar las técnicas y herramientas necesarias para el análisis, diseño y construcción de agentes autónomos. Aplicar e Integrar algoritmos de aprendizaje basados en agentes inteligentes. |
XII - Resumen del Programa |
---|
Unidad Temática Nº 1. Introducción a la Inteligencia Artificial
Unidad Temática Nº 2. Agentes Inteligentes Unidad Temática Nº 3. Resolución de problemas y búsqueda Unidad Temática Nº 4. Toma de decisiones |
XIII - Imprevistos |
---|
Para el caso de medidas de fuerza que alteren sustancialmente el dictado de la asignatura, se implementarán sistemas de autoestudio y consultas mediante la utilización de plataformas on-line.
|
XIV - Otros |
---|
Aprendizajes Previos:
Diseñar soluciones algorítmicas a problemas de complejidad media y alta para su aplicación en la resolución de métodos numéricos y en problemas que requieran desarrollo de software, cumpliendo con las buenas prácticas de programación. Aplicar sentencias y bloques de programación para la codificación de algoritmos necesarios en los cursos posteriores y en su vida profesional, conociendo las reglas semánticas y sintácticas de lenguajes de programación determinados. Detalles de horas de la Intensidad de la formación práctica. Se deberán discriminar las horas totales con mayor detalle al explicitado en el cuadro inicial (Punto 3). La sumatoria de las horas deberá coincidir con el crédito horario total del curso explicitado en el campo “Cantidad de horas” del punto III. Cantidad de horas de Teoría: 30hs Cantidad de horas de Práctico Aula: 20hs Cantidad de horas de Práctico de Aula con software específico: 10hs Cantidad de horas de Formación Experimental: 30hs Cantidad de horas de Resolución Problemas Ingeniería con utilización de software específico: 0hs Cantidad de horas de Resolución Problemas Ingeniería sin utilización de software específico: 0hs Cantidad de horas de Diseño o Proyecto de Ingeniería con utilización de software específico: 0hs Cantidad de horas de Diseño o Proyecto de Ingeniería sin utilización de software específico: 0hs Aportes del curso al perfil de egreso: 1.1. Identificar, formular y resolver problemas. (Nivel 3) 2.1. Utilizar y adoptar de manera efectiva las técnicas, instrumentos y herramientas de aplicación. (Nivel 2) 2.2. Contribuir a la generación de desarrollos tecnológicos y/o innovaciones tecnológicas. (Nivel 2) 2.4. Aplicar conocimientos de las ciencias básicas de la ingeniería y de las tecnologías básicas. (Nivel 3) 2.5. Planificar y realizar ensayos y/o experimentos y analizar e interpretar resultados. (Nivel 2) 3.3. Manejar el idioma inglés con suficiencia para la comunicación técnica. (Nivel 3) 3.5. Aprender en forma continua y autónoma. (Nivel 3) |