Comment ça marche
AlphaCube s'appuie sur la méthode d'apprentissage profond de EfficientCube (TMLR'23), en introduisant des fonctionnalités pour une expérience de résolution plus flexible et puissante.
Les fonctionnalités clés incluent :
- Un compromis fluide entre vitesse et qualité, contrôlé en ajustant la largeur de la recherche.
- La résolution ergonomique, qui biaise la recherche pour trouver des solutions plus rapides à exécuter pour des mains humaines.
Ces fonctionnalités sont rendues possibles par la nature probabiliste de la méthode sous-jacente.
La méthode de base : EfficientCube
Au cœur de son fonctionnement, AlphaCube utilise un réseau de neurones profond (DNN) entraîné pour prédire la probabilité que des mouvements rapprochent un cube mélangé de l'état résolu. Le solveur applique séquentiellement les meilleurs mouvements pour trouver une solution.
En coulisses, au lieu de ne choisir qu'un seul mouvement, le DNN produit une distribution de probabilité sur tous les mouvements suivants possibles, évaluant la qualité de chaque candidat.
En utilisant ces probabilités, le solveur emploie un algorithme de recherche en faisceau (beam search) pour explorer un ensemble limité des séquences de mouvements les plus prometteuses. En ajustant le paramètre beam_width
, vous contrôlez le nombre de séquences explorées, ce qui vous permet d'échanger du temps de calcul contre des solutions plus courtes et de meilleure qualité.
Solutions optimisées pour la vitesse
En tirant parti du cœur probabiliste, AlphaCube peut trouver des solutions qui ne sont pas seulement courtes, mais aussi ergonomiques. Ceci est réalisé en appliquant un biais ergonomique.
En fournissant un dictionnaire de préférences de mouvements (ergonomic_bias
), vous définissez une sorte de distribution de désirabilité. Le solveur combine cela avec les probabilités prédites par le modèle, orientant la recherche pour favoriser les mouvements qui sont à la fois quasi-optimaux et faciles à exécuter, ce qui conduit à un temps d'exécution minimal.
Cela recadre la recherche comme la découverte du chemin le plus court sur un graphe pondéré, où les poids des arêtes représentent leur facilité d'exécution. En ajustant le biais selon vos préférences, vous obtenez des solutions qui ne sont pas seulement efficaces, mais qui sont véritablement optimisées pour vos doigts.