Robots operating in the real world are starting to find themselves constrained by the amount of computing power they have available. Computers are certainly getting faster and more efficient, but they’re not keeping up with the potential of robotic systems, which have access to better sensors and more data, which in turn makes decision making more complex. A relatively new kind of computing device called a memristor could potentially help robotics smash through this barrier, through a combination of lower complexity, lower cost, and higher speed.
In a paper published today in Science Robotics, a team of researchers from the University of Southern California in Los Angeles and the Air Force Research Laboratory in Rome, N.Y., demonstrate a simple self-balancing robot that uses memristors to form a highly effective analog control system, inspired by the functional structure of the human brain.
First, we should go over just what the heck a memristor is. As the name suggests, it’s a type of memory that is resistance-based. That is, the resistance of a memristor can be programmed, and the memristor remembers that resistance even after it’s powered off (the resistance depends on the magnitude of the voltage applied to the memristor’s two terminals and the length of time that voltage has been applied). Memristors are potentially the ideal hybrid between RAM and flash memory, offering high speed, high density, non-volatile storage. So that’s cool, but what we’re most interested in as far as robot control systems go is that memristors store resistance, making them analog devices rather than digital ones.
Nowadays, the word “analog” sounds like a bad thing, but robots are stuck in an analog world, and any physical interactions they have with the world (mediated through sensors) are fundamentally analog in nature. The challenge is that an analog signal is often “messy”—full of noise and non-linearities—and as such, the usual approach now is to get it converted to a digital signal and then processed to get anything useful out of it. This is fine, but it’s also not particularly fast or efficient. Where memristors come in is that they’re inherently analog, and in addition to storing data, they can also act as tiny analog computers, which is pretty wild.
By adding a memristor to an analog circuit with inputs from a gyroscope and an accelerometer, the researchers, led by Wei Wu, an associate professor of electrical engineering at USC, created a completely analog and completely physical Kalman filter to remove noise from the sensor signal. In addition, they used a second memristor can be used to turn that sensor data into a proportional-derivative (PD) controller. Next they put those two components together to build an analogy system that can do a bunch of the work required to keep an inverted pendulum robot upright far more efficiently than a traditional system. The difference in performance is readily apparent:
The shaking you see in the traditionally-controlled robot on the bottom comes from the non-linearity of the dynamic system, which changes faster than the on-board controller can keep up with. The memristors substantially reduce the cycle time, so the robot can balance much more smoothly. Specifically, cycle time is reduced from 3,034 microseconds to just 6 microseconds.
Of course, there’s more going on here, like motor drivers and a digital computer to talk to them, so this robot is really a hybrid system. But guess what? As the researchers point out, so are we!
The human brain consists of the cerebrum, the cerebellum, and the brainstem. The cerebrum is a major part of the brain in charge of vision, hearing, and thinking, whereas the cerebellum plays an important role in motion control. Through this cooperation of the cerebrum and the cerebellum, the human brain can conduct multiple tasks simultaneously with extremely low power consumption. Inspired by this, we developed a hybrid analog-digital computation platform, in which the digital component runs the high-level algorithm, whereas the analog component is responsible for sensor fusion and motion control.
By offloading a bunch of computation onto the memristors, the higher brain functions of the robot have more breathing room. Overall, you reduce power, space, and cost, while substantially improving performance. This has only become possible relatively recently due to memristor advances and availability, and the researchers expect that memristor-based hybrid computing will soon be able to “improve the robustness and the performance of mobile robotic systems with higher” degrees of freedom.
“A memristor-based hybrid analog-digital computing platform for mobile robotics,” by Buyun Chen, Hao Yang, Boxiang Song, Deming Meng, Xiaodong Yan, Yuanrui Li, Yunxiang Wang, Pan Hu, Tse-Hsien Ou, Mark Barnell, Qing Wu, Han Wang, and Wei Wu, from USC Viterbi and AFRL, was published in Science Robotics.