1

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.

Ryan
  • 53
  • 9
  • 1
    Not really a programming question. Probably better asked at http://mathematics.stackexchange.com – RBarryYoung Jul 17 '17 at 17:25
  • 1
    Apparently, convergence is 20: http://www.popsci.com/science/article/2010-08/gods-number-revealed-20-moves-will-solve-any-rubiks-cube-position – RBarryYoung Jul 17 '17 at 17:28
  • 1
    [Every position of Rubik's Cube™ can be solved in twenty moves or less.](http://www.cube20.org/) – Bill the Lizard Jul 17 '17 at 17:28
  • Thanks guys. I did not realize this cuz I thought there might be some algs to solve it so I posted here. – Ryan Jul 17 '17 at 23:04

1 Answers1

3

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.

btilly
  • 43,296
  • 3
  • 59
  • 88