A distributed method to avoid higher-order deadlocks in multi-robot systems

Deadlock avoidance is a crucial problem in motion control of multi-robot systems since deadlocks can crash the systems and ∕or degrade their performance. However, deadlocks sometimes are difficult to predict in advance because of the existence of higher-order deadlocks, from which a system can lead...

Full description

Saved in:
Bibliographic Details
Main Authors: Zhou, Yuan, Hu, Hesuan, Liu, Yang, Lin, Shang-Wei, Ding, Zuohua
Other Authors: School of Computer Science and Engineering
Format: Article
Language:English
Published: 2021
Subjects:
Online Access:https://hdl.handle.net/10356/152099
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Nanyang Technological University
Language: English
Description
Summary:Deadlock avoidance is a crucial problem in motion control of multi-robot systems since deadlocks can crash the systems and ∕or degrade their performance. However, deadlocks sometimes are difficult to predict in advance because of the existence of higher-order deadlocks, from which a system can lead to a deadlock inevitably. In this paper, we investigate the properties of higher-order deadlocks and propose a distributed approach to their avoidance in multi-robot systems where each robot has a predetermined and closed path to execute persistent motion. After modeling the motion of robots by labeled transition systems (LTSs), we first conclude that there exist at most the (N−3)-th order deadlocks with N robots. This means that deadlocks, if any, will occur unavoidably within N−3 steps of corresponding transitions. A distributed algorithm is then proposed to avoid deadlocks in such systems. In the algorithm, each robot only needs to look ahead at most N−1 states, i.e., N−3 intermediate states and two endpoint states, to decide whether its move can cause higher-order deadlocks. To execute the algorithm, each robot needs to communicate with its neighbors. The theoretical analysis and experimental study show that the proposed algorithm is practically operative.