Site Archive (Complete)
DrDobbs Portal Blog: Rubik's Cube: Busted Again
EDITOR'S EYE

The World of Software Development.

by Jon Erickson
May 31, 2007

Rubik's Cube: Busted Again

Proving once again that nothing is sacred to programmers, computer scientists have proven that all you need to solve any configuration of a Rubik's cube is 26 moves, beating the old world's record of 27 moves.

Northeastern University Computer Science professor Gene Cooperman and graduate student Dan Kunkle were able to set this new record through two primary techniques:

  • They used 7 terabytes of distributed disk as an extension to RAM, in order to hold some large tables.
  • They developed a new, "faster faster" way of computing moves, and even whole groups of moves, by using mathematical group theory.

Cooperman and Kunkle put all of the configurations of a Rubik's cube in a family of sets of configurations (called a "family of cosets" in mathematical group theory). They then looked at the result of applying a single move to all of the configurations of a coset at once. They simulated this on a computer at a rate of 100,000,000 times per second, using a new technique in mathematical group theory. Cooperman and Kunkle used computers at Teragrid to attack the puzzle.

"The Rubik's cube is a testing ground for problems of search and enumeration," says Cooperman. "Search and enumeration is a large research area encompassing many researchers working in different disciplines -- from artificial intelligence to operations. The Rubik's cube allows researchers from different disciplines to compare their methods on a single, well-known problem."

The honor of the first optimal solution to Rubik's Cube goes to UCLA computer science professor Richard Korf who in 1997 showed that the median optimal solution was 18 moves, although he believed any cube could be solved in no more than 20 moves. However, he was unable to prove this, and no one has ever been able to prove that it could be solved in less than 27 moves.

"Korf had written a program that spends a long time to find optimal solutions for single states of the Rubik's cube," says Kunkle. “Our program first does a large pre-computation and then it very quickly -- in about a second -- finds a solution in 26 moves or less for any state of Rubik's cube."

Rubik's Cube, invented in the late 1970s by Erno Rubik of Hungary, is perhaps the most famous combinatorial puzzle of its time. Its packaging boasts billions of combinations, which is actually an understatement. In fact, there are more than 43 quintillion (4.3252 x 10**19) different states that can be reached from any given configuration.

Posted by Jon Erickson at 01:59 PM  Permalink





January 2008
Sun Mon Tue Wed Thu Fri Sat
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    


BLOGROLL
 

♦ sponsored
INFO-LINK


Related Sites: DotNetJunkies, SD Expo, SqlJunkies