Jerarquı́a Dinámica de Esquemas para la generación de comportamiento autónomo D. José Marı́a Cañas Plaza Tesis Doctoral Director: Dr. Vicente Matellán Olivera Tutor: Dr. Gregorio Fernández Fernández Contenidos 1/35 Contenidos 1. Introducción 2. Estado del arte 3. Jerarquı́a Dinámica de Esquemas (JDE) 4. Implementación 5. Experimentos 6. Conclusiones c 2003 GSyC-DIT Jerarquı́a Dinámica de Esquemas para la generación de comportamiento autónomo 1.- Introducción 2/35 1.- Introducción Robótica móvil Generar comportamiento autónomo Falta flexibilidad Tareas complejas ¿Problema tecnológico o teórico? c 2003 GSyC-DIT Jerarquı́a Dinámica de Esquemas para la generación de comportamiento autónomo 1.- Introducción (cont.) 3/35 Arquitectura La organización de las capacidades sensoriales, de procesamiento y de acción para conseguir un repertorio de comportamientos inteligentes interactuando con cierto entorno Repertorio de comportamientos Información desbordante, incierta Selección de acción, atención La arquitectura condiciona el comportamiento observable c 2003 GSyC-DIT Jerarquı́a Dinámica de Esquemas para la generación de comportamiento autónomo 1.- Introducción (cont.) 4/35 Objetivos Diseñar una arquitectura de control Analizar el estado del arte Evaluar la arquitectura propuesta Desarrollar una arquitectura software Generar un repertorio limitado de comportamientos c 2003 GSyC-DIT Jerarquı́a Dinámica de Esquemas para la generación de comportamiento autónomo 2.- Estado del arte 5/35 2.- Estado del arte Escuela deliberativa Escuela reactiva Sistemas basados en comportamientos Sistemas hı́bridos Etologı́a c 2003 GSyC-DIT Jerarquı́a Dinámica de Esquemas para la generación de comportamiento autónomo 2.- Estado del arte (cont.) 6/35 Escuela deliberativa Curso especı́fico de acción: planificación y ejecución Percepción objetiva y modelado del mundo Abstracción funcional Shakey [Nilsson,1969], Hilare [Giralt et al,1983], RCS [Albus,1993] Frágil y lento c 2003 GSyC-DIT Jerarquı́a Dinámica de Esquemas para la generación de comportamiento autónomo 2.- Estado del arte (cont.) 7/35 Escuela reactiva sensar actuar SENSORES ACTUADORES Interacción continua con el entorno, acción situada Percepción subsimbólica Autómatas, Pengi [Agre,1987], [Payton,1990] No escala c 2003 GSyC-DIT Jerarquı́a Dinámica de Esquemas para la generación de comportamiento autónomo 2.- Estado del arte (cont.) 8/35 Sistemas basados en comportamientos ... explorar deambular evitar obstáculo sensores actuadores Reactividad Subsunción: suprimir salidas y suplantar entradas [Brooks,1986], [Arkin,1989], [Maes,1989] No escala bien c 2003 GSyC-DIT Jerarquı́a Dinámica de Esquemas para la generación de comportamiento autónomo 2.- Estado del arte (cont.) 9/35 Sistemas hı́bridos CAPA DELIBERATIVA SECUENCIADOR CAPA REACTIVA SENSORES ACTUADORES Capa deliberativa: razonamiento simbólico Capa reactiva: procesos que se activan discrecionalmente 3T [Bonasso et al,1997], TCA [Simmons,1994], Saphira [Konolige,1998] Niveles fijos c 2003 GSyC-DIT Jerarquı́a Dinámica de Esquemas para la generación de comportamiento autónomo 3.- Jerarquı́a Dinámica de Esquemas 10/35 3.- Jerarquı́a Dinámica de Esquemas Hipótesis de partida Comportamiento = percepción y control Fragmentación en unidades (esquemas) ası́ncronas concurrentes - de percepción elaboran estı́mulos - de actuación toman decisiones La colección de esquemas se organiza en jerarquı́a c 2003 GSyC-DIT Jerarquı́a Dinámica de Esquemas para la generación de comportamiento autónomo 3.- Jerarquı́a Dinámica de Esquemas (cont.) 11/35 Esquemas Un esquema es un flujo de ejecución independiente, con un objetivo Iterativo Se puede activar y desactivar a voluntad Modulable a través de parámetros Esquemas perceptivos y de actuación Su funcionalidad se usa despertándolo y modulándolo c 2003 GSyC-DIT Jerarquı́a Dinámica de Esquemas para la generación de comportamiento autónomo 3.- Jerarquı́a Dinámica de Esquemas (cont.) 12/35 Esquemas perceptivos ACTIVACIÓN y PARÁMETROS de MODULACIÓN ESQUEMA PERCEPTIVO SENSORES ESTÍMULO ESTÍMULO ESTÍMULO Producen estı́mulos y los mantienen actualizados (anclados) Simples lecturas sensoriales, transformaciones más elaboradas o depender de otros estı́mulos menos abstractos Estados: dormido o activo c 2003 GSyC-DIT Jerarquı́a Dinámica de Esquemas para la generación de comportamiento autónomo 3.- Jerarquı́a Dinámica de Esquemas (cont.) 13/35 Esquemas de actuación ACTIVACIÓN y PARÁMETROS de MODULACIÓN ESQUEMA de ACTUACIÓN ESTÍMULO E.PERCEPTIVO E.ACTUACIÓN E.ACTUACIÓN ESTÍMULO Toman decisiones de actuación para conseguir o mantener un objetivo Su salida pueden ser comandos a los actuadores o la activación y modulación de otros esquemas hijos Estados: dormido, alerta, preparado o activo c 2003 GSyC-DIT Jerarquı́a Dinámica de Esquemas para la generación de comportamiento autónomo 3.- Jerarquı́a Dinámica de Esquemas (cont.) 14/35 Jerarquı́a Los esquemas despiertos se ejecutan ası́ncrona y concurrentemente Los esquemas se estructuran en jerarquı́a, donde hay padres e hijos Se construye y reconfigura dinámicamente Es especı́fica de cada comportamiento El número de niveles depende de la complejidad de la tarea c 2003 GSyC-DIT Jerarquı́a Dinámica de Esquemas para la generación de comportamiento autónomo 3.- Jerarquı́a Dinámica de Esquemas (cont.) 15/35 Selección de acción 1 3 10 11 5 4 12 13 6 14 2 7 15 16 8 9 17 18 Distribución: una competición por nivel El padre determina el paso de dormido a alerta La situación determina el paso de alerta a preparado De preparado a activo se resuelve con un arbitraje c 2003 GSyC-DIT Jerarquı́a Dinámica de Esquemas para la generación de comportamiento autónomo 3.- Jerarquı́a Dinámica de Esquemas (cont.) 16/35 ESQ 5 SOLAPE de CONTROL ESQ 5 ESQ 6 AUSENCIA de CONTROL ESQ 7 Precondiciones configuran regiones de activación Arbitraje explı́cito en colisiones y vacı́os de control c 2003 GSyC-DIT Jerarquı́a Dinámica de Esquemas para la generación de comportamiento autónomo 3.- Jerarquı́a Dinámica de Esquemas (cont.) 17/35 Suma aditiva de estı́mulos Estímulos externos Estímulos internos Motivación interna Umbral de activación Activación Varios estı́mulos pueden disparar las precondiciones Inspiración etológica: percepción gestáltica c 2003 GSyC-DIT Jerarquı́a Dinámica de Esquemas para la generación de comportamiento autónomo 3.- Jerarquı́a Dinámica de Esquemas (cont.) 18/35 Monitorización continua El padre monitoriza iterativamente los resultados de sus hijos Puede cambiar su modulación o cambiar de hijos cuando le convenga Modulación continua con parámetros No descomposición funcional c 2003 GSyC-DIT Jerarquı́a Dinámica de Esquemas para la generación de comportamiento autónomo 3.- Jerarquı́a Dinámica de Esquemas (cont.) 19/35 Jerarquı́a como predisposición ir a punto odómetros para avanza sigue pared sónares alerta 6= activo Influencia de etologı́a: estı́mulos clave, reflejos encadenados... Secuencias flexibles c 2003 GSyC-DIT Jerarquı́a Dinámica de Esquemas para la generación de comportamiento autónomo 3.- Jerarquı́a Dinámica de Esquemas (cont.) 20/35 Percepción situada sigue−pelota Identificación pelota Corrección proporcional Coordinación entre percepción y actuación Carácter subsidiario de la percepción Sólo se buscan los estı́mulos que interesan (atención) c 2003 GSyC-DIT Jerarquı́a Dinámica de Esquemas para la generación de comportamiento autónomo 3.- Jerarquı́a Dinámica de Esquemas (cont.) 21/35 Percepción estructurada puertas jambas−3D sónares jambas visuales bordes busca puerta ir a punto imagen Jerarquı́a de estı́mulos Interpretación y contexto de percepción Percepción activa c 2003 GSyC-DIT Jerarquı́a Dinámica de Esquemas para la generación de comportamiento autónomo 4.- Implementación 22/35 4.- Implementación Cliente controlador JDE 3 10 5 4 11 12 1 6 13 Cliente monitor 2 7 14 15 8 18 19 20 21 22 23 24 25 26 27 28 9 16 17 INTERFAZ de MENSAJES ACCESO REMOTO servidor OTOS servidor OCULO driver drivers ACCESO LOCAL driver HW−ROBOT motores c 2003 GSyC-DIT sónares odómetros cámara pan−tilt Jerarquı́a Dinámica de Esquemas para la generación de comportamiento autónomo 4.- Implementación (cont.) c 2003 GSyC-DIT 23/35 Jerarquı́a Dinámica de Esquemas para la generación de comportamiento autónomo 4.- Implementación (cont.) 24/35 Esquemas como hebras Ejecución iterativa en bucle infinito Pausa controlada Estı́mulos y parámetros de modulación como variables compartidas Función de arbitraje explı́cito Lista de hermanos Multiplataforma Pthreads, variables condición, cerrojos c 2003 GSyC-DIT Jerarquı́a Dinámica de Esquemas para la generación de comportamiento autónomo 5.- Experimentos 25/35 5.- Experimentos c 2003 GSyC-DIT Jerarquı́a Dinámica de Esquemas para la generación de comportamiento autónomo 5.- Experimentos (cont.) 26/35 Actuación: taxias ESQUEMA PERCEPTIVO Identificación pared Cámara local ESQUEMA MOTRIZ frontera segmentada Control basado en casos Motores Separación entre percepción y actuación Comportamientos sigue-pared, sigue-bola Comportamiento avanza-rápido-sorteando-obstáculos c 2003 GSyC-DIT Jerarquı́a Dinámica de Esquemas para la generación de comportamiento autónomo 5.- Experimentos (cont.) 27/35 Actuación: jerarquı́as simples ir a punto odómetros para avanza sigue pared sónares Comportamiento ir-a-punto Comportamiento saque-de-banda c 2003 GSyC-DIT Jerarquı́a Dinámica de Esquemas para la generación de comportamiento autónomo 5.- Experimentos (cont.) 28/35 Actuación: jerarquı́as complejas delantero volver atacar AvSensor avanzar driblar fase1 c 2003 GSyC-DIT chutar fase2 pasar acercarse a bola mira bola marcar sensor motor sigue bola Jerarquı́a Dinámica de Esquemas para la generación de comportamiento autónomo 5.- Experimentos (cont.) 29/35 Actuación: jerarquı́as complejas c 2003 GSyC-DIT Jerarquı́a Dinámica de Esquemas para la generación de comportamiento autónomo 5.- Experimentos (cont.) 30/35 Percepción: ocupación del entorno segmentos rejilla dinámica sónares c 2003 GSyC-DIT láser odómetros táctiles Jerarquı́a Dinámica de Esquemas para la generación de comportamiento autónomo 5.- Experimentos (cont.) 31/35 Anclaje, dinamismo c 2003 GSyC-DIT Jerarquı́a Dinámica de Esquemas para la generación de comportamiento autónomo 5.- Experimentos (cont.) 32/35 Percepción estructurada: puertas puertas jambas−3D sónares jambas visuales bordes imagen c 2003 GSyC-DIT Jerarquı́a Dinámica de Esquemas para la generación de comportamiento autónomo 6.- Conclusiones 33/35 6.- Conclusiones Diseño de una arquitectura escalable, JDE Análisis crı́tico del estado del arte Comparativa de JDE con otras arquitecturas Validación de la arquitectura con experimentos reales c 2003 GSyC-DIT Jerarquı́a Dinámica de Esquemas para la generación de comportamiento autónomo 6.- Conclusiones (cont.) 34/35 Aportes Jerarquı́a permite escalar en complejidad Incrementalidad aditiva Inclusión de la percepción en la arquitectura Enlace entre robótica y etologı́a c 2003 GSyC-DIT Jerarquı́a Dinámica de Esquemas para la generación de comportamiento autónomo 6.- Conclusiones (cont.) 35/35 Limitaciones No hay aprendizaje, ni memoria Hay que anticipar todos los casos Lı́neas futuras Mejorar la implementación (p.e instancias de esquemas) Realizar más experimentos La etologı́a puede aportar mucho (p.e. variables internas) c 2003 GSyC-DIT Jerarquı́a Dinámica de Esquemas para la generación de comportamiento autónomo Jerarquı́a Dinámica de Esquemas para la generación de comportamiento autónomo D. José Marı́a Cañas Plaza Tesis Doctoral Director: Dr. Vicente Matellán Olivera Tutor: Dr. Gregorio Fernández Fernández