Saltar al contenido
Biblioteca GKUn lugar para las mentes curiosas
Español

Reaccionar antes de pensar, la arquitectura de subsunción (Subsumption Architecture)

Si un robot de limpieza choca con la pata de una silla mientras recorre la sala, retrocede un poco, cambia de rumbo y vuelve a avanzar. Parece que ha trazado un mapa perfecto de la casa y que calcula a cada instante su siguiente movimiento, aunque bastan unas pocas reacciones muy simples para conseguir ese comportamiento. ¿Y si un robot pudiera moverse mejor cuando dedica menos tiempo a pensar? De esa pregunta surgió un método de diseño robótico llamado «arquitectura de subsunción (Subsumption Architecture)».

En términos sencillos, la arquitectura de subsunción es un método de control robótico que apila capas de comportamiento simple de abajo arriba y permite que las capas superiores bloqueen el comportamiento de las inferiores y lo sustituyan cuando haga falta. Rodney Brooks, investigador en robótica del MIT en Estados Unidos, la presentó por primera vez en un artículo de 1986. Más adelante se convirtió en el punto de partida de la robótica basada en comportamientos (Behavior-Based Robotics).

En este material veremos, por orden, en qué contexto surgió la arquitectura de subsunción, cómo se combinan las capas para producir movimiento, qué robots se han construido con este método y cuáles son sus ventajas y limitaciones.


Un diseño robótico que da prioridad a la reacción

El contexto en que surgió la arquitectura de subsunción

En un laboratorio de la década de 1960, un robot alto, con forma de caja, ruedas y una cámara montada sobre un mástil, se alza entre grandes bloques en el suelo. Al fondo hay una fila de computadoras antiguas.

Hasta la década de 1980, el enfoque predominante en la investigación robótica consistía en reproducir fielmente el mundo en la «mente» del robot, trazar un plan y luego moverse.

(1) Las limitaciones de los robots que piensan despacio
Shakey, creado a finales de la década de 1960 en el Instituto de Investigación de Stanford, en Estados Unidos, convertía su entorno en un modelo simbólico y elaboraba un plan a partir de ese modelo antes de moverse paso a paso. Los cálculos llevaban tanto tiempo que al robot le costaba reaccionar a tiempo en espacios reales por donde circulaban personas.

(2) Una secuencia lineal de percepción, planificación y acción
Los robots de la época encadenaban en una sola secuencia las etapas de percepción, construcción de un modelo, planificación y acción. Bastaba con que se bloqueara una etapa intermedia para que se detuviera todo el robot.

(3) El mundo es el mejor modelo
Brooks sostenía que bastaba con observar el mundo directamente mediante sensores y reaccionar de inmediato, sin necesidad de reconstruirlo en la mente del robot. Como él mismo decía, «el mundo es su mejor modelo».


Cómo se apilan las capas para generar movimiento

Sobre el suelo de madera de una sala luminosa, un pequeño robot redondo con ruedas se acerca a la pata de una silla y cambia de dirección para esquivarla.

En la arquitectura de subsunción, el movimiento del robot depende de varias capas de comportamiento, cada una encargada de una sola tarea, en lugar de un único cerebro de gran tamaño.

  • Evitar obstáculos (Avoid Objects) es la capa inferior. Cuando el robot se acerca a algo, se detiene o lo esquiva.
  • Deambular (Wander) es la capa inmediatamente superior. El robot se mueve de un lado a otro sin un objetivo definido.
  • Explorar (Explore) es una capa situada más arriba. El robot elige un lugar visible a lo lejos y se dirige hacia él.

Todas las capas reciben simultáneamente la información de los sensores y funcionan de forma independiente. Ningún componente central dirige el conjunto. Las capas superiores establecen la prioridad de los comportamientos bloqueando las señales de las capas inferiores o reemplazándolas por las suyas. Estas operaciones se llaman inhibición (Inhibition) y sustitución (Suppression), respectivamente. De ahí viene la idea de que una capa superior «subsume» a una inferior.

Infografía de la arquitectura de subsunción. En el centro se apilan tres capas de comportamiento, de arriba abajo: capa 3, explorar, capa 2, deambular, y capa 1, evitar obstáculos. Entre las capas, unas flechas hacia abajo representan la inhibición y la sustitución. El sensor de la izquierda envía señales a todas las capas, y de todas ellas salen señales hacia las ruedas y las patas. La franja inferior indica que se construye y se prueba primero la capa inferior y luego se añade una capa por vez.
En la arquitectura de subsunción, las capas de comportamiento se apilan de abajo arriba y reciben al mismo tiempo la información de los sensores. El robot se mueve a medida que las capas superiores inhiben o sustituyen a las inferiores.

Por ejemplo, si aparece una caja justo delante del robot mientras la capa de exploración le indica que vaya hacia una puerta lejana, la capa de evitación de obstáculos reacciona primero y hace que el robot gire. Una vez superada la caja, el robot vuelve a seguir la orden de la capa de exploración y encuentra el camino con naturalidad, sin tener que revisar el plan.

El desarrollo también avanza de abajo arriba. Primero se construye la capa inferior y se la prueba a fondo. Si funciona bien, se añade una capa encima y se vuelve a probar el conjunto. Aunque falle una capa superior, la inferior sigue operativa, así que el robot puede, como mínimo, moverse sin chocar.


Robots construidos con la arquitectura de subsunción

Un pequeño robot caminante de seis patas, con el cuerpo metálico y los cables a la vista, atraviesa una superficie irregular de piedra sobre una mesa de laboratorio.

Brooks y el equipo de investigación del MIT aplicaron este principio para construir varios robots capaces de desplazarse por espacios reales.

Allen, el primer robot que recorrió una oficina

Allen es un robot con ruedas y fue el primero en incorporar la arquitectura de subsunción. Recorría por su cuenta los pasillos del laboratorio esquivando a las personas y las paredes.

Genghis, el robot que camina con seis patas

Genghis es un pequeño robot caminante de seis patas. Al superponer reacciones simples en cada pata, podía caminar como un insecto incluso sobre superficies irregulares.

Herbert, el robot que recoge latas vacías

Herbert es un robot que localiza latas de bebida vacías sobre los escritorios de una oficina, las recoge y las trae. Logró realizar una tarea bastante compleja sin un mapa general, con solo reaccionar a lo que tenía delante.


Ventajas y limitaciones

Un pequeño róver de exploración de seis ruedas recorre un terreno desértico salpicado de rocas rojas.

La arquitectura de subsunción cambió profundamente el rumbo de la robótica, aunque su utilidad dependía de la tarea.

(1) Respuesta rápida y robusta
La conexión directa entre los sensores y las acciones permite reaccionar de inmediato a los cambios del entorno. Si falla una capa, las demás mantienen el movimiento, por lo que el robot difícilmente se detiene.

(2) Limitaciones de planificación compleja y memoria
Al carecer de una memoria de gran capacidad y de un modelo simbólico, este enfoque tiene dificultades para trazar mapas de zonas extensas, planificar secuencias largas de tareas o comprender el lenguaje hablado.

(3) Cuantas más capas hay, más difícil es coordinarlas
Al aumentar el número de capas, resulta más difícil determinar cuál debe bloquear a otra y en qué momento. Por eso, hoy muchos robots adoptan un enfoque híbrido que combina capas de reacción rápida con capas de planificación más lenta.


La arquitectura de subsunción mostró que el comportamiento inteligente puede surgir sin un cerebro enorme. La idea salió del laboratorio y llegó hasta las salas de nuestras casas, como muestran los robots de limpieza de iRobot, empresa que Brooks cofundó.

En 1989, Brooks también publicó con su colega Anita Flynn un artículo en el que proponían enviar a otro planeta varios robots pequeños y baratos en lugar de una sola sonda de exploración grande y costosa. Esta idea suele mencionarse en relación con la aparición posterior de pequeños róveres para explorar Marte.

Enseñar primero al robot a evitar choques y añadir después comportamientos uno a uno es el primer paso para diseñar un robot que se mueva por sí solo.

Guarda este artículo en PDF

Compra la edición en el idioma que has seleccionado del artículo que estás leyendo.

US$1.00
Idioma seleccionado: Español

US$1.00 · 1 artículo · 1 idioma

Una vez realizada la compra, puedes volver a descargar la edición que compraste iniciando sesión con la misma cuenta.

Ver una muestra del PDF ↗Puedes leer el artículo completo gratis. La muestra te permite ver la tipografía y la estructura del archivo.