robótica inteligente tema 6: programación l. enrique sucar marco lópez itesm cuernavaca
TRANSCRIPT
Robótica Inteligente
Tema 6:
Programación
L. Enrique Sucar
Marco López
ITESM Cuernavaca
Programación Robots
Planeación
Modelado espacio
Control
Programaciónbajo nivel
sensores actuadores
Arquitectura
Programación Robots
• Repaso arquitecturas
• Programación bajo nivel
• Introducción a control
• Modelado del espacio
• Planeación de trayectorias
• Prototipo terminado Concurso México
Repaso: Arquitecturas de Robots
• Arquitectura– Arquitecturas deliberativas– Arquitecturas reactivas– Arquitecturas híbridas
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.”
Arquitecturas básicas
• Arquitectura deliberativa
• Arquitectura reactiva
actuadoressensores
Arquitectura deliberativa
• Basada 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
Arquitectura deliberativa
SensadoModelo
delmundo
Plan ControlEjecu-ción
Ejemplo: enfoque deliberativo
• Construir 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
Arquitectura deliberativa
• Ventajas:– 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
Arquitectura Reactiva
• En 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)
Arquitectura basada en Comportamiento
Planear
Explorar
Deambular
Evitar objetos
sensores actuadores
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
Ejemplo: enfoque reactivo
Ir a la luz
Evitar objetos motores
Buscar luz
Arquitectura Reactiva
• Ventajas:– 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)
Arquitecturas Híbridas
• Combinació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
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
Arquitectura de 3 capas: ejemplo
Planeador
Secuenciador
sensores actuadoresavanzar
sin chocar
girarir a luz
Arquitectura de Pizarrón
• Conjunto 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)
Arquitectura de Pizarrón
Obtenerinfo.
sensoresIr a lameta
Evitarobstáculo control
planeación
PIZARRÓN
Selección de arquitectura
• Depende 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
Referencias
• [Jones, Flynn] Cap 9
• [Kortenkamp et. al] – Parte III
• [Russell y Norvig] – Cap 25
• [Dodek y Jenkin – Cap 6]
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