In this paper, we present a distributed market-based algorithm called S+T, which solves the multi-robot task allocation (MRTA) problem in applications that require the cooperation among the robots to accomplish all the tasks. If a robot cannot execute a task by itself, it asks for help and, if possible, another robot will provide the required service. In the paper, tasks consisting in transmitting data in real-time that could require communication relay services are considered. On the other hand, the parameters of the algorithm can be adapted to give priority to either the execution time or the energy consumption in the mission. The potential generation of deadlocks associated to the relation between tasks and services is studied, and as an original result, a distributed algorithm that prevent them is proposed. The algorithm has been tested in simulations that illustrate the main features of the S+T algorithm.
展开▼