Arquitecturas Basadas en el Comportamiento

Arquitecturas Basadas en el Comportamiento Introducción a la Robótica Inteligente Álvaro Gutiérrez 4 de marzo de 2016 [email protected] www.robolabo...
8 downloads 2 Views 6MB Size
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