الوصف: |
The presented agent-based framework (Acromovi - an acronym in Spanish which stands for Cooperative Architecture for Intelligent Mobile Robots) was born from the idea that teamworking is an essential capability for a group of multiple mobile robots (Jung & Zelinsky, 1999; Mataric, 1998). In the last years, there is an increasing interest in the development of systems of multiple autonomous robots, so that they exhibit collective behaviour. This interest is due to the fact that having one single robot with multiple capabilities may waste resources. Different robots, each one with its own configuration, are more flexible, robust and cost-effective. Moreover, the tasks to achieve may be too complex for one single robot, whereas they can be effectively done by multiple robots (Arai et al., 2002). In this work is described the design and implementation of a distributed architecture for the programming and control of a team of coordinated heterogeneous mobile robots, which are able to collaborate among them and with people in the accomplishment of tasks of services in daily environments, the Acromovi architecture. Acromovi architecture is a framework for application development by means of embedding agents and interfacing agent code with native low-level code. It addresses the implementation of resource sharing among all the group of robots. Cooperation among the robots is also made easier in order to achieve complex tasks in a coordinated way. Moreover, in this work is emphasized the reusability of software, allowing the programmer to seamlessly integrate native software components (vision libraries, navigation and localization modules) , by means of agent wrappers, providing the programmer with a set of tools for mobile robots. Also, it allows sharing the robots’ resources among the team and an easy access to the robots’ elements by the applications. Other important characteristics of the Acromovi architecture are the scalability and ease-of-use. Though robot programming has been extensively done in C or C++ languages, a Java-based multiagent development system was chosen to develop the architecture of our team of robots (Nebot & Cervera, 2005a). Among Java strengths, those particularly pursued were the high-level communication capabilities, and the native interface to existing C/C++ code. On the other hand, Acromovi architecture is a distributed architecture that works as a middleware of another global architecture for programming robots. Though any common agent architecture can be used, it has been implemented by means of the JADE (Java Agent |