Controlling a General Purpose Service Robot By Means Of a Cognitive Architecture

Service robotics is an emerging application area for human-centered technologies. Even if there are several specific applications for those robots, a general purpose robot control is still missing, specially in the field of humanoid service robots [1]. The idea behind this paper is to provide a control architecture that allows service robots to generate and execute their own plan to accomplish a goal. The goal should be decompose into several steps, each step involving a one step skill implemented in the robot. Furthermore, we want a system that can openly be increased in goals by just adding new skills, without having to encode new plans. 



Typical approaches to general control of service robots are mainly based on state machine technology, where all the steps required to accomplish the goal are specified and known by the robot before hand. In those controllers, the list of possible actions that the robot can do is exhaustively created, as well as all the steps required to achieve the goal. The problem with this approach is that everything has to be specified beforehand, preventing the robot to react to novel situations or new goals.

An alternative to state machines is the use of planners [2]. Planners decide at running time which is the best sequence of skills to be used in order to achieve the goal specified, usually based on probabilistic approaches. A different approach to planners is the use of cognitive architectures. Those are control systems that 45 try to mimic some of the processes of the brain in order to generate a decision [3][4][5][6][7][8]. 



There are several cognitive architectures available: SOAR [9], ACT-R [10, 11], CRAM [12], SS-RICS [5], [13]. From all of them, only CRAM has been designed with direct application to robotics in mind, having been applied to the generation of pan cakes by two service robots [14]. Recently SOAR has also been applied to simple tasks of navigation on a simple wheeled robot [15]. At time of creating this general purpose service robot, CRAM was only able to build plans defined beforehand, that is, CRAM is unable to solve unspecified (novel) situations. 

This limited the actions the robot could do to the ones that CRAM had already encoded in itself. Because of that, in our approach we have used the SOAR architecture to control a human sized humanoid robot Reem equipped with a set of predefined basic skills. SOAR selects the required skill for the current situation and goal, without having a predefined list of plans or situations. The paper is structured as follows: in section 2 we describe the implemented architecture, in section 3, the robot platform used. Section 4 presents the results obtained and we end the paper with the conclusions.

No comments:

Powered by Blogger.