There is a growing demand to apply multi-robot systems to address many current problems ranging from search and rescue to distributed surveillance to coordination of small satellites in space. Solving these problems effectively requires that teams of robots coordinate effectively. Many of the algorithms for coordination are based on the so-called centralized paradigm, where a central controlling authority is responsible for coordinating the entire team of robots. Unfortunately, centralized approaches often fall short when dealing with rapidly changing situations, unreliability of communications, and failure of robots, especially in hostile environments. Distributed approaches, in an effort to address such issues, tend to introduce complex negotiation or market-based strategies for distributed task execution, sometimes resulting in cumbersome programming models and suboptimal solutions. In this paper, we introduce the readers to the PIM (Process Integrated Mechanism) approach to multi-robot coordination grounded in research on Java thread migration. The core idea of the PIM is to retain the perspective of the single controlling authority but abandon the notion that it must have a fixed location within the system. Instead, the single coordinating thread is rapidly moved among the team members. The PIM leverages on Java thread mobility to preserve the optimality of the centralized approach, while effectively addressing most of its weaknesses (e.g. sluggish response to dynamic conditions, communication difficulties, and a single point of failure). A prototype implementation of such a model is presented on top of the Mobile JikesRVM framework for Java thread migration, along with some preliminary performance results.
The PIM: an Innovative Robot Coordination Model based on Java Thread Migration / Quitadamo, Raffaele; D., Ansaloni; N., Suri; K. M., Ford; J., Allen; Cabri, Giacomo. - STAMPA. - (2008), pp. 43-51. (Intervento presentato al convegno 6th International Conference on Principles and Practice of Programming in Java, PPPJ 2008 tenutosi a Modena, ita nel September 2008) [10.1145/1411732.1411739].