Mechanisms for environments in multi-agent systems: Survey and opportunities <s> Pervasive applications <s> Pervasive computing calls for suitable middleware and programming models to deal with large software systems dived in dynamic mobile network environments. Here we present the programming model of TOTA ("tuples on the air"), a middleware for supporting adaptive context-aware activities in pervasive computing scenarios. The key idea in TOTA is to rely on spatially distributed tuples, propagated across a network on the basis of application-specific rules, for both representing contextual information and supporting uncoupled interactions between application components. As shown with the help of a case study scenario, TOTA promotes a simple programming model and can effectively facilitate access to distributed information, navigation in complex networks, and achievement of complex coordination tasks in a fully distributed and adaptive way. <s> BIB001 </s> Mechanisms for environments in multi-agent systems: Survey and opportunities <s> Pervasive applications <s> This paper focuses on the problem of orchestrating the movements of bot agents in the videogame Quake 3 Arena. Since the specific patterns of movement that one may wish to enforce may be various, and serve different purposes (have bots meet somewhere, move in formation, or surrounding human players), a general and flexible approach is required. In this paper we discuss how the Co-Fields coordination model can be effectively exploited to this purpose. The key idea in Co-Fields is to model the agents' environment by means of application-specific computational force fields, leading agents' activities to a globally coordinated and adaptive motion behavior. The Co-Fields model is described both in general terms and in the specific Quake 3 Arena implementation, and several application examples are presented to clarify it. Also, the paper outlines the general applicability of the approach besides the Quake scenario and in areas such as mobile computing and mobile robots. <s> BIB002 </s> Mechanisms for environments in multi-agent systems: Survey and opportunities <s> Pervasive applications <s> Egemin N. V. is a Belgian manufacturer of Automatic Guided Vehicles -named E'GVs- and control software for automating logistics services in warehouses and manufactories using E'GVs. In a joint R&D project, Egemin and the AgentWise research group are developing an innovative version of the E'GVs control system aimed to cope with new and future system requirements such as flexibility and openness.In this project, we exploit principles and mechanisms known from situated multi-agent systems for modelling and implementing a decentralized control system. Instead of a centralistic approach, where one computer system is in charge of numerous complex and time-consuming tasks (such as routing, collision avoidance, deadlock avoidance, etc.), we aim to provide the E'GVs with a considerable amount of autonomy. This allows to obtain a system that is far more flexible than the current software - the E'GVs adapt themselves to the current situation in their direct vicinity, order assignment is dynamic, the system can cope with E'GVs leaving the system (e.g. for maintenance) or adding new E'GVs, and so on.In this paper, we describe the architecture that is employed for implementing the control of the E'GV system. The implementation of the control software seamlessly integrates with E'nsor, the low-level vehicle control system. We illustrate a concrete control scenario in which two E'GVs coordinate their behavior to avoid collisions. <s> BIB003
In pervasive applications, sensor networks are noteworthy examples in interaction mediation. For instance, applications based on the Agilla agent framework have a communication environment on every sensor node, each becoming a 'mini-MAS'  . Such a node environment consists of a tuple space, i.e. an instance of environment-mediated interaction channel, that agents can use to exchange messages. Agilla guarantees the coherence of the application by the coordination of the nodes with an instance of the overlay network and decentralized synchronization mechanisms. The synchronization mechanism is used to update the information about nodes in the neighborhood, so that agents can communicate and move seamlessly over the whole network. Another representative application is from the industry of automated transportation systems. Traditionally, this industry uses centralized approaches where masterservers command remote vehicles. In order to cope with the soaring lack of flexibility and reliability of such systems, this industry has been deploying new architectures where vehicles are thought of as peers, so that they can perform their tasks in a decentralized fashion. The case of the Automatic Guided Vehicles (AGV) relies on an explicit decentralized environment model to deal with the interactions among the vehicles BIB003 . Each AGV has a software layer that consists of the agent that 'drives' the vehicle and an environment that represents a computational counterpart of local physical information (vehicle dimensions, position from sensors, obstacles in the vicinity, etc.). The environment part of each vehicle is responsible for updating the local information thus allowing the agent to reason and avoid possible collisions. Such an environment is similar to the model of Agilla, with more computing power available. In addition, the environment of each vehicle is responsible for real-time synchronization with the environment on other machines in the vicinity to update data locally. The environment is therefore up-to-date and synchronized with surrounding environments only. In Agilla, the instance of environment-mediated interaction channel on each node is an appropriate design abstraction, since agents are kept simple due to the availability of limited computing power. The mechanism encapsulates the interaction logics so that agents only contain code relative to their functional requirements. This property is a typical example of separation of concerns provided by the environment . As for the overlay network, it provides design abstractions for interacting. In the particular case of Agilla, the mechanism is a set of algorithms to forward messages between tuple spaces and update the state information of the two mini-MAS involved in the communication or migration of agents. Finally, the AGV case shows how decentralized synchronization is used for coordination. The real-time constraints of this application make it difficult and costly to synchronize AGVs with a centralized mechanism. The decentralized approach is economical and focuses on relevant data, which reduces the computational cost in communication. The Agilla environment (see Sect. 3.1.2) provides direct access to the sensors of the node (awareness of physical properties) and maintains a neighbor list that is updated according to agent mobility (awareness of other agents). The management of the neighbor list is totally transparent to application agents, as a service provided by the environment. This service appears as an instance of the resource and context management mechanism. The delegation of the neighbor list management to the environment is justified by the limited memory of sensor network nodes. Instead of having agents maintaining individual neighbor lists, a single list is maintained for each node (individual lists would imply redundant copies), which significantly reduces the memory requirements. In the domain of ubiquitous computing, visitors of a museum were endowed with a PDA that hosts an agent to guide them to relevant spots and to coordinate the visit, for instance to avoid crowd accumulation BIB001  . The coordination mechanism relies on the coordination field approach as an instance of the overlay data structure mechanism BIB002 . In the museum, agents emit repulsive gradient fields, whereas rooms emit attractive fields. Agents then tend to lead visitors away from each other (repulsion), while guiding them to different rooms (attraction). The resource and context manager participates in the environment to screen the complexity of interacting with low-level resource details, as observed with Agilla. This property is another aspect of the separation of concerns provided by the mechanism. In addition, it provides a design abstraction when building application agents, since interactions are supported by the underlying framework. The museum application illustrates the use of the overlay data structure for motion coordination in a pervasive computing context. The experiments show in a concrete domain how the computational environment practically uncouples the application logics for the interface agent from the coordination logics, which is a desired property for the development of industrial systems and services.