March 9, 2018 weblog
Don't blink now: Robot does speed cube puzzle solution in 0.38 seconds
A robot (home-made, mind you) can solve the cube in 0.38 seconds. That represents the time "from the moment the keypress is registered on the computer, to when the last face is flipped," said Ben Katz in his blog about the feat. He collaborated with Jared Di Carlo to create the robot.
That smashes a record. Ars Technica's Timothy Lee said solving the puzzle in 0.38 seconds marked "a 40-percent improvement over the previous record of 0.637."
You can watch the "0.38 Second Rubik's Cube Solve" video posted by Katz on Wednesday. You can read about how he and Di Carlo accomplished this through their blog posts. Katz blogged about their machine and process, dubbed "The Rubik's Contraption." Katz is a masters student at the Biomimetic Robotics Lab, Massachusetts Institute of Technology.
Jared Di Carlo on The Cactus Zone site said, "Recently, Ben Katz and I collaborated on a Rubik's Cube solving robot to try to beat the world record time of 0.637 seconds, set by some engineers at Infineon. We noticed that all of the fast Rubik's Cube solvers were using stepper motors, and thought that we could do better if we used better motors."
They used Kollmorgen ServoDisc motors. They chose for their high torque-to-inertia ratio. "The motor is coreless," said Di Carlo, "so there are no heavy steel laminations on the rotor, and there's no steel to saturate, so it can accelerate insanely fast. In a 10 ms quarter-turn move, the motor reaches over 1000 rpm."
They used 6 motors, 6 custom motor drivers, 2 PlayStation Eye cameras and, for the cube "One of the cheapest available."
Lee in Ars Technica said the PlayStation items were to detect the current state of the cube; Katz and Di Carlo acquired a pair. "They positioned them at opposite corners of the cube, allowing each camera to observe three faces." Lee said the cameras had trouble distinguishing red and orange, so the two collaborators painted orange faces black.
Di Carlo said, "The machine is solving a "YJ Yulong Smooth Stickerless Speed Cube Puzzle." He said they used the cheapest cube they could find on Amazon Prime, as they thought they would end up destroying many of them.
Software for cube-solving-robot? You can find it on GitHub. They turned to OpenCV for color detection. The software identified the colors, built a description of the cube, and passed it to the min2phase solver.
"The resulting solve string is converted to a compact cube sequence message, and is sent to all motor controllers simultaneously using a USB to serial adapter connected to a differential serial IC." The process, he said, takes around 45 ms. "Most of the time is spent waiting for the webcam driver and detecting colors."
Taking a bigger picture view, Jared Weintraub in 9to5Toys said, "The classic 1980's children's toy, the Rubik's Cube has remained a staple to this day for scientists, mathematicians and nerds alike. Completing the puzzle in minutes has been achieved by a few bright individuals and in recent years, researchers have trained robots to complete the task in a matter of seconds. "
This humans-robot quest for quick solving in competitive mode fetches interesting reactions via comments regarding such an accomplishment.
A few were not impressed, not because of the time, but because of the very effort to make a machine crank out the completed sides. Like, what is the point?
"Rubik's cube was designed to amuse people," said one comment. "Possibly work on problem solving skills." Another comment: "Well, if it figured it out on its own that would be very impressive..."
© 2018 Tech Xplore