Rubik’s Cube Solver

We implemented two algoritms, in Golang:

The default one is a Thistlethwaite’s 4 phases algorithm. But instead of using huge, pre-computed prunning tables, we implemented 4 heuristics matching the 4 standard algorithm groups and which could provide sufficient estimation for an IDAstar (depthFirstSearch), performing quite well on randomly scrumbled cubes. This implementation will find short solutions (20-50 steps), but may take from a few seconds to few minutes to return.

The second one is a “Human” algorithm. Based on “CFOP” method. It uses several algorithms to solve known configurations as it evolve to solution.

See :

Although providing big solutions, the computational time is near from zero.

Oddly satisfying !

Code at

Leave a Reply

Your email address will not be published. Required fields are marked *