Internal models of robot bodies
Robots that have an internal model of their body could potentially use it to predict how a motor action will affect their position and what sequence of actions will bring them to a desired configuration (inverse kinematics). Knowing in what state a robot’s body is can also be useful for merging sensor readings, for example to determine the position of an arm using a head mounted camera and joint angle sensors.
Ideally the model should be able to simulate all movements that are physically possible for a given robot body. For this purpose, Malte Schilling uses a special type of recurrent neural network called a “Mean of Multiple Computation” (MMC) network. The model can be used for the tasks described earlier (predictions, inverse kinematics and sensor fusion) simply by changing the values that are fed as input to the network. However, work so far using MMC networks has been limited to 2D or simple 3D scenarios. For more general 3D models, Schilling introduces dual quaternions as a suitable representation of the kinematics of a body.
Experiments were done in simulation using a three-segment arm. The task was to reach for targets in 3D space, beginning at a predefined starting position. Results shown in the figure below depict the successful robot motion using this model. Unlike other models in the literature, the MMC network does not require the precomputation of the complete movement, it is able to deal with extra degrees of freedom and it can accomodate external constraints.
In the future, authors hope to build a network that can represent a complete body, for example, the body of a hexapod walker with 18 joints and to use this body model for planning ahead.