Arquitecturas Basadas en el Comportamiento

Anuncio
Arquitecturas
Basadas en el Comportamiento
Introducción a la Robótica Inteligente
Álvaro Gutiérrez
4 de marzo de 2016
[email protected]
www.robolabo.etsit.upm.es
N
Índice
1 Introducción
2 Arquitectura Subsunción
Ejemplos Brooks
Ejemplos IRSIM
3 Esquemas Motores
Ejemplo Arkin
Ejemplos IRSIM
4 Conclusiones
N
1 Introducción
2 Arquitectura Subsunción
Ejemplos Brooks
Ejemplos IRSIM
3 Esquemas Motores
Ejemplo Arkin
Ejemplos IRSIM
4 Conclusiones
N
Un poco de historia
I
I
40’s: Turing y von Newman
50’s: Walter y Minsky
I
I
I
60’s: Problemas del Cognitivismo
I
I
I
I
I
Problema del marco
Anclaje del símbolo
Homúnculo
70’s: Conexionistas
80’s: Basados en el comportamiento
I
N
Walter -> Tortugas, Reactivos
Minsky -> Cognitivista, los programas
Brooks
Arq. Basadas en el Comportamiento
N
I
Descomposicón modular en comportamientos
I
Inspiración de animales e insectos
I
Sistemas distribuidos de módulos autónomos o
semi-autónomos
I
Tradicionalmente asociado a sistemas reactivos
(Subsunción)
I
También se diseñan sistemas no puramente reactivos
Arq. Basadas en Comportamientos
IDENTIFICAR OBJETOS
SENSORES
EXPLORAR
NAVEGAR
EVITA OBSTACULOS
N
ACTUADORES
Arq. Basadas en Comportamientos
Dibujo de Fitz Patrick (1996)
N
1 Introducción
2 Arquitectura Subsunción
Ejemplos Brooks
Ejemplos IRSIM
3 Esquemas Motores
Ejemplo Arkin
Ejemplos IRSIM
4 Conclusiones
N
Rodney. A. Brooks
I
Profesor e investigador en Standford y en el MIT
I
Director del laboratorio de IA del MIT
En los 80’s Brooks se hizo preguntas con respecto a la IA
clásica y la inteligencia en general.
I
I
Como tantos otros ingenieros y filósofos anteriormente.
I
Su paternidad: Arquitectura Subsunción
I
Su meta: Desarrollar criaturas artificiales capaces de
habitar en el mundo real y no en un mundo
simplificado/simulado
I
Actualmente es empresario (IRobot )
N
Algunas Preguntas
I
¿Qué es la inteligencia?
N
Algunas Preguntas
I
¿Qué es la inteligencia?
I
¿Es una mosca inteligente?
N
Algunas Preguntas
I
¿Qué es la inteligencia?
I
¿Es una mosca inteligente?
I
¿Es esta mosca más inteligente que algunas de nuestras
máquinas inteligentes?
N
Algunas Preguntas
I
¿Qué es la inteligencia?
I
¿Es una mosca inteligente?
I
¿Es esta mosca más inteligente que algunas de nuestras
máquinas inteligentes?
I
Por ejemplo ...
N
Más preguntas
I
No es muy probable que esta mosca:
I
Cree descripciones 3D de los objetos que sobrevuela
I
Razone con respecto a los humanos que la rodean
intentando matarla. Sobre todo sobre sus deseos,
objetivos,...
I
Realice un estudio sobre cual es el mejor sitio para
depositar los huevos
I
Construya una teoría física sobre como aterrizar en una
mesa
N
Algunas Respuestas
I
I
Es más probable que esta mosca:
I
Tenga conexiones directas entre sensores y actuadores
I
Tenga comportamientos pre-establecidos/ aprendidos
I
Tenga herramientas simples de navegación
I
Funcione prácticamente como una máquina determinista
Aún así, esta mosca es más eficiente en su movimiento
en el mundo real que cualquiera de los intentos en
Inteligencia Artificial
N
Visón de Brooks sobre la Inteligencia
I
La Inteligencia Humana es muy difícil de implementar
actualmente
I
No es el único tipo de inteligencia
I
El “divide y conquistarás” ha hecho que la IA se dedique
a problemas irrelevantes
I
Hay que seguir el camino lógico, de la “evolución”
I
Empezar con “inteligencias”(comportamientos) más
sencillas
I
Después de un éxito, ir hacia
“inteligencias”(comportamientos) más complejas
N
Requisitos de un robot
I
Varios objetivos:
I
I
I
Varios sensores:
I
I
I
Solapados
Ruidosos
Robustez:
I
I
I
Normalmente compitiendo entre ellos.
Ej. Evitar obstáculos vs. ir hacia la luz
Si algún sensor falla, el robot debe seguir realizando su
tarea
Si el mundo cambia, el robot debe seguir realizando su
tarea
Escalabilidad:
I
Cuanto más sensores y capacidades, comportamientos
más complejos.
N
Subsunción - Niveles de competencia
I
Niveles de competencia:
I
I
I
I
Define los comportamientos deseados: Evitar Obstáculos,
Explorar, traer comida,...
Cada nivel se puede implementar independientemente
Permite una gran escalabilidad
Compuestos de varios módulos
NIVEL 3
NIVEL 2
NIVEL 1
SENSORES
NIVEL 0
N
ACTUADORES
Subsunción - Módulos
I
Módulos: Son Máquinas de Estados Finitos Aumentadas
RESET
INHIBIDOR
R
MODULO
DE
COMPORTAMIENTO
ENTRADAS
S
SUPRESOR
N
I
SALIDAS
Arquitectura Subsunción - Módulos
MODULO − MEF AUMENTADA
R
MAQUINA
DE ESTADOS
FINITOS
R
R
N
Subsunción - Módulos
I
Los aspectos más importantes son:
I
Las salidas son funciones sencillas de las entradas y
variables locales
I
Las entradas/salidas se pueden inhibir/suprimir
I
Los módulos de los niveles de competencia superiores
pueden inhibir a los inferiores
I
Los niveles de competencia inferiores siguen funcionando
como si no existieran los niveles superiores
N
Subsunción - Inhibición
ENTRADA
ENTRADA
ENTRADA
ENTRADA
EVITAR
OBSTACULOS
ir hacia
adelante
INHIBIDOR
(tiempo)
BUSCAR
COMIDA
EVITAR
OBSTACULOS
BUSCAR
COMIDA
N
ir hacia
adelante
MOTORES
SIN INHIBICION
ir hacia
adelante
INHIBIDOR
(tiempo)
MOTORES
CON INHIBICION
VERDADERO
Subsunción - Supresión
ENTRADA
ENTRADA
ENTRADA
ENTRADA
EVITAR
OBSTACULOS
ir hacia
adelante
SUPRESOR
(tiempo)
BUSCAR
COMIDA
EVITAR
OBSTACULOS
BUSCAR
COMIDA
N
ir hacia
adelante
MOTORES
SIN SUPRESION
ir hacia
adelante
SUPRESOR
(tiempo)
parar
motores
MOTORES
CON SUPRESION
parar
motores
1 Introducción
2 Arquitectura Subsunción
Ejemplos Brooks
Ejemplos IRSIM
3 Esquemas Motores
Ejemplo Arkin
Ejemplos IRSIM
4 Conclusiones
N
Ejemplo 1 - Nivel 0
A Robust Layered Control System For a Mobile Robot
(R. A. Brooks 1986)
N
Ejemplo 1 - Nivel 0 y 1
N
Ejemplo 1 - Nivel 0, 1 y 2
N
Ejemplo 2 - Genghis
I
Robot de 6
patas
I
Caminar
I
57 AFSMs
A Robot that Walks; Emergent Behaviors from a Carefully Evolved Network
(R. A. Brooks 1989)
N
Ejemplo 2 - Genghis
I
Mantenerse de pie
N
Ejemplo 2 - Genghis
I
Caminar en terreno plano
N
Ejemplo 2 - Genghis
I
Caminar en terreno accidentado (Detección de choque)
N
Ejemplo 2 - Genghis
I
Caminar en terreno accidentado (Detección de obstáculos)
N
Ejemplo 2 - Genghis
I
Búsqueda de objetivos
N
1 Introducción
2 Arquitectura Subsunción
Ejemplos Brooks
Ejemplos IRSIM
3 Esquemas Motores
Ejemplo Arkin
Ejemplos IRSIM
4 Conclusiones
N
Ejemplos IRSIM
Lo vemos en el código!!
N
Ejemplo 1 - IRSIM
NAVIGATE
PROX
AVOID
S
MOTORS
subsumptionlightcontroller, paramFileSubsumptionLight
N
Ejemplo 2 - IRSIM
NAVIGATE
BATT
LIGHT
LOAD BATT
PROX
AVOID
S
S
MOTORS
subsumptionlightcontroller, paramFileSubsumptionLight
N
Ejemplo 3 - IRSIM
LIGHT
LIGHT
GRIPPER
NAVIGATE
I
FORAGE
BATT
LIGHT
LOAD BATT
PROX
AVOID
S
S
S
MOTORS
subsumptiongarbagecontroller, paramFileSubsumptionGarbage
N
1 Introducción
2 Arquitectura Subsunción
Ejemplos Brooks
Ejemplos IRSIM
3 Esquemas Motores
Ejemplo Arkin
Ejemplos IRSIM
4 Conclusiones
N
Ronald C. Arkin
I
Profesor e investigador en Georgia Institute of Technology
I
Director del Mobile Robot Laboratory (Georgia Tech)
I
Su paternidad: Esquemas Motores
I
Su meta: Permitir coordinación de comportamientos
inspirados en la biología
N
Esquemas Motores
N
1 Introducción
2 Arquitectura Subsunción
Ejemplos Brooks
Ejemplos IRSIM
3 Esquemas Motores
Ejemplo Arkin
Ejemplos IRSIM
4 Conclusiones
N
Ejemplo 1 - Navegar
Motor Schema Based Navigation For a Mobile Robot
(R. C. Arkin 1987)
N
Ejemplo 1 - Evitar Obstáculo
N
Ejemplo 1 - Objetivo
N
Ejemplo 1 - Ruido
N
Ejemplo 1 - Motor Schema
N
1 Introducción
2 Arquitectura Subsunción
Ejemplos Brooks
Ejemplos IRSIM
3 Esquemas Motores
Ejemplo Arkin
Ejemplos IRSIM
4 Conclusiones
N
Ejemplos IRSIM
Lo vemos en el código!!
N
Ejemplo 1 - IRSIM
NAVIGATE
PROX
AVOID
Σ
MOTORS
motorSchemas1controller, motorSchemas1Param
N
Ejemplo 2 - IRSIM
NAVIGATE
BATT
LIGHT
LOAD BATT
PROX
AVOID
Σ
MOTORS
motorSchemas1controller, motorSchemas1Param
N
Ejemplo 3 - IRSIM
LIGHT
LIGHT
GRIPPER
NAVIGATE
I
FORAGE
Σ
BATT
LIGHT
LOAD BATT
PROX
AVOID
MOTORS
motorSchemas2controller, motorSchemas2Param
N
1 Introducción
2 Arquitectura Subsunción
Ejemplos Brooks
Ejemplos IRSIM
3 Esquemas Motores
Ejemplo Arkin
Ejemplos IRSIM
4 Conclusiones
N
Conclusiones
I
Técnicas de diseño ingenieriles sobre principios
cognitivos
I
División en niveles de competencias
I
Cada nivel recibe información sensorial del mundo y
actúa sobre el mismo
I
Cada capa es completamente autónoma
I
Criticada por su poca relación con el diseño de sistemas
inteligentes
Sin embargo:
I
I
I
I
I
Realiza una descomposición funcional: No pregunta
como procesar información sensorial sino como acoplarla a
los actuadores
Está ligada al concepto de corporeizado
Es distribuida
Combina el diseño de robots con principios evolutivos
N
Problemas
I
Las prioridades deben ser evaluadas en el momento de
diseño
I
Necesita que los comportamientos estén bien definidos
I
Subsunción: Los comportamientos no se pueden
combinar, sólo inhibir/suprimir
I
Esquemas Motores: Los comportamientos si se pueden
combinar.
I
Se maximiza el número de niveles de competencia
I
Rígida en tiempo de ejecución
N
Críticas
I
¿Es posible implementar comportamientos complejos?
I
¿Es una evolución?
I
¿Capacidad de aprendizaje?
I
¿Serán necesarias representaciones?
N
Referencias
I
R. Pfeifer and C. Scheier. Understanding Intelligence.
The MIT Press, Cambridge, MA. (2001)
I
R. A. Brooks. A Robust Layer Control System For A
Mobile Robot. IEEE Journal of Robotics and Automation,
RA-2(1), pp. 14-13. (1986)
I
R. A. Brooks. A Robot that Walks; Emergent Behaviors
from a Carefully Evolved Network. Neural Computation,
1(2), pp. 253-262, (1989)
I
R. C. Arkin. Behavior-Based Robotics. The MIT Press,
Cambridge, MA (1998)
N
Gracias
GRACIAS!!
N
Gracias
GRACIAS!!
N
Descargar