Most problems in robotics have to do with a controlling a system. An easy example for a system is the forward kinematic of a robot arm. A joint in the model gets a certain value, and as the result the arm is moving to a new position in space. More complex problems are visible if a grasping task gets simulated. Here is the problem, that objects are in the system which can't moved by it's own, but need to be pushed. It's a typical example for an underactuated non-linear system.
A system which contains rigid body dynamics has a certain behavior. A box is colliding with another box and as a result they are changing their position in 3d space. Simulating a rigid body system in realtime is called a physics engine. And creating such an engine without having access to the original one is called system identification.
Machine learning is the natural choice in doing so. Because machine learning is datadriven and it's able is reproduce the behavior of a non-linear system. In the training dataset, all the values are stored which are recorded by the sensors. That is the position of the rigid body boxes, their angle and the forces applied to them. But how exactly can machine learning be utilized for system identification of such system? Is a multi-layer-perceptron the right choice, or is the LSTM network with it's ability to store information about the past the only option in doing so?