Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
Get HideMyAss! VPN, PC Mag's Top 10 VPNs of 2016 for 55% off for a Limited Time ×
Toys Classic Games (Games) Hardware Hacking Robotics Build

To Solve a Rubik's Cube In 1 Second, It Takes a Robot 100

The Next Web features a quick look at an eyebrow-raisingly fast Rubik's Cube-solving robot, created by developers Jay Flatland and Paul Rose. How fast? The robot can solve a scrambled cube in one second (as long as you're willing to round down consistent solutions in "less than 1.2 seconds") which makes for some fun repeat views on YouTube. One speed-shaving element of the design: Rather than grip the cube with a robot hand, Flatland and Rose essentially made the cube an integral part of the system, by drilling holes in the cube's center faces, and attaching stepper motors directly. (Also at Motherboard).
This discussion has been archived. No new comments can be posted.

To Solve a Rubik's Cube In 1 Second, It Takes a Robot

Comments Filter:
  • by ls671 ( 1122017 ) on Monday January 25, 2016 @01:57AM (#51363959) Homepage

    OMG, it runs on linux!

    • by Anonymous Coward

      Does it use systemd?

    • by Anonymous Coward

      With windows it would take 11.2 seconds if you plugged in a mouse or cd-rom at the same time.

    • And uses 3-D printed parts!!
  • So? (Score:5, Funny)

    by sunderland56 ( 621843 ) on Monday January 25, 2016 @02:18AM (#51363993)

    With all the power of robotics, you've taken a task that takes a human less than five seconds [youtube.com], and reduced it to 1.2 seconds? Wow. I'm impressed.

    • by ls671 ( 1122017 )

      I wonder how much optimization they could still do. One thing I can think of is the web cams used to monitor progress. They don't mention they are anything special. Maybe lab type cams could reduce latency.

      • by ls671 ( 1122017 )

        Well, unless they just take a single snap shot before they actually press the start button and go from there. Thinking of it, that's probably what they do. Maybe they wait for the start button to get pressed before taking the snap shot, that would be interesting to know...

        • by ls671 ( 1122017 )

          While at it, how much time does a player get to look at the cube before beginning to actually change its configuration in Rubik cube tournaments and world records (e.g. before the chronometer starts) ?

          • While at it, how much time does a player get to look at the cube before beginning to actually change its configuration in Rubik cube tournaments and world records (e.g. before the chronometer starts) ?

            A3a1 [worldcubeassociation.org]) The competitor is allotted a maximum of 15 seconds to inspect the puzzle and start the solve.

            • It's been shown no cube is more than 20-something twists from being solved. I memorized a solution book, and just part of it, sufficient to solve any cube when I was a kid.

              The rest is just mechanical manipulation. Should robot-specific cubes be allowed, with faced bolted to the robot? Or special grip attachments on the faces? Special bearings inside that won't jam or melt?

              • by ls671 ( 1122017 )

                Makes sense, thanks. I ain't knowing much about Rubik cubes as per my posts although I intuitively felt that way. Thanks.

      • Re: (Score:2, Insightful)

        by Anonymous Coward

        Well, as the summary says it's not a stock Rubik's cube but rather one that has been modified and permanently installed into the system.
        That means that they don't really need to monitor the progress optically. They just need to keep track of how much the stepper motors have turned.

        Since you can't place a stock cube in there I also don't really see the point of having the physical manifestation. If they were to render a cube on a display they could easily get the time down to 10ms.

        Instead of building a Rubik

        • by Pikoro ( 844299 )

          Actually, it's not a permanently installed cube. The take it out to scramble it up. Also, when scrambling, they block one of the cameras so it can't come up with a solution until they remove the blind. Impressive, but I think the speed is limited by how fast you can actually spin the cube faces.

          • > but I think the speed is limited by how fast you can actually spin the cube faces.

            I imagine the limits here are how fast you can turn your steppers against the friction combined with how fast you can turn the faces before he internal surfaces melt. It's possible that this cube doesn't melt simply because the operation only lasts a fraction of a second. Perhaps if this turn rate were sustained it'd fuse the internal surfaces. THAT experiment I want to see!

            Yes, even though competition cubes are very fast

          • by KGIII ( 973947 )

            I wonder how quickly it can be done in just software - with no physical manifestation at all? While I've never bothered learning the mechanism, I am given to understand that they are actually significantly easier to solve than one might think, requiring no more than a couple of dozen moves at absolute worst. I also understand that once you learn a half-dozen or so 'solutions' then the thing is fairly trivial to solve and the only thing to do after that is pick up speed. I suspect that it can be done entirel

        • by tlhIngan ( 30335 )

          Well, as the summary says it's not a stock Rubik's cube but rather one that has been modified and permanently installed into the system.
          That means that they don't really need to monitor the progress optically. They just need to keep track of how much the stepper motors have turned.

          Since you can't place a stock cube in there I also don't really see the point of having the physical manifestation. If they were to render a cube on a display they could easily get the time down to 10ms.

          All solvers, be it human or

          • by lgw ( 121541 )

            Basically once you scan in the cube and figure out the squares, you solve it based on the known algorithms and moves to get it to the solved state

            That's simply not true.

            The best cubers are simply looking ahead. Some have memorized hundreds of patterns and algorithms, some just a couple dozen, but most of the time solving a cube is spent on the first two layers, which is fairly straightforward algorithmically. The big speed up comes from thinking about how the cube will look when you're done with the current set of moves, so your next algorithm is already chosen when it's needed. But you're constantly looking at the cube, because you're only thinki

      • I personally like that they did this using components that are easily available to you average nerd. Barring some mysterious process that isn't evident, for me personally, the most difficult part of re-creating the project would be writing the code for the image recognition (only because it's something I've never done before.) Building the models for 3D print, solving the algorithm, and controlling the stepper motors with Arduino seems pretty straightfoward.

      • by drolli ( 522659 )

        The mos important optimization would not to use webcams, but have 54 dedicated sensors for the colors whioh you feed directly to the microcontroller, But since they use the webcams only in the beginning i dont think this would change much.

    • We need to protect the jobs of all the Rubik's cubes players. What else will they do all day? Destroy the robot!!!!

      • by Ichijo ( 607641 )

        I think the robot can only solve the first cube faster than a human, otherwise you could dump 50 cubes into a hopper and the machine would finish solving the last one about 60 seconds later. Now that would be impressive!

        So change the rules to require the participant to solve, let's say 3 cubes.

    • With all the power of robotics, you've taken a task that takes a human less than five seconds [youtube.com], and reduced it to 1.2 seconds? Wow. I'm impressed.

      That's what she said.

    • i got mine 30 years ago and i'm nearing the completion of 1 side.

    • When I was a boy the way to do a Rubik's cube was to pull it to pieces and put it back together. But drill holes in it? Sheesh. Kids these days.
  • I've seen video of a guy doing it in about 3.5 seconds, without drilling holes in it.
  • by mattyj ( 18900 )

    Not an unmodified cube. This is more like a robot that *is* a Rubik's Cube.

    • by serbanp ( 139486 )

      I'm pretty sure that they could come up with a method of attaching the centers to the stepper motors without requiring hole drilling.

      However, turning the faces faster and faster requires both extreme force and very careful over- and under-shoot control. Eventually, the inertial forces will be so high that the cube will disintegrate (its corners will fly away as their little holding ledges break off).

      • by Barny ( 103770 )

        In the video they actually talk about the controller for the motors having acceleration curves programmed in.

      • by lgw ( 121541 )

        I'd be much more impressed with a robot that could solve a 4x4 cube. 3x3 is a sort of special case where you can just turn the centers and thereby turn the faces. Larger cubes have internal layers that are more mechanically complicated to turn, and even-sized cubes don't have a center cell to drill into to turn the face.

        • It's hardly a special case. Rather the case of cubes with an odd as opposed to even number of divisions.

    • This is more like a robot that *is* a Rubik's Cube.

      Whoa. So then the robot is solving itself.

      My mind is, like, totally blown...

    • Exactly. It's a robot in the same way that industrial automation is classified as robotics.
  • by nuckfuts ( 690967 ) on Monday January 25, 2016 @04:40AM (#51364229)
    From the video:

    The Arduino is responsible for controlling highly-tuned acceleration / deceleration curves to drive the stepper motors.

    This is very similar to the way mechanical hard drives position their read/write heads via magnetic coil. Depending on the distance (number of cylinders) that the heads need to travel across, a proportional amount of current is applied to accelerate the arm with the heads attached. After just a few milliseconds, however, the heads need to start decelerating in order to come to rest precisely over the desired track without overshooting.

    With both the Rubik's Cube and the hard drive, a physical object needs to be moved and then come to rest precisely in the blink of an eye. It's quite a neat trick of engineering.

    • by Anonymous Coward
      Carefully-timed acceleration and deceleration are things that would need to be done to drive a voice coil, which is what modern hard drives use. Stepper motors, on the other hand, just need to be sent a discrete number of pulses (one per "step", hence their name) in order to end up where you want them to be, which is why they're used in floppy drives, really old hard drives, flatbed scanners, and other such things.
    • . . . That every CNC Mill and 3D Printer have to do as part of their normal operations.

      In an open loop system, you MUST tune the PIDs, in a closed loop system, they can tune themselves. Theres nothing new or marvelous about this. Its not 'quite a neat trick of engineering', its just a basic PID controller.

      • by thegarbz ( 1787294 ) on Monday January 25, 2016 @02:18PM (#51367337)

        its just a basic PID controller.

        I work with PID controllers very frequently. I still consider them a damn amazing and neat trick of engineering. Just because something becomes common shouldn't mean that we stop marvelling at the genius thought that went behind creating it.

        • its just a basic PID controller.

          I work with PID controllers very frequently. I still consider them a damn amazing and neat trick of engineering. Just because something becomes common shouldn't mean that we stop marvelling at the genius thought that went behind creating it.

          Yeah. Just try writing your own PID-controller algorithm from scratch. No libraries — Do it from scratch.

          DOUBLE-RESPONSE POST: Mechanically, the guys in the video could have instead used some super-strong suction cups or glue. So, the cube is not necessarily a part of the robot.

          • Done that, actually everyone I work with has. It's quite a common university exercise. The lecturers then like catching out the people who forget about implementing things like anti-windup.

            The theory behind it is not difficult. But I'm still blown away at what can be considered off the shelf engineering these days.

            • Done that, actually everyone I work with has. It's quite a common university exercise. The lecturers then like catching out the people who forget about implementing things like anti-windup.

              The theory behind it is not difficult. But I'm still blown away at what can be considered off the shelf engineering these days.

              Yes indeed. I used to teach a senior-level class in LabView (w/lots of hands-on bread-boarding, etc., so not just a programming class). I pushed very hard each year for at least one student group to choose, as their final project, the task of writing and implementing a PID controller, in this case to control a furnace. None of them ever took up the challenge, but instead came up with other sense-and-control projects –some of which turned out to be more difficult than making a PID-controller. I tol

  • Not the first (Score:2, Informative)

    by Anonymous Coward

    This one uses quite a long time to prepare but the solve itself is around 1 second

    https://www.youtube.com/watch?v=laPVTrzGDpA

  • by drinkypoo ( 153816 ) <martin.espinoza@gmail.com> on Monday January 25, 2016 @07:21AM (#51364485) Homepage Journal

    If you have modified the toy, it is no longer a Rubik's Cube. It is some other thing.

    • by Paul Rose ( 771894 ) on Monday January 25, 2016 @10:00AM (#51365149)
      That is a valid point of view.
      The modifications are within those allowed by the WCA for human competitions.
      Also the current Guinness record holder has done an even deeper modification ( which was the inspiration for us to go this route ).
      Paul Rose ( the one from the video that doesn't talk )
      • by lgw ( 121541 )

        I've seen videos of a robot that didn't need holes drilled - it used small suction cups. No idea how reliable that is - I'm guess not very or you would have gone that way?

        Does your robot follow the usual set of algorithms a human would use, or have you gone deep into the group theory to produce a much larger set of algorithms to trim off a few moves?

  • Go into the virtual world where you don't have to worry about such mundane things as a physical cube, and you can twist and turn the cube in nanoseconds, probably solve it in well under a microsecond.
  • by Pseudonymous Powers ( 4097097 ) on Monday January 25, 2016 @10:22AM (#51365253)

    "Behold, my robot can solve a Rubik's cube in less than a second!"

    [He pushes the button. There is a whirr of motion, and a flash.]

    "Uh... well, as you can see, after the procedure, the cube is a bit too... on fire... to read. But rest assured, if it weren't charred, and, um... also, if it were still a cube, I guess... then each side would be a single color. Uh, a single other than black, I mean. Impressive, no?"

    [The audience is silent.]

    "Uh... ta-daaaa!"

  • This is a trivial task for a human, even more so for a computer. The bulk of the time is taken up simply moving the cube. The computer already knew the solution it was going to use before it even started moving the thing. What's the point of this anymore? The computer can come up with a solution in sub-1-second if you simply remove the physical cube and simulate it.

To get something done, a committee should consist of no more than three persons, two of them absent.

Working...