Archive for June, 2014

As if I didn’t think already that every robotic engineer has a nerd (not so) deep inside …


You are never going to guess what Festo robotics has recently designed! You did? Drats! Maybe Doc Ock shot was a giveaway and whatnot. They claim that they got the idea from elephant trunks. I beg to differ, but whatever.


Originally, in Spiderman comics Doc Ock’s arms were simply tools, controlled by his brain. In Spiderman 2, however, it is stated that they are equipped with microcontrollers to gain some autonomy (and, hence, become robots). Believe it or not, this approach is actually scientifically sound. Shared control (or shared autonomy) is traditionally used when a human needs to control something very complex. In order to reduce the required mental load, the equipment to be controlled is robotized (adding sensors and a processor) and allowed to make some decisions on its own. Think, for example, of the stabilizers of a drone team. Big decisions go to the human, but other aspects go to the system instead.

The key novelty with the new octo-arms (besides looking simply cool) is that they are capable of learning (and, one would expect, safeguarded against turning evil). Instead of carefully designing the algorithms to move one way or another, they simply mimic how elephant trunks move and learn.

Learning by imitation is actually not that simple. First, motion of whatever the robot is going to mimic needs to be analyzed and parametrized. Then, obtained motion coordinated need to be translated into the body structure of the robot. Inverse Kinematics -also used to map whatever an actor does into a virtual character- usually do the trick for you. Lets think for example of a robot arm with an elbow. Each articulation in the arm (e.g. shoulder, elbow, wrist …) is equipped with a motor that allows only a set of movements. For example, human elbows only bend in a specific way and wrist will only rotate that much (unless you are in a Steven Seagal movie). Each motor is consequently represented by a set of equations that define allowed movements. All motors as a whole define the arm kinematics.



Now, if we have a sensor that determines the location in 3D space of an object we want to grab, we need to move the tip of the arm towards that location, but the tip does not move alone: all motors in the arm need to operate together to reach the goal. This, obviously, become a system of equations that needs to be solved. Now imagine a Doc Ock arm with dozens of motors that need to move in synchrony. This is how complex obtaining an analytical solution to the problem is.

In order to make the process faster, we could actually observe how a real arm operates when a person wants to reach a given object. Observation gives us an idea about the relative position of all the joints in the arm, so we can limit drastically the complexity of our system. Although objects won’t usually be in the same position and all, the robot processor can make small adjustments to adapt to its current needs. This process is call learning by imitation and it is widely used in bio-inspired robots, like the Essex fish.

Wanna know more? Visit Maja Mataric’s website on Learning by Imitation