Robomorphic Computing: Designing a “Brain” Tailored for Robots
The new system designs hardware architecture to speed up robot response times.
Today’s robots can move fast. “The bike is fast, and powerful,” Sabrina Neuman said.
But in complex situations, such as interactions with humans, robots often do not move quickly. “Closure is what happens in the head of a robot,” he added.
Receiving stimuli and calculating responses requires a “computational ship load,” which limits reaction time, said Neuman, who recently graduated with a PhD from MIT’s Computer Science and Artificial Intelligence Laboratory (CSAIL). Neuman has found a way to counter the discrepancy between the robot’s “mind” and this body. The method, called robomorphic computing, uses the robot’s physical layout and applications intended to produce customized computer chips that minimize the robot’s response time.
These advances could trigger a wide range of robotics applications, including, potentially, frontline medical care for infectious patients. “It would be amazing if we could have robots that could help reduce the risk to patients and hospital workers,” Neuman said.
Neuman will present his research at the International Conference this April on Architecture Support for Programming Languages and Operating Systems. Mit co-authors include graduate students Thomas Bourgeat and Srini Devadas, Professor of Electrical Engineering Edwin Sibley Webster and PhD adviser Neuman. Other co-authors include Brian Plancher, Thierry Tambe, and Vijay Janapa Reddi, all from Harvard University. Neuman is now a postdoctoral NSF Computing Innovation Fellow at Harvard’s School of Engineering and Applied Sciences.
There are three main steps in the operation of the robot, according to Neuman. The first is perception, which is collecting data using sensors or cameras. The second is mapping and localization: “Based on what they see, they have to create a map of the world around them and then localize themselves on that map,” Neuman said. The third step is the planning and control of movement – in other words, planning an action.
These steps can take a huge amount of time and computing power. “In order for robots to be placed in the field and operate safely in a dynamic environment around humans, they need to be able to think and react very quickly,” Plancher said. “Algorithms are currently unable to run on current CPU hardware quickly enough.”
Neuman added that researchers have been investigating better algorithms, but he thinks software improvements alone are not the answer. “What’s relatively new is the idea that you can also explore better hardware.” That means moving beyond the standard problem CPU processing chip consisting of the robot’s brain – with the help of hardware acceleration.
Hardware acceleration refers to the use of specialized hardware units to perform certain compute tasks more efficiently. A commonly used hardware accelerator is a graphics processing unit (GPU), a chip devoted to parallel processing. This device is useful for graphics because its parallel structure allows them to process thousands of pixels simultaneously. “The GPU isn’t the best at everything, but it’s the best of what it does,” Neuman said. “You get higher performance for certain applications.” Most robots are designed with a series of intended applications and can therefore take advantage of hardware acceleration. That’s why Neuman’s team developed robomorphic computing.
The system creates customized hardware designs to best meet specific robot computing needs. The user enters robot parameters, such as the layout of the limbs and how the various connections can move. Neuman’s system translates these physical traits into a mathematical matrix. This matrix is “rare”, meaning that it contains many zero values that roughly correspond to movements that are impossible given the specific anatomy of the robot. (Similarly, your arm movements are limited because it can only bend on certain joints – these are not very pliable spaghetti noodles.)
The system then designs a hardware architecture devoted to running calculations only on nonzero values in the matrix. Therefore, the resulting chip design is customized to maximize efficiency for the computing needs of the robot. And that adjustment paid off in testing.
Hardware architectures designed using this method for specific applications outperform ready-made CPU and GPU units. While Neuman’s team didn’t create any special chips from scratch, they programmed field-programmable gate array (FPGA) chips that could be customized according to their system’s advice. Although it operates at a slower clock rate, it works eight times faster than the CPU and 86 times faster than the GPU.
“I’m very happy with that result,” Neuman said. “Although we are hampered by lower clock speed, we compensate by being more efficient.”
Plancher sees vast potential for robomorphic computing. “Ideally we could eventually create a special movement planning chip for each robot, allowing them to quickly calculate safe and efficient movements,” he said. “I wouldn’t be surprised if 20 years from now every robot has some special computer chip running it, and this could be one of them.” Neuman added that robomorphic computing allows robots to alleviate human risks in a variety of settings, such as treating patients or manipulating heavy objects.
“This work is interesting because it shows how special circuit designs can be used to accelerate the core components of robot controls,” said Robin Deits, a robotics engineer at Boston Dynamics who wasn’t involved in the study. “Software performance is essential for robotics because the real world never waits for a robot to complete its thinking.” He added that Neuman’s progress could allow robots to think faster, “opening up interesting behaviors that previously would have been too computationally difficult.”
Neuman further plans to automate the entire robomorphic computing system. Users will simply pull and release the parameters of their robot, and “the other end appears a description of the hardware. I think that’s the thing that’s going to push him over the edge and make it very useful. “