Unos investigadores del MIT han desarrollado un pequeño robot que camina al mismo ritmo que la gente y aprende los «códigos de conducta» de los paseantes: moverse por su derecha, cómo «adelantar», ceder el paso, etcétera. El trabajo, descrito en Socially Aware Motion Planning with Deep Reinforcement Learning (Planificación de movimientos de forma sociable mediante aprendizaje reforzado) es quizá una idea que puede sonar simple pero observarlo en la práctica lo hace parecer algo muy significativo acerca de cómo puede ser el mundo cuando esté lleno de robots: un lugar en el que haya que aceptar reglas y normas de convivencia al igual que hoy hacemos las personas.

El pequeño robot deambula durante las pruebas por los pasillos de la universidad a la misma velocidad que una persona, poco más de un metro por segundo. Es pequeño pero perfectamente visible. Está equipado con varios sensores: unos de imagen RGB y también un LIDAR, que es el mismo tipo de «radar» que emplean los coches autónomos. Combinándolos puede evitar obstáculos, pero en concreto el LIDAR –el cilindro vertical de la parte superior del robot– sirve para mapear el entorno, construyendo en un instante un mapa de dónde están los objetos que rodean al ingenio mecánico.

Una vez que se tienen esos datos, todo es cuestión de software: los obstáculos se dibujan en un mapa y las personas aparecen como círculos en movimiento, con unos vectores de desplazamiento y unas velocidades determinadas. El robot tiene a su vez un objetivo: ir de un lugar a otro determinado, pero tiene que evaluar la situación a cada segundo. En este sentido realiza una planificación de ruta óptima (ir de A a B en el menor tiempo posible) que se ve alterada ligeramente a cada instante por las circunstancias: gente que se cruza aleatoriamente, obstáculos y otros imprevistos. Su regla principal: no violar las normas sociales. ¡Ah, si todo el mundo hiciera lo mismo por la calle!

Lo más interesante es cómo se han adaptado en el software las reglas sociales que damos automáticamente por sentadas. El robot utiliza siempre el lado derecho del pasillo para moverse, igual que hacemos las personas (como los coches en las calles y carreteras), aunque esta norma se podría «invertir» para territorios como Reino Unido, Australia, la India o Japón. La zona izquierda del pasillo se utiliza para los «adelantamientos», en caso de que alguien esté parado o vaya muy lento y ahí el robot es más cauto. También adapta su velocidad dependiendo de la de las personas que encuentre, como hacemos al ir por la calle, de modo que no realiza «adelantamientos» a menos que sea estrictamente necesario.

En algunas ocasiones el espacio por donde circula es demasiado estrecho o hay columnas, de modo que si el robot detecta una persona tenderá a «ceder el paso» y esperar a que sea la otra persona quien cruce o deje el paso libre, como puede verse en varios momentos del vídeo. Aunque también se puede ver cómo cuando él tiene la prioridad (derecha) tiende a seguir como si tal cosa –consciente de que las personas y otros robots le cederían el paso– y es la persona la que ha de ralentizar su paso.

Entrenar al robot es además relativamente fácil: una vez programados los algoritmos básicos se le deja libre por ahí cubriendo las rutas establecidas. Cada vez que alcanza el objetivo compara su efectividad con la de ocasiones anteriores. Si ha tardado menos, las estrategias que haya seguido se puntúan extra, penalizándose las que le hagan perder tiempo. Es lo que se conoce como aprendizaje reforzado. Mientras no rompa la directriz principal de «no saltarse las normas sociales» cualquier truco que descubra será bueno. Esto tiende a producir rutas cada vez más óptimas y, sobre todo, aceptables para la convivencia entre robots autónomos y humanos.


Tags: