Créditos
6
Tipos
Obligatoria
Requisitos
Esta asignatura no tiene requisitos
, pero tiene capacidades previas
Departamento
ESAII
Los alumnos de la asignatura aprenderán a aplicar técnicas avanzadas de inteligencia artificial para resolver problemas de robótica en entornos complejos y dinámicos. Esto incluye la planificación de tareas, movimientos y rutas, el razonamiento sobre las tareas a realizar, el espacio, la gestión de la incertidumbre, la acomodación entre objetos, la percepción y otras habilidades avanzadas.
Profesorado
Responsable
- Isiah Zaplana Agut (isiah.zaplana@upc.edu)
Otros
- Anais Garrell Zulueta ( anais.garrell@upc.edu)
Horas semanales
Teoría
2
Problemas
0
Laboratorio
2
Aprendizaje dirigido
0
Aprendizaje autónomo
6
Competencias
Transversales
Básicas
Específicas
Genéricas
Objetivos
-
Aprender a programar robots y diseñar aplicaciones robóticas.
Competencias relacionadas: CE24, CE25, CE26, CG4, CG6, CG8, CG9, CT1, CT5, CB3, CB5, CE15, CE17, -
Ser potencial d'emetre judicis que incloguin una reflexió sobre temes rellevants d'índole social, científica o ètica, relacionats amb la robòtica actual i les seves aplicacions.
Competencias relacionadas: CE28, CG5, CG6, CG7, CG8, CT2, CT3, CT8, -
Aprendre a coordinar accions entre robots.
Competencias relacionadas: CG3, CG5, CG6, CT3, CT5, CE15, CE17, -
Ser capaz de fusionar distintas fuentes de información para obtener, formalizar y representar el entorno físico de forma computable para la resolución de problemas.
Competencias relacionadas: CE24, CE25, CG3, CG5, CG6, CG8, CT2, CT5, CB3, CB5, CE17, -
Aplicación de técnicas de Visión por Ordenador a Sistemas Robóticos
Competencias relacionadas: CE24, CE25, CE26, CG4, CG5, CG6, CT5, CE15, -
Aplicación de técnicas de Inteligencia Artificial a Sistemas Robóticos
Competencias relacionadas: CE24, CE26, CE28, CG4, CG5, CG9, CT3, CT5, CE15, CE17, -
Creación de sistemas de interacción entre robots y humanos
Competencias relacionadas: CE24, CE25, CE26, CE28, CG3, CG4, CG5, CG6, CG7, CG8, CG9, CT1, CT3, CT5, CT8, CE15, CE17,
Contenidos
-
Introducción
Se repasarán los contenidos que se alcanzaron en la asignatura anterior Introducción a la robótica. -
Introducción a la planificación de movimientos -- El espacio de configuraciones.
Planificación de trayectorias versus planificación de movimientos. Cinemática directa e inversa. Definición geométrica y topológica del espacio de configuraciones de un robot manipulador. -
Soluciones al problema de la planificación de movimientos basadas en campos de potencial.
Discretización del espacio de configuraciones de un robot manipulador. Campos de potencial repulsivos y atractivos. Funciones sin mínimos locales: funciones de navegación y funciones armónicas. -
Soluciones al problema de la planificación de movimientos basados ¿¿en muestreo.
Tipos de muestreo (random, Halton, SDK, etc.). Métodos basados ¿¿en mapas de carreteras, Probabilistic Road Maps (PRMs), y árboles de exploración, Randomly Exploring Rapid Trees (RRTs) y su aplicación a problemas de planificación de movimientos. Mejoras de los planificadores básicos (PRM con muestreo gaussiano, RRT-CONNECT, RRT*). -
Planificación de tareas.
Planificación de movimientos teniendo en cuenta las restricciones impuestas por las tareas. Modelización de trabajos con grafos dirigidos. Lenguaje STRIPS y PDDLs. Algoritmos de búsqueda y búsqueda guiadas por heurísticas. Algoritmo FF. -
Robótica cognitiva.
Ontologías. Tipos de ontologías y razonamiento basado en ontologías. Árboles de comportamiento, Behaviour Trees (BTs). -
Cinemática de robots móviles.
Cinemática diferencial, restricciones diferenciales impuestas por las ruedas y el concepto de robots holonómicos y no holonómicos (repaso). Cinemática diferencial, relación entre la velocidad de una plataforma robótica y las restricciones diferenciales impuestas por una sola rueda, cinemática diferencial directa e inversa para un robot móvil específico con ruedas. -
Dinámica de robots móviles.
Dinámica de un robot móvil. Modelización de la dinámica. -
Percepción de los robots móviles.
Tipo de sensores. Propagación del error. Visual Servoing. -
Localización de robots móviles.
Introducción a la ubicación basada en mapas. Repaso de la teoría de probabilidades. Enfoque de Markov. Enfoque del filtro de Kalman. El problema de SLAM. SLAM-EKF, FastSLAM, GraphSlam. -
Planificación de rutas para robot móviles.
Introducción, representaciones, evitación de colisiones. Campos potenciales. Ejemplo resuelto. Construcción de grafos, búsqueda en grafos. Conceptos aplicados a robótica móvil.
Actividades
Actividad Acto evaluativo
Repaso de los contenidos de la asignatura "Introducció a la Robòtica".
Se repasarán los contenidos que se alcanzaron en la asignatura anterior "Introducció a la Robòtica".Objetivos: 2
Contenidos:
Teoría
1h
Problemas
0h
Laboratorio
0h
Aprendizaje dirigido
0h
Aprendizaje autónomo
4h
Introducción a la planificación de movimientos -- El espacio de configuraciones.
Planificación de trayectorias versus planificación de movimientos. Cinemática directa e inversa. Definición geométrica y topológica del espacio de configuraciones de un robot manipulador.Objetivos: 2 4
Contenidos:
Teoría
1h
Problemas
0h
Laboratorio
2h
Aprendizaje dirigido
0h
Aprendizaje autónomo
6h
Soluciones al problema de la planificación de movimientos basadas en campos de potencial.
Discretización del espacio de configuraciones de un robot manipulador. Campos de potencial repulsivos y atractivos. Funciones sin mínimos locales: funciones de navegación y funciones armónicas.Objetivos: 2 4
Contenidos:
Teoría
2h
Problemas
0h
Laboratorio
2h
Aprendizaje dirigido
0h
Aprendizaje autónomo
6h
Soluciones al problema de la planificación de movimientos basados ¿¿en muestreo.
Tipos de muestreo (random, Halton, SDK, etc.). Métodos basados ¿¿en mapas de carreteras, Probabilistic Road Maps (PRMs), y árboles de exploración, Randomly Exploring Rapid Trees (RRTs) y su aplicación a problemas de planificación de movimientos. Mejoras de los planificadores básicos (PRM con muestreo gaussiano, RRT-CONNECT, RRT*).Objetivos: 2 4
Contenidos:
Teoría
4h
Problemas
0h
Laboratorio
4h
Aprendizaje dirigido
0h
Aprendizaje autónomo
12h
Planificación de tareas.
Planificación de movimientos teniendo en cuenta las restricciones impuestas por las tareas. Modelización de trabajos con grafos dirigidos. Lenguaje STRIPS y PDDLs. Algoritmos de búsqueda y búsqueda guiadas por heurísticas. Algoritmo FF.Objetivos: 1 2 3 4 6
Contenidos:
Teoría
4h
Problemas
0h
Laboratorio
4h
Aprendizaje dirigido
0h
Aprendizaje autónomo
8h
Cinemática de robots móviles.
Cinemática diferencial, restricciones diferenciales impuestas por las ruedas y el concepto de robots holonómicos y no holonómicos (repaso). Cinemática diferencial, relación entre la velocidad de una plataforma robótica y las restricciones diferenciales impuestas por una sola rueda, cinemática diferencial directa e inversa para un robot móvil específico con ruedas.Objetivos: 1 2 3 6
Contenidos:
Teoría
2h
Problemas
0h
Laboratorio
2h
Aprendizaje dirigido
0h
Aprendizaje autónomo
10h
Dinámica de robots móviles.
Dinámica de un robot móvil. Modelización de la dinámica.
Teoría
2h
Problemas
0h
Laboratorio
2h
Aprendizaje dirigido
0h
Aprendizaje autónomo
6h
Percepción de los robots móviles.
Tipo de sensores. Propagación del error. Visual Servoing.
Teoría
4h
Problemas
0h
Laboratorio
4h
Aprendizaje dirigido
0h
Aprendizaje autónomo
8h
Localización de robots móviles.
Introducción a la ubicación basada en mapas. Repaso de la teoría de probabilidades. Enfoque de Markov. Enfoque del filtro de Kalman. El problema de SLAM. SLAM-EKF, FastSLAM, GraphSlam.
Teoría
4h
Problemas
0h
Laboratorio
4h
Aprendizaje dirigido
0h
Aprendizaje autónomo
12h
Planificación de rutas para robot móviles.
Introducción, representaciones, evitación de colisiones. Campos potenciales. Ejemplo resuelto. Construcción de grafos, búsqueda en grafos. Conceptos aplicados a robótica móvil.
Teoría
2h
Problemas
0h
Laboratorio
2h
Aprendizaje dirigido
0h
Aprendizaje autónomo
10h
Metodología docente
- Las clases teóricas se complementarán con la puesta en práctica sobre PC de las técnicas expuestas.- En las clases de laboratorio se resolverán problemas reales de visión por computador.
- Se plantearán problemas de complejidad superior que el alumno tendrá que resolver en casa.
Método de evaluación
Cualquier acto de fraude académico, plagio o uso o mera tenencia al alcance de medios no autorizados en cualquier actividad de
evaluación comportará la calificación de cero (0) en la prueba o entrega afectada. Además, de acuerdo con la normativa de la
Universidad, la posible derivación de los hechos para la apertura de un expediente disciplinario implicará que la asignatura quede en
el estado provisional de "pendiente de evaluación" hasta la resolución del expediente. La gestión de estas incidencias se lleva a cabo
de acuerdo con el Marco de actuación para la integridad académica en la evaluación de la UPC.
Habrá un primer examen parcial (P1), que tendrá un peso del 35 % de la nota final, y un examen final (EF), con un peso del 65 %.La nota final se calculará según la siguiente fórmula:
NF = 0,35 · NP1 + 0,65 · NEF
donde NP1 es la nota del primer parcial y NEF la nota del examen final.
De manera excepcional, el examen final podrá sustituirse por un segundo parcial (P2) y por la evaluación de las prácticas finales (PF). En este caso, el primer parcial tendrá un peso del 35 %, el segundo parcial del 35 % y las prácticas finales del 30 %.
Esta modalidad alternativa solo se aplicará si el estudiante cumple satisfactoriamente las siguientes condiciones: asistir a las sesiones prácticas, salvo causa mayor debidamente justificada; hacer un uso responsable de las herramientas de inteligencia artificial generativa; y mantener una actitud adecuada, así como un uso correcto de los laboratorios y recursos docentes.
En este supuesto, la nota final se calculará de la siguiente manera:
NF = 0,35 · NP1 + 0,35 · NP2 + 0,30 · NPF
donde NP1 es la nota del primer parcial, NP2 la nota del segundo parcial y NPF la nota de las prácticas finales entregadas.
La aplicación de esta modalidad alternativa quedará sujeta al cumplimiento satisfactorio de todos los requisitos anteriores.
Solo podrán presentarse a la reevaluación aquellas personas que, habiéndose presentado a los exámenes, no los hayan superado. La nota máxima que se podrá obtener en la reevaluación será un 7.
Bibliografía
Básico
-
Principles of robot motion : theory, algorithms, and implementation
- Choset, Howie M,
MIT Press,
2005.
ISBN: 0262033275
https://ebookcentral-proquest-com.recursos.biblioteca.upc.edu/lib/upcatalunya-ebooks/detail.action?pq-origsite=primo&docID=3339140 -
Robotics : modelling, planning and control
- Siciliano, Bruno,
Springer,
cop. 2010.
ISBN: 1-84628-642-5
https://link-springer-com.recursos.biblioteca.upc.edu/book/10.1007/978-1-84628-642-1 -
Introduction to autonomous mobile robots
- Siegwart, Roland; Nourbakhsh, Illah Reza; Scaramuzza, Davide,
MIT Press,
2011.
ISBN: 9780262015356
https://ebookcentral-proquest-com.recursos.biblioteca.upc.edu/lib/upcatalunya-ebooks/detail.action?pq-origsite=primo&docID=3339191 -
Introduction to AI robotics
- Murphy, R.R,
The MIT Press,
2019.
ISBN: 9780262348157
https://ebookcentral-proquest-com.recursos.biblioteca.upc.edu/lib/upcatalunya-ebooks/detail.action?pq-origsite=primo&docID=6340541
Capacidades previas
Área de Matemáticas* Conocer y saber aplicar el concepto de derivada y derivada parcial.
* Conocer los métodos elementales de representación gráfica de funciones (asíntotas, máximos, mínimos, ...).
* Conocer las propiedades elementales de las funciones trigonométricas.
* Conocer los conceptos básicos de manipulación y operación con matrices.
Área de Programación y Estructura de Datos
* Saber especificar, diseñar e implementar algoritmos sencillos con un lenguaje de programación imperativo.
* Saber construir programas correctos, eficientes y estructurados.
* Conocer los conceptos de lenguajes interpretados y lenguajes compilados.
* Conocer los algoritmos de búsqueda en estructuras de datos (tablas, listas, árboles, ...).
Área de Arquitectura y Tecnología de Computadores
* Conocer a nivel funcional las diferentes puertas lógicas.
* Saber analizar e implementar sistemas lógicos combinacionales y secuenciales simples.
* Conocer la estructura básica de un computador.
* Conocer el subsistema de entrada/salida e interrupciones del computador.
Área de Robótica
* Conocimiento de ROS.
* Conocimiento de Matlab.
* Conocimiento de la cinemática básica de un robot móvil y un robot manipulador-