Publicado el 09 abr. 2023
por The Conversation
- Opinión
Por Ewen Dantec
Estudiante de doctorado en robótica en el Laboratorio de
Análisis y Arquitectura de Sistemas, INSA Toulouse
La robótica, o más en general el arte de construir autómatas, ha sacudido nuestro imaginario colectivo desde hace varios siglos, desde Talos, el gigante de bronce de los mitos antiguos, hasta el pequeño robot Astro de Osamu Tezuka cuyas aventuras se publicaron entre 1952 y 1968, vía el flûteur Vaucanson construido en el siglo XVIII , capaz de tocar varias melodías diferentes en una flauta travesera.
Los robots modernos, como los que podemos encontrar en las fábricas, son comparativamente muy recientes ya que el primero de ellos, Unimate, recién empezó a funcionar a principios de los años 60 en las cadenas de montaje de General Motors. Y no fue en 1972 cuando “nació” WABOT-1, el primer robot antropomórfico capaz de caminar sobre dos piernas, percibir su entorno a través de sus sensores visuales y llevar objetos en sus manos.
Más allá del interés científico del problema de caminar, el desarrollo de la robótica con piernas está motivado por varias aplicaciones prometedoras: el envejecimiento de la población en los países ricos, por ejemplo, alimenta la idea de la ayuda médica robótica para el hogar ; ciertas tareas industriales arduas o peligrosas podrían asignarse a robots andantes, que son más versátiles y autónomos; finalmente, el rescate de personas en zonas de desastre podría verse facilitado por la intervención de ágiles bípedos.
De hecho, para evolucionar en entornos diseñados para humanos (con puertas, escaleras, barandillas, etc.), estos robots harían bien en caminar como nosotros.
Pero a pesar de los recientes avances en ingeniería, los robots que caminan todavía son raros, lo cual es sorprendente, especialmente considerando los impresionantes avances en áreas adyacentes, como las capacidades lingüísticas de las inteligencias artificiales . Entonces, ¿por qué es tan difícil enseñar a un robot a caminar?
Bipedalismo, instintivo para los vivos pero muy complejo matemáticamente
En humanos sanos, caminar es un proceso natural al que le prestamos poca atención a diario. Los primeros pasos de un recién nacido generalmente se dan entre los 10 y los 18 meses, mucho antes de que pueda comprender la mecánica subyacente de su movimiento. La capacidad de caminar sobre dos piernas es una habilidad que aprendemos casi solos, imitando a quienes nos rodean y por ensayo y error. Para los animales, las cosas parecen aún más sencillas, ya que la mayoría de los cuadrúpedos son capaces de caminar, saltar o correr a las pocas horas de nacer.
Sin embargo, la locomoción humana es un problema extremadamente complicado desde el punto de vista matemático, que implica el control en tiempo real de aproximadamente 360 articulaciones y 640 músculos, teniendo en cuenta el centro de gravedad, el equilibrio, los apoyos, la vista…
En última instancia, si bien la robótica con patas funciona muy bien en el laboratorio, donde los investigadores pueden controlar con precisión el entorno experimental, aún no es lo suficientemente robusta para lidiar con el desorden y la imprevisibilidad del mundo real.
Divide el problema para resolverlo mejor
Los primeros resultados concluyentes sobre la locomoción bípeda de los robots se obtuvieron desglosando el problema: planificación por un lado y control por otro .
Primero, se calcula la trayectoria a ejecutar en base a técnicas de optimización que minimizarán un costo (por ejemplo, el tiempo de viaje del punto A al punto B) bajo ciertas restricciones (por ejemplo, no caer). En un segundo paso, ejecutamos esta trayectoria y nos aseguramos de que el robot la siga incluso en caso de perturbaciones o errores externos.
De hecho, en sus inicios, la robótica no contaba con computadoras lo suficientemente poderosas para realizar una planificación completa en tiempo real, como los humanos. Para generar ciertos movimientos complejos, los algoritmos de optimización podían tardar varios segundos o incluso varios minutos, y había que planificar todo el movimiento con antelación.
Planifica tus movimientos como lo hacen los humanos
La desventaja de este enfoque es que no permite que el robot modifique su comportamiento en caso de una transformación repentina del entorno (por ejemplo, un humano que pasa frente a él, un objeto que cae en el camino...): el sistema trate de seguir la trayectoria calculada sin importar qué.
Ahora sabemos que los humanos, por el contrario, solo tienen en cuenta sus próximos dos o tres pasos cuando evalúan su trayectoria (es decir, uno o dos segundos de anticipación).
Por lo tanto, los roboticistas han simplificado el problema de planificación, al mirar solo horizontes de tiempo muy cercanos, para que puedan resolverlo muy rápidamente . Este método, denominado “control predictivo”, consiste en calcular una trayectoria deseada para el robot, de la cual solo se utilizará el primer punto, por ejemplo un paso. Una vez realizado este punto, se recalcula la nueva trayectoria deseada teniendo en cuenta la nueva información de la que dispone el robot: visión, sensores internos, instrucciones del usuario, y que podría indicar la aparición de un obstáculo por ejemplo.
En las últimas décadas, el poder de cómputo de las computadoras ha aumentado considerablemente, lo que hace posible implementar modelos más complejos. Ahora podemos tener en cuenta la dinámica completa del cuerpo del robot dentro del horizonte de predicción. Los métodos de control predictivo están notablemente detrás de las impresionantes acrobacias del robot Atlas de Boston Dynamics.
Uso del "aprendizaje por refuerzo" para promover la locomoción
A pesar de sus ventajas, el control predictivo sigue estando limitado por las restricciones de locomoción en tiempo real y por el gran tamaño del problema a resolver.
Por ejemplo, los especialistas en robótica se han interesado recientemente en el "aprendizaje por refuerzo" y su aplicación para el control de la marcha . La idea es fijar una función de recompensa relevante (por ejemplo, alcanzar un objeto detrás de una puerta cerrada) y dejar que el robot se mueva en el simulador hasta que logre, por prueba y error, encontrar el comportamiento que maximiza su recompensa.
El enfoque se inspira en gran medida en la forma en que los niños aprenden a moverse, primero mediante gestos aleatorios, luego cada vez más precisos, hasta que se vuelven naturales y sin esfuerzo. A pesar de todo, el aprendizaje por refuerzo sigue siendo una técnica costosa en términos de tiempo de entrenamiento de máquinas, y sus resultados son, en ocasiones, difíciles de trasladar a la realidad. Esto se ilustra con la marcha muy inestable calculada por DeepMind AI de Google, que ha aprendido a caminar por sí misma: la solución obtenida funciona bien en simulación, pero seguramente fallaría si se implementara en un robot real.
Otros trabajos sugieren combinar el control predictivo y el aprendizaje por refuerzo : la idea es construir fuera de línea una memoria del movimiento en el que el controlador podría dibujar para acelerar su convergencia cuando se encuentra con una situación que requiere una reacción viva y compleja, como dar un paso al costado para evitar chocar contra un auto. En este contexto, el control predictivo sirve para adaptar a las condiciones presentes un movimiento ya conocido y adquirido, que luego ya no necesita ser reinventado desde cero.
Esta dialéctica entre adaptación y memoria recuerda mucho al funcionamiento de los humanos, que tardan cada vez menos en realizar una tarea que han repetido muchas veces en el pasado.