Skip to content

Large Storage Research

Gene Cooperman (Northeastern)Gene Cooperman of Northeastern University received an NSF grant in order to put together a system that can store 10-20 TB of data, as reported by Computerworld. This grant is getting some press since one application he talks about is storing configurations of a Rubik’s Cube. From the Computerworld article:

Cooperman, director of the Institute for Complex Scientific Software at Northeastern University in Boston, is studying Rubik’s Cubes as a way of setting up machines to study combinatorial problems in science and operations research. He wants to record as many different states of the Rubik’s Cube as possible, which he says will exceed the 20TB of capacity the $200,000 National Science Foundation grant recently afforded him.

Cooperman said that what he learns about the cube could be applied to operations research problems with business applications, such as determining the most efficient way to move goods to consumers.

“Operations research is about efficiently using resources,” he said. “The Rubik’s Cube is the same kind of mathematical problem.”

The article doesn’t go into detail of why one might be interested in storing such a thing. The reason is, as always in operations research, how one would use such storage. Gene’s annotated bibliography of his research (a very handy thing that we should all be doing), gives a bit better insight:

I was led to issues of groups of transformations, groups of symmetries, and presentations (defining equations for a group). Since Larry Finkelstein at Northeastern University was kind enough to give me an introduction to the field of computational group theory, which was still at a relatively early stage when I entered it, and I found much to do in building up the appropriate computational tools. These tools were sharpened and tried on some large applications. There were some early successes. For example, a one Megabyte data structure was pre-computed by which any state in Rubik’s 2 x 2 x 2 cube (Rubik’s cube with corners only) can be solved, and the shortest sequence of moves can be written out in a few milliseconds. (I found that Rubik’s cube can always be solved in at most 11 moves.)

So by storing configurations of the cube, algorithms can be applied to precompute solution approaches.

These issues of computational group theory have many other applications in operations research. My colleague here at Carnegie Mellon, Francois Margot, uses approaches like this to try to handle symmetries in integer programming formulations. I wonder if I can talk him into getting a 30TB machine?