How does a robot learn how to perform a task nowadays?
Since Henry Ford’s assembly lines, automation systems have been developed and integrated in the industry all over the world. Clear examples of this are Amazon’s automated warehouses or Coca-Cola’s dark sheds.
While these examples are stunning, it is also true that nowadays, these robots need their own warehouses where no interaction with humans happens. Also, high qualified robotics engineers have to program them to perform the required repetitive tasks.
In the future, we imagine a world where anybody, without any prior knowledge in robotics, could buy a robot, set it in their workshop and start teaching the robot to perform some task interacting with the human workers. But, what should the robot learn? Welcome to the Movement Primitives.
What are the Movement Primitives?
Movement Primitives are the set models that represent the different type of actions the robot could do. These models will generate trajectories the robot should follow in order to perform a certain task.
Let’s assume we want a robot to learn to pick a certain object. Instead of programming the task, we can make the robot learn from human demonstrations. A human could move manually the robot arm to the object we want to pick several times while changing the object position and the robot will learn a model that represents that action. Afterwards, if the object is set in a completely new position, the robot will be able to generate a trajectory to pick this object.
Movement Primitives in SHAREWORK
SHAREWORK project benefits from the use of Movement Primitives for task recognition and also prediction of human movement. Movement Primitives can represent the different type of motions the human does and so, they could be integrated as an additional feature for a task classification module. On the other side, Movement Primitives can provide a probabilistic prediction model about where the human is going to be, in order to improve the robot motion planners.
During the SHAREWORK project, Context-Aware Movement Primitive Segmentation algorithms are going to be applied. The algorithm will be able to segment the recorded human motion online and learn the simplest blocks of which the human motion is built in order to solve a complex task.
SHAREWORK project will use Movement Primitives for learning from human actions by understanding the worker’s behaviour and anticipating tasks
These learned motion primitives are contextualised with the objects in the environment in order to adapt to the different positions the same object can be placed. Afterwards, these Movement Primitives will be used as the building blocks of the task classification algorithms.
These same Context-Aware Movement Primitives will provide a probabilistic prediction of the position of the human in the future. Mixed with robot motion planner, the robot will plan safer trajectories, avoiding the collision with the humans.
Julen Urain
Robotics Ph.D Student
Julen Urain is a Ph.D student in the Intelligent Autonomous Systems department in the Technical University Darmstadt (TUDA) under the supervision of Jan Peters. He holds a Master in Robotics and Control with a thesis in Robot-Human Interaction. His research interests are Probabilistic Dynamic Systems Modelling, Reinforcement Learning and Optimal Control.