# How to make a good 5x5 solver?



## abunickabhi (Oct 26, 2020)

Currently there are a lot of robots that can solve Rubiks cube fast and optimally. But the problem is still difficult for big cubes, as finding the optimal solution using brute force takes time. Also making a lego solver for big cubes is a mechanical challenge too. How to approach this problem if I only have a bit of idea of CS brute force algorithms, basics of servo motors and a bit about scrambling programs.


----------



## xyzzy (Oct 26, 2020)

You almost never want optimal solving for any puzzle with more than a billion or so states. What you really want is usually a reasonably short solution, as opposed to the absolute shortest possible. Just like you don't solve a cube by solving everything simultaneously, you don't ask the computer to do that either. You solve a part of it, then another part, and repeat until it's done.

With only two exceptions (IAssemble's solver and Ed Trice's solver), the low-move-count methods for solving big cubes are all adaptations of the Kociemba 2-phase algorithm to big cubes. If you really want to write your own solver, start with reimplementing Kociemba 2-phase and understanding some of the theory behind it. If you don't mind using someone else's solver, Chen Shuang has a 444 solver and a 555 solver and Daniel Walton has an arbitrary-size solver.

I have an abandonware solver for 333, 444, and all odd sizes 555 and above with the best known average move count (in OBTM) for odd big cubes 777 and up. (The decryption key is intentionally missing the last character; you can easily find it by brute force if you really want it.) This also has a Redi Cube optimal solver, an early iteration of my Loopover 4×4 optimal solver, various bits of code that were used for the 555 God's number bound calculations, among other nonsense. Hey, I'm not a professional programmer; don't call me out for bad software development practices.


----------



## abunickabhi (Oct 27, 2020)

Thanks for the reply. I have been watching cubesolving forum for the last 3 years and know about Ed and Daniel's solver. I have also checked out the binary exes of their solvers on the github repo (https://cubesolvingprograms.freeforums.net/board/6/5x5x5-solving-programs).

I see that Ed is trying AI solver nowadays. It is fun to follow that progress.
I will check out Chen's repo.

Is there any other workaround other than Kociemba's 2-phase algorithm?


----------



## Nir1213 (Oct 27, 2020)

abunickabhi said:


> Thanks for the reply. I have been watching cubesolving forum for the last 3 years and know about Ed and Daniel's solver. I have also checked out the binary exes of their solvers on the github repo (https://cubesolvingprograms.freeforums.net/board/6/5x5x5-solving-programs).
> 
> I see that Ed is trying AI solver nowadays. It is fun to follow that progress.
> I will check out Chen's repo.
> ...


i think he talked about a 1 phase alg but its big i guess


----------

