Algoritmos sofisticados capaces de resolver un cubo de Rubik han aparecido antes, pero un nuevo sistema de la Universidad de California, Irvine, utiliza inteligencia artificial para resolver el rompecabezas desde cero y sin ayuda previa de seres humanos, y lo hace con una velocidad y eficiencia impresionantes.
La nueva investigación publicada en Nature Machine Intelligence describe DeepCubeA, un sistema capaz de resolver cualquier cCubo de Rubik que se le presente.
De manera más impresionante, puede encontrar el camino más eficiente hacia el éxito, es decir, la solución que requiere el menor número de movimientos, aproximadamente el 60 por ciento de las veces.
En promedio, DeepCubeA solo necesitó 28 movimientos para resolver el enigma, requiriendo 1.2 segundos para calcular la solución.
Suena rápido, pero otros sistemas han resuelto el rompecabezas 3D en menos tiempo, incluido un robot que puede resolver el cubo de Rubik en solo 0,38 segundos:
Pero estos sistemas fueron diseñados específicamente para la tarea, utilizando algoritmos con scripts humanos para resolver el enigma de la manera más eficiente posible.
DeepCubeA, por otro lado, aprendió a resolver el Cubo de Rubik utilizando un enfoque de inteligencia artificial conocido como aprendizaje de refuerzo.
“La inteligencia artificial puede derrotar a los mejores jugadores humanos de ajedrez y de Go del mundo, pero algunos de los rompecabezas más difíciles, como el Cubo de Rubik, no se resolvieron con computadoras, así que pensamos que estaban abiertos para los enfoques de inteligencia artificial”, dijo Pierre Baldi.
El autor principal del nuevo artículo, en un comunicado de prensa:
“La solución para el Cubo de Rubik implica un pensamiento más simbólico, matemático y abstracto, por lo que una máquina de aprendizaje profundo que puede resolver este enigma se está acercando a convertirse en un sistema que puede pensar, razonar, planificar y tomar decisiones”.
De hecho, un sistema experto diseñado para una sola tarea y una única tarea, como resolver un Cubo de Rubik, se limitará para siempre a ese dominio, pero un sistema como DeepCubeA, con su red neuronal altamente adaptable, podría aprovecharse para otras tareas, como resolver problemas científicos, matemáticos y de ingeniería complejos.
Además, este sistema “es un pequeño paso hacia la creación de agentes que pueden aprender a pensar y planificar por sí mismos en nuevos entornos”, dijo a Gizmodo Stephen McAleer, coautor del nuevo artículo.
El aprendizaje por refuerzo funciona como suena.
Los sistemas están motivados para lograr un objetivo designado, durante el cual obtienen puntos por implementar estrategias o acciones exitosas, y pierden puntos por desviarse del rumbo.
Esto permite que los algoritmos mejoren con el tiempo y sin intervención humana.
El aprendizaje por refuerzo tiene sentido para un cubo de Rubik, debido al número espantoso de combinaciones posibles en el rompecabezas 3x3x3, que asciende a alrededor de 43 quintillones.
Simplemente elegir movimientos al azar con la esperanza de resolver el cubo simplemente no va a funcionar, ni para los humanos ni para las supercomputadoras más poderosas del mundo.
Su sistema anterior, llamado DeepCube, usaba una estrategia de búsqueda de árboles convencional y un esquema de aprendizaje de refuerzo similar al empleado por el AlphaZero de DeepMind.
Pero mientras este enfoque funciona bien para los juegos de mesa uno-a-uno como el ajedrez y el Go, resultó ser torpe para el Cubo de Rubik.
En las pruebas, el sistema DeepCube requería demasiado tiempo para realizar sus cálculos, y sus soluciones a menudo estaban lejos de ser ideales.
El equipo de la UCI utilizó un enfoque diferente con DeepCubeA.
Comenzando con un cubo resuelto, el sistema hizo movimientos aleatorios para mezclar el rompecabezas.
Básicamente, aprendió a dominar el Cubo de Rubik al jugarlo al revés.
Al principio, los movimientos eran pocos, pero el estado confuso se hacía más y más complicado a medida que avanzaba el entrenamiento.
En total, DeepCubeA jugó 10 mil millones de combinaciones diferentes en dos días, ya que funcionó para resolver el cubo en menos de 30 movimientos.
“DeepCubeA intenta resolver el cubo utilizando el menor número de movimientos”, explicó McAleer.
“En consecuencia, los movimientos tienden a verse muy diferentes de cómo un humano resolvería el cubo”.
Después del entrenamiento, el sistema se encargó de resolver 1,000 cubos de Rubik aleatoriamente revueltos.
En las pruebas, DeepCubeA encontró una solución al 100 por ciento de todos los cubos, y encontró un camino más corto hacia el objetivo el 60.3 por ciento del tiempo.
El sistema requirió 28 movimientos en promedio para resolver el cubo, lo que hizo en aproximadamente 1,2 segundos.
En comparación, los solucionadores del rompecabezas humanos más rápidos requieren alrededor de 50 movimientos.
“Desde que descubrimos que DeepCubeA está resolviendo el cubo en el menor número de movimientos el 60 por ciento de las veces, es bastante claro que la estrategia que está utilizando está cerca de la estrategia óptima, conocida coloquialmente como el algoritmo de Dios”, dijo el coautor del estudio Forest Agostinelli.
“Si bien las estrategias humanas se explican fácilmente con instrucciones paso a paso, la definición de una estrategia óptima a menudo requiere un conocimiento sofisticado de teoría de grupos y combinatoria.
Aunque la definición matemática de esta estrategia no está en el alcance de este documento, podemos ver que la estrategia que emplea DeepCubeA no es tan obvia para los humanos”.
Para mostrar la flexibilidad del sistema, a DeepCubeA también se le enseñó a resolver otros rompecabezas, incluidos los juegos de rompecabezas de baldosas deslizantes, Lights Out y Sokoban, que los hizo con una habilidad similar.
“Aplicamos nuestro algoritmo a un total de siete rompecabezas y encontramos que fue capaz de resolverlos todos. Por lo tanto, esto es evidencia de un método de aplicación más general “, dijo Agostinelli.
“Creemos que, dado solo un estado objetivo y un método para trabajar hacia atrás desde ese estado objetivo, los algoritmos de IA no solo pueden aprender a encontrar un camino hacia la meta, sino que pueden aprender a hacerlo de la manera más eficiente posible”.
A partir de aquí, los investigadores de la UCI desearían modificar el algoritmo DeepCubeA para realizar otras tareas, como la predicción de la estructura de proteínas, que podría ser útil para desarrollar nuevos medicamentos.
También les gustaría usar las habilidades de búsqueda de rutas del sistema para ayudar a los robots a navegar de manera más eficiente en entornos complejos.
Fuente: Gizmodo