Robots Which Observe and Learn

February 2015

Image Source: Rainer Jäkel, Karlsruher Institut für Technologie

Robots are moving out of industrial environments, which are structured and controlled, towards looser and less predictable professional and personal services environments in which they must perform a variety of tasks. But programming the same robot for different tasks is complex and expensive. As an alternative, researchers are looking at new programming methods based on concepts and ideas taken from the study of how human beings themselves learn.


  • Teach Method - 90% of current industrial robots are programmed by the Teach Method, a system in which the operator guides the robot’s movement and configures, one by one, its positioning data, through a teach pendant. The movement is programmed with buttons or control levers, allowing the robot to be moved from axis to axis, lineally, or in coordination with another robot.

  • Robot dependent software - Each manufacturer develops its own software program, that can combine textual programming (coding of direct instructions) with the teach mode and robot guidance when they are required. This is how the RAPID system of ABB or the V+ of Adept Technologies, among others, operate. There are also open environments which allow programming outside of the specific languages ​​of each manufacturer. A notable example of this is the Robot Operating System (ROS), and its variant,  Industrial ROS.

  • OLP: Towards better methods - In any case, and generally speaking, programming an industrial robot is still, today, a slow and tedious task that requires specialized personnel. In addition, the robot must be stopped and production halted while this programming is going on, with all the disadvantages that this entails. Background Offline Programming (OLP) is a more recent method for doing this, which is as yet little used by manufacturers. It employs simulation environments, CAD data and smart tools to generate process sequences from the geometry of the piece in question. Some OLP’s are universal and not tied to any particular manufacturer, while others are specific to each one, as in the cases of ABB, KUKA or FANUC. With these methods, programming time is greatly reduced, and with it, the time taken to perform the processes themselves.


  • Simplified programming: Programming by Demonstration (PbD) -  As a term, Programming by Demonstration is applied to those situations in which a human being transmits instructions to a robot through his or her example. The operator moves the robot directly by hand, instead of using the teach pendant, and the robot moves according to the human effort it detects. The robot replicates this movement and the human operator can refine the results with further demonstrations of how he or she wants the job done. PbD simplifies and speeds up the programming and requires no technical specialists, because the "programming" of the robot is not done by an expert in the technology but by an operator who is expert in the task to be performed. Of recent years, especially for the SME market, manufacturers have been incorporating such PbD systems for programming their robots. The Kinetiq Teaching of Robotiq, used by Yaskawa robots, or the Teach Mode of Universal Robots, for their UR robots, are examples of PbD models that combine manual guidance by the operator with programming interfaces based on icons which are intuitive and simple to use. This is undoubtedly an advance from which SME’s will be able to get most benefit. In future, PbD could be used without the robot itself having to perform the task simultaneously with the human operator. For example, the operator could first perform the job using sensorized gloves which emit signals the robot can receive, store and interpret, or the robot could use its own vision system to observe what the operator does and then mimic it.

  • The challenge of getting robots out of the factory - Programming systems for industrial robots serve for handling specific tasks in structured environments such as we usually find in a factory. But outside of such factory settings, the surroundings can be changeable and uncertain, and programming robots to perform tasks in such scenarios is very complex. Hans Moravec, a researcher at the Robotics Institute of Carnegie Mellon University, said three decades ago: "Tasks that are difficult for humans, such as precision welding, are easy for robots, but tasks that are easy for humans, such as clearing the table after a meal, are extremely difficult for robots." Programming robots for such uncertainty and variability is leading to the investigation of new methods by which robots, starting from their basic programming, are able to learn and adapt themselves. This approach makes projects viable that might not be so with classical programming and manufacturing systems. It is cheaper to manufacture robots that learn and adapt than robots which are extremely precise and specialized in what they do.

  • Learning from Demonstration (LfD): Robots which observe and learn - Unlike traditional ways of programming robots, and different from PbD too, with Learning from Demonstration (LfD) the robot does not simply perform a programmed sequence of actions but learns, literally, what it means to carry out a certain process. To do so, it first of all "observes" various demonstrations by the human operator, each of them with a certain degree of variation. The robot then generalizes from these demonstrations until it finds the best way of handling the job. This learning it then refines by use of trial and error. The inspiration for LfD is found in the developmental psychology of human learning as shown by a child being guided by an adult, in which process the child moves on from mechanically imitating all the adult’s actions to reproducing the desired end of those actions. The first trials of LfD were started in the 1980s, but it is only now that the convergence of opportunities and necessities has put LfD in the spotlight: on the one hand because the capabilities of current processors, sensors and actuators make it possible, and on the other because the surge in demand for robots and services for the domestic market makes it imperative. LfD and learning algorithms, which have been widely studied over decades in the research laboratories, are now ready to be transferred to industry and thence to the professional and personal services markets.

  • Domestic robots: From Sentient Platforms to Multipurpose Companions - The first domestic robots were introduced to our homes with a very specific purpose: to vacuum-clean. And there they have stayed. However in recent times we have seen a proliferation of proposals for a new category of domestic robots: sensorized platforms that do not have only one use but can serve a variety of different purposes. Keecker and Jibo, among others, belong to this group. In the coming years both these kinds of robots will continue to coexist, and will be joined by a third type: robots capable of manipulating objects, as true personal assistants. Methods based on LfD will allow the end user to program his robotic assistant himself. Research in the field of Human-Robot Interaction (HRI) will provide new interfaces for human-robot communication that will make the robot training and learning process even more interactive, such as when, for example, the robot asks for additional information where the user’s instructions are ambiguous or inadequate.

  • Coding or Digital Literacy - The US2020 initiative, a study promoted by the White House, estimates that by 2018 1.2 million jobs will have been generated in the United States in the fields of science, technology, engineering and mathematics (STEM), and that there will be a shortage of qualified professionals to fill them. Programming has long been considered an essential skill for the twenty-first century professional and in recent years all kinds of activities, both in and out of school, have been introduced in order to teach children to code. In a future in which programming models will be increasingly intuitive, some critics argue that by the time these children reach the labor market, the knowledge they will have acquired in this way will be of no use to them. But teaching young people how to encode is not only intended to create the software engineers of the future, but to develop the skills which foster computational thinking, such as logical reasoning, creativity and problem-solving. Perhaps of more concern in a future (already present) in which technologies will be integrated fully into our lives, is the lack of Digital Literacy: the basic understanding of how a system functions, or of what a particular technology can do, or of how to interact with a computer and its applications and be aware of what it is we are doing. It is significant that in a study carried out by Citrix in 2012 it was found that 51% of respondents thought that bad weather affected cloud computing. A basic knowledge of how the digital world operates will be a great help to us in getting the best return from the technologies which are becoming available to us.