Click. Whir. Flash. This Robot Solves a Rubik's Cube.
Years from now, when the rest of us are working for — or at least using tools built by — Pacific University computer science majors Damon Holland ‘22, Logan Jepson ’22 and John Duong ’22, we’ll remember that their parting gift as students was a robot that solves Rubik’s Cube faster than a human ever has.
For their combined senior capstone project, the three students each brought specialized skills. Jepson built and assembled the device using a 3-D printer and mechanical skills that harnessed the various cables, microcontrollers and motors. Holland developed the artificial intelligence that guides the device’s movements. And Duong provided the visual feedback system that “reads” the colors and orientation of the cube in a way that the software can analyze how close the cube is to being solved. All three of them write, read and manipulate code.
“We basically started in the summer, coming up with the idea for a senior project,” Jepson explained. “And Damon was really into Rubik’s Cube, so we decided to make a robot that solves Rubik’s Cubes.”
Other cube-solving machines have been built and some are even faster, but Jepson said they thought, “Maybe we can do some of the parts better.”
It’s a dazzling thing to watch the multiple motors rotate the cube so fast it blurs, and to know that the project was conceived and built entirely from scratch in less than an academic year. Click, goes the switch. Whirr, go the motorized arms. Flash, goes the digital readout, showing that this particular solution required 18 moves and 3.03 seconds.
“It was super tricky,” Jepson acknowledged, “but worth it.”
The three students, each of whom has secured a six-figure, post-graduation job, are part of a small class of computer science seniors under the tutelage of Professor Shereen Khoja. The class of 11 is completing four projects, though the Rubik’s Cube device is the only one that involves physical movement, giving it a visceral wow factor. “It’s instantly impressive,” Holland said.
Khoja said she remembers the day the students called her to say the device was working and she came running to see. As it whirred, she thought, “That’s crazy.”
While solving Rubik’s Cube may not seem a particularly practical social need, Holland pointed out that the same technologies come into play in electric, autonomous vehicles.
“One similar thing you’ll see is Teslas,” Holland said. “All three of the things we’re using now: Computer vision, being aware of your surroundings, seeing the cars around you, the streetlights. Robotics, obviously, the physical motors on the car and sensors reacting physically. And AI, which is used to route your car and interpret the information, to use the logic behind the car.”
For all the moving parts and potential pitfalls, the project “has gone pretty smoothly,” Jepson said. More smoothly, in fact, than their time at Pacific, which has been overshadowed by the COVID-19 pandemic that forced chunks of their education online and intervened with on-campus mask and distancing requirements.
Despite the social impediments, Khoja’s students continued, not just with computer science projects, but with preparing for graduation. Khoja said she and her students create and refine resumes, practice interviewing and take other steps to prepare for the job market.
It’s paid off for the three Rubik’s Cube solvers. Duong will be a software development engineer for Amazon in Seattle. Holland will continue to work for Intel in Hillsboro, Ore., where he has been interning. And Jepson will move to Madison, Wisc., to work for Epic, the health care software colossus.
They will scatter to their post-graduation lives, but they will leave Pacific the Rubik’s Cube device, a reminder of what successful computer science can look like.