Saltar al contenido

En el Georgia Institute of Technology han desarrollado un robot que es capaz de engañar. Utiliza un algoritmo pensado para engañar tanto a personas como a otros robots y se ejecuta en dos fases. En primer lugar el robot detecta si en la situación actual el robot debe o no engañar y en caso positivo, activa un comportamiento adecuado para engañar al adversario. Para tomar la decisión de engañar se utiliza la teoría de juegos, se evalúa si el oponente (humano ó robot) está en conflicto con el robot y si el engaño va a ser beneficioso para el robot.

Además los autores creen que es interesante evaluar algunas situaciones en las que puede ser aceptable utilizar algoritmos para engañar a humanos:

  • Robots militares: el uso de estrategias para engañar al enemigo tiene ventajas evidentes.
  • Situaciones de rescate: puede ser útil engañar a las víctimas para evitar el pánico de las personas rescatadas.
  • Robots sociales: aunque no es probable que este tipo de robots utilice el engaño, detectar las situaciones dónde es beneficioso engañar puede mejorar la interacción social de un robot.

Construir robots capaces de engañar tiene implicaciones éticas importantes. Con esta investigación se pretende iniciar el debate antes de que se construyan robots militares reales capaces de engañar. Sólo añadir que uno de los investigadores es Ronald C. Arkin, autor de un libro clásico de robótica, Behavior-Based Robotics.

Y gracias a Sphinx de linuxdroids por enviarme el enlace!

Después de unas semanas, he logrado avanzar un poco con presencebot. El concepto del proyecto ha cambiado respecto al original y he integrado algunas de las ideas que he comentado anteriormente en el blog: control homeostático y emocional, arquitectura orientada a comportamientos, integración con sensores web. La arquitectura está inspirada en kismet, aunque con muchas limitaciones: no hay visión artificial y el robot es muy sencillo (no ha cambiado respecto a la versión original, sólo tiene un servo con un par de leds y usa el ratón del ordenador como sensor).

El software es completamente nuevo y posee los siguientes módulos:

- comportamientos: realizan la lectura de sensores y la activación de los actuadores. Deberían acoplar entradas y salidas, pero la verdad es que están parcialmente acoplados: se comunican por medio de un espacio de memoria común. En la práctica es cómo un acomplamiento "público", los sensores y actuadores están acoplados, pero los datos están disponibles para el resto del sistema.

- motivación interna: un control homeostático al que he llamado "felicidad". El robot está más contento cuando hay alguien en el ordenador moviendo el ratón, si no detecta movimiento de ratón, la felicidad disminuye. Las acciones del robot están encaminadas a mantener su nivel de felicidad dentro de los niveles óptimos.

- motor emocional: en cada situación, el robot se encuentra en un estado emocional que activa y/o desactivar los comportamientos apropiados. Por ahora es una máquina de estados que depende de la motivavión interna y activa/desactiva en cada estado un conjunto de comportamientos.

- configuración mediante fichero: la relación entre los distintos módulos se hace con un fichero que se carga al inicio a modo de dsl. El uso de un fichero permitirá cargar diferentes personalidades en un mismo robot.

Por ahora el comportamiento del robot es muy sencillo. Reacciona ante el movimiento del ratón y la presencia online en messenger. Si el dueño no está en messenger, se asusta (mantiene la posición con una ligera oscilación) hasta que el dueño aparezca online. Una vez que el dueño está presente en messenger, reacciona al movimiento del ratón. Si detecta movimiento, aumenta la felicidad (aumentando la posición de la cabeza y la iluminación de los ojos). Si hay demasiado movimiento, pasa a un estado sobreexcitado (con un baile especial). Si deja de detectar movimiento de ratón durante un rato, entra en modo de aburrimiento (los ojos parpadean lentamente). Por ahora es un poco esquizofrénico, para hacer pruebas he hecho que reccione muy rápidamente, con lo que pasa de la sobreexcitación al aburrimiento un unos segundos. Para los pocos elementos que tiene, creo que es bastante expresivo (en línea con los vehículos de braitenberg, un comportamiento sencillo parece más complejo de lo que es).

El siguiente paso es conseguir que responda con un mando de la wii, para que reaccione al movimiento tridimensional del mando en vez del movimiento del ratón. También espero conectar un sensor PIR que puede dar algo de juego a las reacciones del robot.

Un grupo de científicos han conseguido infiltrar un robots de pequeño tamaño en un grupo de cucarachas y han conseguido incluso controlar el comportamiento del grupo. Las cucarachas poseen ciertas características que facilitan la tarea:

  • Sociedad simple, igualitaria y democrática (comparada con las sociedades jerárquicas y organizadas de abejas y hormigas)
  • No tienen muy buena vista (se las puede engañar, los robots no guardan ningún parecido físico con las cucarachas, sólo el tamaño).
  • Se han infltrado usando "olor a cucaracha" para engañarlas.

El experimento consistía en poner un grupo de cucarachas que inicialmente iban hacia un lugar oscuro. Los robots se integraban en el grupo hasta unirse a mayoría del grupo. Una vez integrados, los robots se desplazaban hasta una localización que no es tan interesante a priori para las cucarachas, pero iban porque sus compañeros robóticos las acercaban ahí.

Inteligente experimento sirve para explicar las bases biólogicas del paradigma basado en comportamiento: las cucarachas no piensan, siguen un comportamiento simple pero útil: seguir a los miembros más cercanos del grupo (si hay miembros vivos cerca, probablemente hay más probabilidades de sobrevivir).

En ny-times y un video en la bbc.

Via slashdot.

1

En robots.net han publicado una referencia a un artículo de la DPRG muy interesante sobre la arquitectura de sumisión (lo siento por la traducción aunque es incorrecta, no se me ocurre nada mejor). Esta arquitectura ideada por Rodney Brooks está inspirada en métodos biológicos y modela la inteligencia de un robot como la suma de diferentes comportamientos que se ejecutan en paralelo y que compiten por el uso de los actuadores, con un módulo de arbitraje.

La siguiente imagen extraída del artículo, me parece bastante ilustrativa:

- El robot se mueve en dirección de una fuente de luz, evitando los obstaculos.

- Se han definido cuatro comportamientos que se ejecutan en la plataforma: cruise() (rodar en una dirección), photo() (buscar la luz), ir() (evitar obstáculos detectados por infrarrojos) y bumper() (evitar obstáculos detectados por el bumper).

- Cuando uno de ellos tiene que actuar, "somete" a los demás y toma el control de los actuadores, en este caso las ruedas que gobiernan la dirección de movimiento.

- En este ejemplo, el bumper() e ir() (sensores de contacto para evitar golpes) tienen prioridad sobre cruise() y photo().


Con esta arquitectura sencilla Rodney Brooks resolvió varios de los problemas de la robótica clásica:

  • Arquitectura sencilla implementable en procesadores menos potentes.
  • Se toma el mundo como modelo y no se hacen modelos internos del mundo que llevan a error.
  • Es muy responsiva, el robot no se queda atascado pensando.
  • Comportamientos sencillos dan lugar a comportamientos complejos gracias al fenómeno de emergencia.

El principal problema es que idealmente no se debe usar memoria para implementar comportamientos, lo que hace difícil implementar tareas complejas con esta arquitectura y por eso actualmente se implementan arquitecturas híbridas deliberativas-reactivas.

Los robots comerciales de más éxito Roomba (creado por iRobot co-fundada por el propio Books) y Robosapien (desarrollado por Mark Tilden que ha extendido la arquitectura de sumisión a la ideología B.E.A.M.) están inspirados en esta arquitectura.

Científicos de Copenhage han descubierto que la médula espinal tiene actividad nerviosa similar a la del córtex, por lo que defienden que la médula espinal también piensa. En realidad probablemente no participe en el pensamiento consiente, sino que coordina a nivel medio el movimiento de los músculos. En el estudio no se profundiza en este punto, dejando como un misterio aún por resolver cómo se produce el movimiento en el cuerpo humano.

Este descubrimiento creo que da un poco más de soporte al paradigma basado en comportamiento de la robótica. Este paradigma defiende que la robótica se debe diseñar en base a comportamientos de bajo nivel, cuya interacción produce una inteligencia emergente. El principal defensor de este paradigma es el profesor Rodney Brooks, co-fundador de una de las pocas empresas sobre robótica con éxito, iRobot.

También soporta un poco la idea del post anterior sobre inteligencia dependiente del cuerpo, que probablemente se inspiró en los avances en robótica basada en comportamiento y en agentes situados.

powered by performancing firefox