Hace varios años, los desarrolladores de Boston Dynamics grabaron varios videos que mostraban cómo las personas empujaban robots con palos de hockey y otros objetos. El video se volvió viral rápidamente, y muchos usuarios que lo vieron predijeron un levantamiento inminente de robots contra sus torturadores.
Pero, por supuesto, todo esto no es en vano: se enseñó a los robots a responder a factores externos inesperados. Y esto es muy difícil, ya que hay que prever una gran cantidad de escenarios diferentes. Investigadores de las universidades de Zhejiang (China) y Edimburgo (Reino Unido) ahora han seguido los pasos de Boston Dynamics. El equipo de investigación desarrollóun programa complejo para enseñar a los robots a caer, sacudirse, derrapar, etc. Por lo que puede decir, el programa es muy eficaz.
La tarea principal es enseñar a los robots a recuperarse rápidamente después de que literalmente se caen. ¿Para qué? En la vida real, si el robot necesita realizar algunas tareas fuera del laboratorio, pero en el mundo ordinario, tendrá que caer repetidamente. En algún lugar el automóvil se deslizará, tal vez alguien lo empuje, por ejemplo, en la calle, en la hora pico, cuando el robot de mensajería irá a entregar el paquete. Y esto sin mencionar el escenario en el que el robot adquiere la profesión de rescatador / explorador de la zona.
Independientemente de la profesión que tenga el robot, necesita habilidades especiales. Para el mensajero: un conjunto de habilidades, para el rescatador, el segundo, para el geólogo asistente, el tercero. En cualquier caso, habrá algunas habilidades únicas, además de otras universales: la capacidad de levantarse rápidamente después de una caída, por ejemplo.
Un grupo de expertos de China e Inglaterra está en proceso de crear una plataforma de software para entrenar a un robot; en nuestro caso, es un perro robot. Los expertos ya han desarrollado un sistema de autoaprendizaje con ocho algoritmos básicos que permiten que un perro mecánico aprenda a interactuar con el mundo real. Para el entrenamiento, se involucra una red neuronal especializada basada en el aprendizaje por refuerzo. Primero, la red neuronal entrena robots virtuales, es decir, sus modelos, desarrollando diferentes escenarios para responder a factores externos. Una vez finalizada esta etapa, el resultado del aprendizaje en forma de un conjunto de algoritmos se "vierte" en un robot real. Y obtenemos un sistema ya entrenado. Todo esto se puede comparar con los programas que recibió Neo en The Matrix. Uno, y él sabe kung fu, dos, él sabe volar un helicóptero,tres: gana experiencia en armas.
Lo mismo ocurre con un robot. Se completa el programa terminado, y el automóvil hasta ahora inamovible ya sabe cómo levantarse después de caídas, doblar obstáculos, caminar sobre hielo, etc.
Tal sistema de entrenamiento es mucho más efectivo que el método de prueba y error con un robot real. Para aprender a actuar correctamente en situaciones difíciles, la red neuronal realiza miles o incluso millones de simulaciones. Un robot real, si pasaba por todas estas pruebas, se rompería después de la décima o centésima caída. Y en la simulación, puede hacer cualquier cosa, incluso soltar el sistema desde un rascacielos, si lo necesita para la formación.
Otra característica del entrenamiento es que inicialmente las habilidades básicas del robot se entrenan por separado. Como se mencionó anteriormente, hay ocho habilidades de algoritmos de este tipo. Si antes comparamos el esquema de entrenamiento con la "Matriz", aquí el guión del equipo de fútbol viene al rescate. Cada habilidad se puede comparar con un miembro individual del equipo: un portero o un mediocampista. Cada uno de ellos está capacitado con un conjunto especial de habilidades y juntos, después de lograr ciertos resultados, todos se convierten en un equipo eficaz. Así es aproximadamente como funciona todo con un robot: se le enseña a pararse por separado, por separado, a doblarse alrededor de obstáculos, etc. Y luego todas estas habilidades se unen. Lo principal es convertir todas las habilidades adquiridas en un único sistema flexible, donde nada se contradiga y no interfiera entre sí.
La imagen de arriba muestra cómo se enseña a un robot a caminar sobre un terreno accidentado con muchas piedras. Sigue a su objetivo, una bola verde virtual, y cae a veces. Después de cada caída, obtiene cierta experiencia, lo que le permite evitar una situación similar la próxima vez. Después de miles de caídas virtuales, el robot aprende a caminar sobre terreno accidentado casi sin errores, y no se cae. Y si es así, se levanta rápidamente.
Todo esto se complica luego por la adición de factores externos: el robot es empujado en diferentes direcciones, se lanzan piedras, etc. Como resultado, la máquina se adapta y entra en funcionamiento muy rápidamente después de estar expuesta a factores externos inesperados. Los desarrolladores dicen que los niños aprenden de la misma manera: después de todo, un niño no puede subir escaleras, evitar obstáculos, evitar peligros en forma de charcos, etc. Todo esto debe aprenderse mediante ensayo y error.
Los desarrolladores no pueden prever todo en el mundo, está claro que el robot tendrá que reaccionar de alguna manera ante problemas imprevistos. Pero las habilidades básicas adquiridas a través de dicha formación le ayudarán a afrontar las tareas más serias. Bueno, un robot podrá transferir la experiencia adquirida al segundo, ese, al tercero, etc. Todo, como Sheckley describió en The Guardian Bird, solo