Inteligencia Artificial
La ley del mínimo esfuerzo enseña tareas complejas a los robots de forma sencilla
Un algoritmo marca la tarea objetivo y las técnicas para lograrlo, y el autómata debe descubrir la forma más fácil de hacerlo
Con toda la palabrería sobre máquinas cada vez más inteligentes, conseguir que un robot sofisticado ejecute cualquier cosa compleja, como recoger un objeto pesado y trasladarlo a otro sitio, todavía requiere muchas horas de cuidadosa y paciente programación.
Igor Mordatch, un investigador postdoctoral de la Universidad de California en Berkeley (EEUU) está desarrollando un enfoque distinto que podría ayudar a acelerar la llegada de los robots asistentes, o incluso de jefes supremos. Su método fija un objetivo al robot y le proporciona un algoritmo que le permite averiguar por sí mismo cómo ejecutarla. Es el tipo de inteligencia que será necesaria para que, digamos, un robot de ayuda domiciliaria pueda traerle una taza de café.
Mordatch trabaja en el laboratorio de Pieter Abbeel, profesor adjunto de robótica de la universidad. Cuando visité el laboratorio este año, observé todo tipo de robots aprendiendo a realizar distintas tareas. Un gran robot blanco de investigación llamado PR2, que tiene una cabeza alargada y dos brazos blancos con manos en forma de pinza, estaba averiguando lentamente cómo recoger unos coloridos bloques de construcción, mediante un proceso meticuloso y a veces torpe de ensayo y error.
Mientras desarrolla un mejor proceso de aprendizaje, Mordatch está centrado en un software que estimula a los robots. Este modelo virtual, que desarrolló con el apoyo de su consejero del doctorado de la Universidad de Washington (EEUU) Emo Todorov, y otro profesor de la misma universidad Zoran Popović, incluye cierta comprensión de cómo entrar en contacto con el suelo y con los objetos. El algoritmo de aprendizaje entonces sigue estas indicaciones para buscar la manera más eficiente de lograr su objetivo. "Lo único que decimos es: 'Este es el objetivo, y la manera de lograr el objetivo es intentar minimizar los esfuerzos'", explica Mordatch. "Entonces [el movimiento] es el producto de estos dos principios".
Los robots simulados de Mordatch tienen todo tipo de forma y tamaño, y son representados con una gráfica simple que parecen algo salido de un videojuego sin acabar. Ha probado su algoritmo con formas humanas; criaturas sin cabeza, con cuatro patas y un cuerpo absurdamente gordo; e incluso con criaturas con alas. En cada caso, después de un período de aprendizaje, surge un comportamiento increíblemente complejo.
Como demuestra este vídeo, un robot humanoide puede aprender a levantarse desde cualquier postura o posición para quedarse en pie, sobre dos patas, de una manera muy natural; o se encamará en un alféizar o hasta hará el pino. Funciona el mismo proceso sin importar la forma que adopte el robot, y hasta puede habilitar a dos robots para que colaboren en la ejecución de una tarea, como mover un objeto pesado.
Basándose en este trabajo anterior, este año Mordatch divisó una manera para que los robots ejecuten comportamientos repetitivos como andar, correr, nadar y volar. Una red neuronal simulada es entrenada para controlar al robot utilizando informaciones acerca de su cuerpo, el entorno físico y el objetivo de desplazarse en una dirección determinada. Esto produce una locomoción aparentemente natural en los robots virtuales con un cuerpo humanoide, y el movimiento de las alas en los robots que las tienen. Cuando un operador le dice a dónde dirigirse, su red neuronal adapta los medios de locomoción de forma correspondiente.
Algo parecido puede producirse en los humanos y otros animales mientras aprenden a desplazarse. Un bebé dedica mucho tiempo a averiguar cómo mover su cuerpo, y después utiliza estos conocimientos para planificar nuevos movimientos con rapidez y de forma instintiva.
"Es precioso", afirma Josh Tenenbaum, un profesor del Departamento del Cerebro y Ciencias Cognitivas del Instituto Tecnológico de Massachusetts (MIT, EEUU) que estudia cómo los humanos aprenden. Tenenbaum trabaja en el desarrollo de métodos para aplicar esos principios a las máquinas. "Realmente intentan resolver un problema que creo que muy pocas personas han intentado abordar hasta hace muy poco".
Mordatch empezó recientemente a utilizar algunas de sus técnicas en un pequeño robot humanoide llamado Darwin (ver Un robot aprende a ponerse en pie casi como lo haría un niño). Utilizar la misma optimización y aprender técnicas dentro del mundo supone un reto importante, sin embargo, porque el mundo físico es más complejo e impredecible, y porque un algoritmo dispondrá de una información imperfecta, o ruidosa, acerca de él.