Balance Challenges in Humanoid Robot Competition
At the recent KHR 9th Anniversary KONDO Battle in Tokyo, humanoid robots competed in a Robo-One style tournament. All the robots involved in this event are sophisticated machines built by dedicated hobbyists. But as you can see in the video of the final championship bout, even the best of them sometimes have trouble staying on their feet.
CoChromkid is the green-and-black robot that starts on the left; Cavalier is the one on the right that, to be blunt, keeps falling on its face.
So what’s going on here? You can see that Cavalier is leaning a little bit too far forward the whole time; its center of mass is way out over its toes, and when it makes almost any movement, that center moves outside the support polygon, and he falls over. In the previous match (which Cavalier won), its weight was too far back, and the bot fell over backwards several times. Probably the builder tried to compensate, and overdid it a bit.
The more general lesson here is: balance is hard! Most humanoids hold their center of mass quite high, which is necessary to get decent speed and maneuverability. But this makes staying on your feet a challenge. The best robots today use dynamic balancing, in which an internal IMU feeds into a control algorithm that dynamically adjusts the bot’s stance to stay balanced. But if these sensors drift, or some error term in the control loop grows too large, they can end up causing as many problems as they cure.
One thing that might help would be a sort of “trim” control which the robot operator can dynamically adjust during a match. It must have been incredibly frustrating for Cavalier’s operator to realize that his bot was falling over whenever it made a move, and be unable to do anything about it. A balance trim would have let him shift the robot’s pose back a hair, regaining its balance, getting on with the match, and — who knows? — maybe snatching victory from the jaws of defeat. This approach would work for robots with or without any dynamic balancing.
For dynamic balancers, another strategy would be to use multiple sensors. In this case, force sensors in the feet might have been able to register too much weight was on the front, and too little at the back, and use this information to adjust the balance control loop automatically. This is roughly what we do: our brains take into account information from our inner ears, the soles of our feet, and our eyes, and combine all this to maintain our balance so well that we usually aren’t even aware of it.
None of this is easy, but that’s part of what makes humanoid robotics so much fun. Hats off to all the competitors, and to anyone who’s working on a humanoid robot!