Any algorithm related to Rubik's Cube

275 views Asked by At

I got an interesting idea yesterday. Imagine you have a Rubik's Cube with already same colours on each face. Now, if I twist it once and I know how I twist it, I could always recover the cube to its original by reversing this step. If I twist twice, I could always recover the cube with minimum reversed two steps. So I am thinking that If I randomly twist n steps, there could always be n steps to reverse the cube to the original.

However, I think when n gets larger, the minimum steps to do the reversing may be less than n because there would be some certain sequence of steps that can use less steps to achieve the same effect when using more steps.

For example, if n=100, it may have the same pattern when n=30, so it is equivalent to n=30. Then maybe I could use an operation of m steps to reduce n to 20 but m is less than 10.

So I am thinking that no matter how big is n, it will always converge to a
small number which means no matter how the Rubik's Cube initially, I could always recover it to its original in less than or equal to k steps, where k is the convergence of n.

My question is if there exists an algorithm that can be used to find the convergence of n? I guess some things in graph theory or group theory would be helpful.

1

There are 1 answers

1
btilly On

There is an algorithm, and there is a known solution. The answer is 20.

See http://www.cube20.org/ for the history of the problem, and the source code for how the answer was demonstrated.