A new system invents hardware architectures to speed up robot response time.
Contemporary robots can move quickly. “The engines are fast and powerful,” says Sabrina Neuman.
However, in complex situations, such as interacting with people, there are often robots no move quickly. “What’s going on in the robot’s head is blocking it,” he added.
Detecting stimuli and calculating the response takes a “high computational load,” which limits reaction time, says Neuman, who recently earned his Ph.D. WITH ONE Computer and Artificial Intelligence Laboratory (CSAIL). Neuman has found a way to deal with this imbalance between a robot’s “mind” and body. A method called robomorphic computing uses the robot’s physical design and predicted applications to create a custom computer chip that minimizes the robot’s response time.
Advances can fuel a variety of robotic applications, including primary care in infectious patients. “It would be wonderful to have robots that will help reduce the risk to things and hospital staff,” says Neuman.
Neuman will present the research at the April International Conference on Architectural Support for Programming Languages and Operating Systems. MIT authors include graduate students Thomas Bourgeat and Srini Devadas, Professor of Electrical Engineering Edwin Sibley Webster and Dr. Neuman’s consultant. Other co-authors include Brian Plancher, Thierry Tambe and Vijay Janapa Reddi, all from Harvard University. Neuman is a NSF Computing Innovation Fellow at Harvard School of Engineering and Applied Sciences.
According to Neuman, there are three main steps in the operation of the robot. The first is perception, including the collection of data through sensors or cameras. The second is mapping and location: “From what I’ve seen, they need to build a map of the surrounding world and then locate it within that map,” Neuman says. The third step is to plan and control the movement, that is, to propose a course of action.
These steps can take a tremendous amount of time and computing power. “For robots to spread into the field and function safely in dynamic human environments, they need to think and react very quickly,” says Plancher. “Current algorithms cannot run on the current CPU hardware fast enough”.
Neuman added that researchers have been researching better algorithms, but he believes that software improvements alone are not the answer. “It’s pretty new that you can also study better hardware.” This means going beyond the standard CPU processing chip that makes up a robot’s brain, with the help of hardware acceleration.
Hardware acceleration is the use of a specialized hardware unit to perform certain computational tasks more efficiently. The most commonly used hardware accelerator is a graphics processing unit (GPU), a chip that specializes in parallel processing. These devices are useful for graphics because their parallel structure allows them to process thousands of pixels at once. “A GPU isn’t the best of all, but it’s the best for what it’s built for,” says Neuman. “You get higher performance for a particular application.” Most robots are designed with a set of planned applications, so they can take advantage of hardware acceleration. Therefore, Neuman’s team developed robomorphic computing.
The system creates a custom hardware design to best meet the computing needs of a particular robot. The user enters the parameters of a robot, as well as the design of the limbs and how their different joints can be moved. Neuman’s system converts these physical properties into mathematical matrices. These matrices are “scarce,” which means that due to the particular anatomy of the robot, they have a large number of zero values that are consistent with impossible movements. (Also, the movements of your arm are limited, as it can only bend at certain joints, not flexible spaghetti noodles.)
The system then designed the hardware architecture to compute only non-zero values in the matrices. As a result, the chip design is adapted to maximize the efficiency of the robot’s computing needs. And that personalization paid off in the tests.
The hardware architecture designed using this method has outperformed the CPU and GPU drives of a particular application. While Neuman’s team did not manufacture specialized chips from scratch, they programmed a customizable field-matrix portal (FPGA) chip based on system suggestions. Although it ran at a slower clock speed, this chip was eight times faster than the CPU and 86 times faster than the GPU.
“I was pleased with those results,” Neuman says. “Even though it was hampered by the low speed of the clock, we made up for it by being more efficient.”
Plancher sees the vast potential of robomorphic computing. “Ideally, we can eventually create a custom chip to plan movements for each robot so they can quickly calculate safe and efficient movements,” he says. “I wouldn’t be surprised if every 20 years from now every robot gets custom computer chips, and it could be one of them.” Neuman adds that robomorphic computing allows robots to mitigate risk to humans in a variety of settings, such as caring for covid-19 patients or manipulating heavy objects.
“This work is exciting because it shows how specialized circuit designs can be used to accelerate a basic component of robot control,” says Robin Deits, a robotics engineer at Boston Dynamics who was not involved in the research. “Software performance is critical to robotics because the real world never waits to finish thinking about robots.” He adds that Neuman’s advances could allow robots to think faster, “unlocking exciting behaviors that were computationally difficult at first.”
Neuman intends to automate the next robomorphic computing system. Users will simply drag and drop the robot’s parameters, and “the hardware description is taken from the other end. I think that’s what will push it from the edge and be really useful. “
This research was funded by the National Science Foundation, the Computing Research Agency, the CIFellows Project, and the Defense Advanced Research Projects Agency.