19 votes

Watch a six-axis motor solve a Rubik’s Cube in less than a third of a second

10 comments

  1. [9]
    mat
    Link
    So this is cool just because, but the thing that's been bugging me about it is that I can't seem to find out if the robot is allowed to 'look' at the cube ahead of time. In human speedcubing, the...

    So this is cool just because, but the thing that's been bugging me about it is that I can't seem to find out if the robot is allowed to 'look' at the cube ahead of time.

    In human speedcubing, the human is allowed to examine the cube with the clock off, then put it down, clock starts on picking it up again, cube cube cube, hands off when complete - time. But I don't think that's how it's done for the machine record. I think they start the clock when the camera shutter opens (be that soft or hard) and it goes from there.

    If anyone has any information it would be much appreciated. 0.3 seconds is cool, but seems rather less impressive if it's just running a bunch of precomputed gcode. But if that's all it is doing, why is there a camera?

    11 votes
    1. [3]
      DeaconBlue
      Link Parent
      I suspect that this part of the equation is kind of irrelevant. Those servos are fast, but they are so much slower than a computer solving the cube.

      So this is cool just because, but the thing that's been bugging me about it is that I can't seem to find out if the robot is allowed to 'look' at the cube ahead of time.

      I suspect that this part of the equation is kind of irrelevant. Those servos are fast, but they are so much slower than a computer solving the cube.

      9 votes
      1. [2]
        mat
        Link Parent
        Are they though? You've got a computer vision task, to discern the initial state of the cube. That's not trivial. Then you have to find a solution and while any cube can be solved in 20 steps,...

        Are they though? You've got a computer vision task, to discern the initial state of the cube. That's not trivial. Then you have to find a solution and while any cube can be solved in 20 steps, there are still 43,252,003,274,489,856,000 possible states that a cube can start in. I know computational ways to solve cubes exist, but are they fractions of a second fast?

        It's all interesting engineering, whether we're talking about the software or the hardware.

        1 vote
        1. Berdes
          Link Parent
          A somewhat naïve algorithm for this would be a bidirectional BFS. That would only require exploring roughly the square root of all possible states, so about 6.5 billion states. Well implemeted, I...

          A somewhat naïve algorithm for this would be a bidirectional BFS. That would only require exploring roughly the square root of all possible states, so about 6.5 billion states. Well implemeted, I would expect this to run in 1-10s without any multithreading on a good computer.
          I'm sure people have developed significantly better algorithms to solve this problem than my initial suggestion. So yes, finding the best route to solve a Rubik's cube is 100% something that can be done in fractions of a second.

          5 votes
    2. [3]
      fxgn
      Link Parent
      Solving the cube is actually the least complicated part of it. It has been long proven that every possible shuffle of the Rubik cube can be solved in under 20 moves, and there are existing...

      Solving the cube is actually the least complicated part of it. It has been long proven that every possible shuffle of the Rubik cube can be solved in under 20 moves, and there are existing algorithms which calculate this shortest path (see an example here, it also mentions the algorithm that they use). I don't know how fast those algorithms are, but I assume that with an optimized algorithm and a powerful processor it's possible to solve a Rubik's cube in less than a second. I think this world record is more a hardware showcase rather than a software one.

      9 votes
      1. Berdes
        Link Parent
        Interestingly enough, the fastest solution in number of moves might not be the best for such robot. I remember reading about some previous records where they tweaked the solving algo to prefer...

        Interestingly enough, the fastest solution in number of moves might not be the best for such robot. I remember reading about some previous records where they tweaked the solving algo to prefer some move sequences that the robot could perform faster. One of the most obvious case is the possibility of turning opposite sides at the same time. Similarly, measures of "numers of moves" will topically count a 180 degrees turns as either 1 move or 2, but for the robot it's likely somewhere in between those two values.

        6 votes
      2. mat
        Link Parent
        I know it's not complicated, but there are 43 quintillion possible states a cube can be in so there is some compute overhead and possible optimisation here, if it's part of the record. All I want...

        I know it's not complicated, but there are 43 quintillion possible states a cube can be in so there is some compute overhead and possible optimisation here, if it's part of the record.

        All I want to know is whether this is a record for two things, or one. It's not strictly a complex problem, but it's being done very fast so even simple things matter.

        1 vote
    3. [2]
      Eji1700
      Link Parent
      I have no idea what the answer is, but I do find it impressive that the thing can move that quickly, and perhaps more importantly, that the cube doesn't viscerally annihilate itself in the process.

      I have no idea what the answer is, but I do find it impressive that the thing can move that quickly, and perhaps more importantly, that the cube doesn't viscerally annihilate itself in the process.

      5 votes
      1. mat
        Link Parent
        Let me introduce you to.... cube lube!

        Let me introduce you to.... cube lube!

        4 votes
  2. NoPants
    Link
    What amazes me is the human world record is 3 seconds. Plus 15 seconds to review the cube. If you count the time it takes to load the cube into the machine as well as solve the cube, the human...

    What amazes me is the human world record is 3 seconds. Plus 15 seconds to review the cube.

    If you count the time it takes to load the cube into the machine as well as solve the cube, the human must be significantly faster.

    7 votes