miércoles, 17 de febrero de 2010

Robots que aprenden a cazar

16 de Febrero de 2010 · 1 Comentario

Un equipo de la universidad de Lausanne, en Suiza han conseguido hacer evolucionar familias de robots hasta hacerles desarrollar comportamientos de cazador/presa.

El propio Alan Turing propuso crear sistemas capaces de evolucionar basados en la selección natural darwinista; Turing afirmaba que los sistemas inteligentes eran demasiado complejos como para poder diseñarse, así que la única forma de crearlos era diseñando máquinas capaces de evolucionar.

¿Y como creamos un robot capaz de evolucionar? El punto de partida es la creación de un genoma. El genoma es una tabla de parámetros que se usan como base para definir el resto del sistema y tiene la propiedad de que se puede modificar aleatoriamente manteniendo su capacidad de describir el sistema.

Como se puede ver en el gráfico superior, el proceso de evolución consta de los siguientes pasos:

  1. Se construyen las redes neuronales a partir de los parámetros definidos en el genoma.
  2. Las redes neuronales generadas se ponen a prueba para determinar su rendimiento en el cumplimiento de la tarea prevista.
  3. Tomamos el genoma que describe las redes que han sido mas eficientes.
  4. Mediante recombinación y modificaciones aleatorias, producimos un nuevo genoma.
  5. Este nuevo genoma se usa para generar unas redes neuronales nuevas, con las que volvemos al punto 2.

El resultado es un proceso evolutivo en el que las redes, de una generación a la siguiente, van mejorando su rendimiento.

¿Y como ponemos a prueba las redes neuronales? Pues con estos robots:


Robot cazador (derecha) persiguiendo al robot presa (izquierda)

Tanto el robot cazador como el robot presa disponen de sensores de proximidad, pero el robot cazador dispone de un sistema de visión (esa especie de cabeza con dos ojos) que es capaz de ver el bastón negro que el robot presa lleva encima. Esto permite al robot cazador detectar al robot presa a una distancia de un metro, mientras que el robot presa no se da cuenta de la presencia del cazador hasta que este se encuentra a medio centímetro. Para compensar esta desventaja, el robot presa se mueve al doble de velocidad que el cazador. Ambos robots pueden detectar la presencia de las paredes, en el caso de que el escenario de caza sea un laberinto.

En la primera generación, los robots tenían una programación muy simple; el robot presa huía en cuanto detectaba al cazador, y el cazador iba en dirección a la presa en cuanto la veía.

En las primeras rondas, cazadores y presas se movían de forma errática por el escenario, pero después de unas pocas generaciones tanto cazadores como presas empezaron a desarrollar estrategias bastante elaboradas.

La figura 1 corresponde al movimiento del cazador (bola negra) y presa (bola blanca) en la primera generación; podemos ver que se mueven de forma errática sin seguir ninguna estrategia.

En la figura 2 han pasado ya varias generaciones y vemos que la presa ha aprendido a moverse el línea recta, siguiendo una trayectoria evasiva, mientras el cazador ha aprendido a seguir el movimiento de la presa para predecir hacia donde se dirigirá y así poder interceptarla.

Sin embargo, las tácticas desarrolladas no son estables; a la que uno de ellos (ya fuera el cazador o la presa) desarrollaba una estrategia eficiente, a las pocas generaciones el otro había desarrollado una contratáctica capaz de neutralizarla, con lo que el juego volvía a empezar.

Este experimento con robots, además de mostrarnos una vía para desarrollar máquinas inteligentes, nos muestra como funciona la naturaleza y como depredadores y presas evolucionan de forma coordinada.

Como curiosidad, este mismo equipo lleva varios años experimentando las capacidades de la evolución aplicadas a robots, y hace dos años en otro experimento el proceso evolutivo llevo a la aparición de robots con capacidad para mentir.

FUENTE: PLOS Biology.

No hay comentarios: