1 Tema 6: Programación L. Enrique Sucar Marco López ITESM CuernavacaRobótica Inteligente Tema 6: Programación L. Enrique Sucar Marco López ITESM Cuernavaca
2 Programación Robots Arquitectura Planeación Modelado espacio sensoresactuadores Control Programación bajo nivel
3 Programación Robots Repaso arquitecturas Programación bajo nivelIntroducción a control Modelado del espacio Planeación de trayectorias Prototipo terminado Concurso México
4 Repaso: Arquitecturas de RobotsArquitecturas deliberativas Arquitecturas reactivas Arquitecturas híbridas
5 Arquitectura “organización de la generación de acciones a partir de las percepciones del robot” “arreglo de módulos de software para un robot móvil.”
6 Arquitecturas básicasArquitectura deliberativa Arquitectura reactiva sensores actuadores
7 Arquitectura deliberativaBasada en el paradigma de sensa-planea-actua (SPA): Se tiene un modelo completo (mapa) del ambiente Se construye un plan de acción para realizar la tarea basado en el modelo Se ejecuta el plan
8 Arquitectura deliberativaSensado Modelo del mundo Plan Control Ejecu- ción
9 Ejemplo: enfoque deliberativoConstruir mapa del ambiente, incluyendo obstáculos y meta Generar un plan para ir de la posición inicial a la meta evitando los obstáculos Ejecutar el plan
10 Arquitectura deliberativaVentajas: El tener un modelo del ambiente permite optimizar las acciones para obtener el “mejor” plan Limitaciones: Necesidad de un modelo preciso del ambiente Altos requerimientos de cómputo y memoria Dificultad de operar en un mundo dinámico o desconocido Reacción “lenta” a situaciones imprevistas
11 Arquitectura ReactivaEn el enfoque reactivo hay una conexión directa de percepción a acción sin necesidad de un modelo del mundo Normalmente se considera una serie de niveles de comportamiento que realizan diferentes comportamientos en forma “paralela” (subsumtion architecture)
12 Arquitectura basada en ComportamientoPlanear Explorar sensores actuadores Deambular Evitar objetos
13 Manejo de Conflictos Al existir varios módulos en paralelo pueden existir conflictos, que se resuelven dando prioridades a los diferentes comportamientos El comportamiento de mayor prioridad “suprime” los otros comportamientos Deambular Evitar objetos motores
14 Ejemplo: enfoque reactivoBuscar luz Ir a la luz Evitar objetos motores
15 Arquitectura ReactivaVentajas: Bajo requerimiento de cómputo, respuesta rápida Facilidad de desarrollo modular No requiere un modelo del mundo Limitaciones: Difícil de extender a tareas complejas Limitaciones sensoriales pueden ocacionar problemas al no contar con un modelo No garantiza la mejor solución (óptimo)
16 Arquitecturas HíbridasCombinación de arquitecturas deliberativas y reacticas que intentan aprovechar ventajas de ambas Ejemplos: Arquitecturas jerárquicas (3 capas) Arquitecturas de pizarrón (blackboard) Arquitecturas probabilísticas
17 Arquitectura de 3 capas Tres componentes básicos:Capa de habilidades: Mecanismo de control reactivo (controlador) Capa de secuenciación: Mecanismo de ejecución de plan (secuenciador) Capa de planeación: Mecanismo deliberativo (deliberador) El secuenciador selecciona los mecanismos básicos de la capa de habilidades en base al plan de la capa de planeación
18 Arquitectura de 3 capas: ejemploPlaneador Secuenciador avanzar sin chocar girar ir a luz sensores actuadores
19 Arquitectura de PizarrónConjunto de módulos o procesos que interactuan mediante un espacio de información común llamado pizarrón (blackboard) Cada módulo implemente una función específica y en conjunto todos realizar la tarea Todos los módulos pueden ver la información en el pizarrón y actuan en forma oportunística, de acuerdo al que más pueda aportar en ese momento (coordinador)
20 Arquitectura de PizarrónObtener info. sensores PIZARRÓN Ir a la meta Evitar obstáculo control planeación
21 Selección de arquitecturaDepende de la tarea, medio ambiente, capacidad de cómputo, ... Deliberativa: mundos estáticos, tarea bien definida, conocimiento previo del mundo, alta capacidad de cómputo Reactiva: tareas sencillas, poca capacidad de cómputo, no hay modelo del mundo Híbridas: mundos dinámicos, incertidumbre, tareas complejas
22 Referencias [Jones, Flynn] Cap 9 [Kortenkamp et. al] – Parte III[Russell y Norvig] – Cap 25 [Dodek y Jenkin – Cap 6]
23 Actividades Especificación detallada de software de su robot:Arquitectura de software Principales módulos Función de cada módulo Entregar breve reporte y hacer presentación en clase lunes 25 de febrero