Industrial Priorities for Cognitive Robotics
We present the results of a survey of industrial developers to determine what they and their customers require from a cognitive robot. These are cast as a series of eleven functional abilities: 1) Safe, reliable, transparent operation. 2) High level instruction and context aware task execution. 3) Knowledge acquisition and generalization. 4) Adaptive planning. 5) Personalized interaction. 6) Self assessment. 7) Learning from demonstration. 8) Evaluating the safety of actions. 9) Development and self optimization. 10) Knowledge transfer. 11) Communicating intentions and collaborative action. I. INDUSTRIAL REQUIREMENTS While cognitive robotics is still an evolving discipline and much research remains to be done, we nevertheless need to have a clear idea of what cognitive robots will be able to do if they are to be useful to industrial developers and end users. The RockEU2 project canvassed the views of thirteen developers to find out what they and their customers want. The results of this survey follow, cast as a series of eleven functional abilities. A. Safe, reliable, transparent operation Cognitive robots will be able to operate reliably and safely around humans and they will be able to explain the decisions they make, the actions they have taken, and the actions they are about to take. A cognitive robot will help people and prioritize their safety. Only reliable behaviour will build trust. It will explain decisions, i.e. why it acted the way it did. This is essential if the human is to develop a sense of trust in the robot. A cognitive robot will have limited autonomy to set intermediate goals to when carrying out tasks set by users. However, in all cases it defers to the users preferences, apart from some exceptional circumstances, e.g. people with dementia can interact in unpredictable ways and the robot will be able to recognize these situations and adapt in some appropriate manner. The freedom to act autonomously will have formal boundaries and the rules of engagement will be set on the basis of +Much of the work described in this paper was conducted while the author was at the University of Skovde, Sweden. This research was funded by the European Commission under grant agreement No: 688441, RockEU2. three parameters: safety for people, safety for equipment, and safety of the robot system. The rules may change depending on the environment and a cognitive robot will not exceed the limits of safe operation. The limits may be application specific, e.g. the robot should not deviate further than a given specification/distance/etc. A cognitive robot will use this type of knowledge to act responsibly and will ask for assistance when necessary (e.g. before it encounters difficulties) In particular, in emergency situations, the robot will stop all tasks to follow some emergency procedure. Ideally, if the user is deliberately trying to misuse the robot, e.g. programming it to assist with some unethical task, a cognitive robot will cease operation. B. High level instruction and context aware task execution Cognitive robots will be given tasks using high level instructions and they will factor in contextual constraints that are specific to the application scenario when carrying out these tasks, determining for themselves the priority of possible actions in case of competing or conflicting requirements. Goals and tasks will be expressed using high level instructions that will exploit the robots contextual knowledge of the task. This will allow the robot to pre select the information that is important to effectively carry out the task. The goals will reflect the users perspective. This means that all skills which implicitly define the goals are tightly linked to realworld needs and to the solution of specific problems, e.g. "get me a hammer" The following guidelines will apply. Instructions will use natural language and gestures to specify the goals. Natural language will be relatively abstract but will be grounded in the codified organisational rules, regulations, and behavioural guidelines that apply to a given application environment. This grounding means that each abstract instruction is heavily loaded with constraints which should make it easier for the robot to understand and perform the task effectively. The goals should be specified in a formalised and structured way, where the designer defines them well and can verify them. For example, teach the robot the environment it is working in, follow a described route to reach each of the target locations and reach these positions to carry out the task. These clearly specified tasks are tightly coupled with risks and costs, e.g. of incorrect execution. Proceedings of EUCognition 2016 "Cognitive Robot Architectures" CEUR WS 6 It should be possible for the robot to be given goals in non specific terms (e.g. assist in alleviating the symptoms of dementia) guidelines on acceptable behaviour (or action policies) and relevant constraints, leaving it to the robot to identify the sub goals that are needed to achieve these ultimate goals. A cognitive robot will learn ways of measuring the success of outcomes for the objectives that have been set, e.g. creating a metric such as the owners satisfaction related not only to the directly specified objective but also the manner in which the job was done) It should be learn from these metrics. A cognitive robot will consider the contextual constraints that are specific to the application scenario. It will determine the priority of potential actions, e.g. in case of competing or conflicting needs. For example, the robot might know the procedure to be followed but the locations to be visited or the objects to be manipulated need to be specified (or vice versa) For example, when an automated harvester encounters a bale of straw, it can deal with it as an obstacle or something to be harvested, depending on the current task. For example, the robot might engage in spoken interaction with older adults until the goal is communicated unambiguously, using context to disambiguate the message and allow for the difficulties in dealing with different accents, imprecise speech, and poor articulation. A cognitive robot will know what is normal, i.e. expected, behaviour (possibly based on documented rules or practices) and it will be able to detect anomalous behaviour and then take appropriate action. The following guidelines will apply. It will be possible to pre load knowledge about the robots purpose and its operating environment, including any rules or constraints that apply to behaviour in that environment. It will be possible to utilize domain specific skill pools (e.g. from shared databases) so that the robot is preconfigured to accomplish basic tasks without having to resort to learning or development. The robot will continually improve its skills (within limits of the goals and safety, see above) and share these with other robots. The robot might assist the user by proposing goals from what it understood and the user makes the final selection. The level of detail in the description required by a cognitive robot will decrease over time as the robot gains experience, in the same way as someone new on the job is given very explicit instructions at first and less explicit instructions later on. One should need to demonstrate only the novel parts of the task, e.g. pouring liquid in a container, but not the entire process. It will be possible to instruct the robot off line if there is no access to the physical site; e.g. using a simulation tool, with the robot then being deployed in the real scenario. C. Knowledge acquisition and generalization Cognitive robots will continuously acquire new knowledge and generalize that knowledge so that they can undertake new tasks by generating novel action policies based on their history of decisions. This will allow the rigor and level of detail with which a human expresses the task specification to be relaxed on future occasions. A cognitive robot will build and exploit experience so that its decisions incorporate current and long term data. For example, route planning in a factory, hospital, or hotel should take into account the history of rooms and previous paths taken, or it might take another look to overcome high uncertainty. In general, the robot will overcome uncertainty in a principled manner. A cognitive robot will generalize knowledge to new task by understanding the context of a novel task and extrapolating from previous experience. For example, a care giving robot will reuse knowledge of a rehabilitation exercise, customizing it to another person. A welding robot will weld a new instance of a family of parts. In general, a cognitive robot will extract useful meaning from an interaction for a future and more general use, with the same or another user. This may extend to learn cultural preferences and social norms. For example, in a domestic environment, a cognitive robot will learn how to do simple household tasks, e.g. how to grasp different objects and them bring to a person that wants them. This will be continuously extended, allowing the robot to do more complex things, including cooking. D. Adaptive planning Cognitive robots will be able to anticipate events and prepare for them in advance. They will be able to cope with unforeseen situations, recognizing and handling errors, gracefully and effectively. This will also allow them to handle flexible objects or living creatures. A cognitive robot will be able to recognize that circumstances have changed to avoid situations where progress is impossible. It will also be able to recognize errors and recover. This may include retrying with a slightly different strategy. The learning process will be fast, ideally learning from each error. A cognitive robot will be able to learn how to handle errors, how to react to situations where, e.g. a human is doing something unexpected or parts are located in an unexpected place.
EUCognition