Abstract
As a fundamental problem, collision avoidance for multiple robots still need further investigation, especially for many robots aggregating in a tight space. In this article, a laser-based collision avoidance approach is proposed in complex multi-robot environments. The laser data is analyzed and processed in terms of distance thresholding, safe passageway analysis, obstacles repulsion, goal position attraction, and inter-robot safety. Specifically, the safe passageway analysis is used to remove unsafe directions effectively, and inter-robot safety processing reduces the possibility of being selected for the directions affected by the neighboring robots. On this basis, an optimized decision is made to guarantee that the robots achieve collision-free motions even in crowded environments. The validity of the proposed approach is verified by simulations.
Introduction
The multi-robot system is attracting more and more attentions with advantages that are beyond the scope of a single-robot system. 1 It possesses the characteristics of parallelism, robustness, and flexibility with a wide variety of applications such as autonomous warehouse, 2,3 military, aerospace, and search and rescue. Existing researches focus on the problems including tasks and resource distribution, sensing, conflict resolution, formation, coordinated planning, and so on. As a fundamental problem, motion-level conflict resolution requires that the robots avoid collisions not only with static obstacles but also with other robots. If a robot regards its neighboring robots as static obstacles, the conflict among the robots is inevitable in some cases. It becomes worse in crowded multi-robot environments.
Commonly used sensors for environmental perception include infrared sensor, ultrasonic sensor, 4 visual sensor, 5 laser range finder, 6 and so on. Infrared sensor is often used to identify closer obstacles for emergency due to its short detection range. Ultrasonic sensor is more popular in robot applications; however, it is susceptible to interference from reflection and noise, which leads to a poor accuracy. Visual sensor can provide the robot with more abundant environmental information—especially binocular vision can directly solve the depth information of the objects in the scene. However, it is susceptible to environmental illumination variation. Also, the distance errors to obstacles are a little larger. In recent years, laser sensor has been widely used with its tolerance to illumination variation. 6 –8 More importantly, it can directly measure the distances with high accuracy and fast scanning speed.
On the basis of environment information provided by on-board sensors, many researchers devote themselves to collision avoidance methods. Ayoade et al. proposed a real-time laser-based gap finding obstacle avoidance approach, and this approach computes a trajectory toward a gap that is wide enough and is closest to the path preplanned by the global planner. 7 Yuan et al. presented a collision-free motion method for a mobile robot based on subregion evaluation in local sensing environment, and the optimal subregion will be used for decision with better adaptability to the environment. 8 Zhou and Li proposed an adaptive artificial potential field method for planning. 9 The sizes of the robot and the obstacles are considered into the potential field function, and the weight of this function can be changed to adapt to the environment. Hernández et al. provided a strategy based on distance clustering analysis for robot navigation, where the objects are detected by using the density-based spatial clustering of applications with noise method. 10
The above methods can handle the static obstacles effectively; however, in multi-robot environments, they do not always work well due to the interference from other moving robots. To solve this problem, some researches have been conducted. Kato et al. applied traffic rules to coordinate the robots for safety movements. 11 Many common rules such as keep right, safety space ahead, and no-passing have been constructed. Sometimes, it is hard for a robot to determine a rule suitable for current situation due to the limitation of the robot’s cognition capability. Liu et al. 12 and Yan and Zhang 13 combined rules with priority to achieve a conflict resolution among the robots. In practice, the application of priority has its limitation. For example, a robot needs to know the corresponding priority of its each neighboring robot by communication, which may complicate the decision-making. Zhang et al. conducted the collision avoidance with moving obstacles by employing the degree of risk and fuzzy function method. 14 Liu et al. adopted the behavior-based approach to multi-robot formation navigation. 15 Four primitive behaviors are presented: move_to_goal, keep_formation, avoid_static_obst-acle, and avoid_robot behaviors, and the parameters to synthesize these behaviors are determined by the particle swarm optimization algorithm. It shall be noted that the avoid_robot behavior requires the robot to turn right with a fixed value π/4 for collision avoidance among the robots, which is usually applied to small-scale multi-robot system. Zhang et al. 16 proposed an obstacle forbidden zone-based motion planning approach for multiple robots in unknown environments. The recurrence least square algorithm with restricted scale is used to anticipate the motions of other robots that have higher priorities for the dynamic predictive obstacle forbidden zone, which is beneficial to collision avoidance among robots. In addition, a collision avoidance algorithm based on Bluetooth received signal strength indication is proposed for multi-robot systems in an indoor environment. 17 Nevertheless, the Bluetooth signal is attenuated during propagation with a poor measurement accuracy. Based on existing outcomes, collision avoidance among multiple robots deserves further discussion, especially for crowded environments.
In this article, a laser-based collision avoidance approach for multiple robots is proposed for a complex multi-robot environment. Firstly, the safe passageway analysis is designed to remove unsafe directions effectively. Secondly, inter-robot safety processing is presented to reduce the possibility of being selected for the directions affected by the neighboring robots. This approach can improve the collision avoidance ability, especially for many robots aggregating in a small space.
The rest of this article is organized as follows. The “Laser-based collision avoidance” section describes the laser-based collision avoidance approach in detail. The “Simulations” section presents the simulation results. Finally, the article is concluded.
Laser-based collision avoidance
In this article, the original data are provided by a laser sensor. We label the maximum detection distance of the laser sensor as d L, and the detection angle range is within (−π, π]. li (i = 1,2,…, N) are labeled as the data obtained from the laser sensor, where N is the number of laser data. A two-tuple Ti = (li , θi ) is defined, where θi = −π + i × 2π/N refers to the direction corresponding to the distance li . It is noted that θi = 0 corresponds to the current direction of the robot. Let all Ti constitute a set W = {Ti |i = 1,2,…, N}. Then, the data set W is analyzed and processed in sequence from the following five aspects: distance thresholding, safe passageway analysis, obstacles repulsion, goal position attraction, and inter-robot safety processing. Finally, an optimal motion direction θ* can be determined to adapt to the current environment, which can guide the robot to move toward the goal position without collisions with obstacles and other robots.
The block diagram of multi-robot collision avoidance approach is shown in Figure 1, where Wt , Ws , Wd , Wg , and Wf are the results of data sets after distance thresholding, safe passageway analysis, obstacles repulsion, goal position attraction, and inter-robot safety processing are exerted, respectively. In addition, a variable di is used to reflect the values of these data sets. Initially, its value is equal to li and updated by the corresponding processing.

The block diagram of a multi-robot collision avoidance approach.
Distance thresholding
Generally speaking, laser sensor has a larger detection range than that required for safety motion of the robot. Herein a maximum distance threshold d max (d max < d L) is introduced to process the data being greater than d max in the data set W as d max. Meanwhile, the robot is not allowed to have too close distances with its neighboring obstacles. This minimum distance threshold is described as dsafe with a value of k(r + v max), where r is the radius of the robot, v max is the maximum velocity of the robot, and k (k > 1) is a given coefficient. If a data di in W is less than dsafe , it means that the movement of the robot in the direction corresponding to this data may be dangerous. For safety consideration, the data being less than dsafe in W is regarded as an invalid one, and di is clear to 0. The data set Wt is then acquired after the maximum and minimum distance thresholds are applied to the data set W. Figure 2 illustrates a result of distance thresholding for a piece of data set W.

Distance thresholding.
Safe passageway analysis
The robot is a physical entity and it should choose a direction that is safe enough for its whole body. For a direction θi , we divide the surrounding environment of the robot into three zones: I, II, and III (see Figure 3), which correspond to the intervals (θi − π/2, θi − θsafe ), [θi − θsafe , θi + θsafe ], and (θi + θsafe , θi + π/2), respectively, where θsafe = arcsin(rsafe /dsafe ) and rsafe is a safety radius. It shall be noted that as a candidate direction, θi is restricted to the interval [−π/2, π/2] in order to prevent possible oscillations during obstacle avoidance.

An illustration of the robot’s environment.
From the safety perspective, there are different requirements for different intervals. A qualified candidate θi should satisfy different requirements from these three intervals. For a direction θk in the zone II, its corresponding dk in Wt should follow the condition dk ≠ 0, whereas the direction θk within the zones I and III also needs to meet the condition dok ≥ rsafe /sin|θk − θi |, where the data dok refers to the original data in the data set W. The former is used to provide enough front space for the safety of the robot, and the latter is for collision avoidance of the left and right sides of the robot with obstacles. We set the data di to an invalid datum 0 when its corresponding direction θi is unqualified. Therefore, we have Ws after the safe passageway analysis is applied to Wt . The detailed process is given in algorithm 1. Figure 4 demonstrates the processing for the data set Wt in Figure 2.

The processing with safe passageway analysis for the data set Wt in Figure 2.
Safe passageway analysis.
Osbtacles repulsion
For any nonzero data in Ws , there are different levels of threat from environment obstacles. Clearly, the smaller the distance from the robot to an obstacle is, the bigger the danger caused by the obstacle is, and vice versa. In this section, an obstacle repulsion function Fo (di ) is introduced to drive the robot to keep away from obstacles. From the safety perspective, when the distance between the robot and the obstacle is very small, a much larger repulsion shall be exerted. Specifically, Fo (di ) = 1/di . Then di is updated by Fo (di ). It is seen that the influences from obstacles drop sharply at the initial stage, and then the trend becomes flat. Figure 5 describes the result for the data set Ws with obstacles repulsion processing, which is expressed by Wd .

The obstacles repulsion processing.
Inter-robot safety processing.
Goal position attraction
The robot will eventually reach its goal position. An expectation is that the robot moves toward the goal position directly; however, it is often broken due to the disturbance from obstacles. We label the direction of the goal position relative to the robot as θg
. A goal position attraction function Fg
(i) is defined and there are two rules to follow. The first one is that Fg
(i) reaches the maximum value when θi
= θg. The second is that the closer θi
is near to θg
, the bigger the value of Fg
(i) is, and vice versa. Specifically, Fg
(i) is designed as
By applying di /Fg (i) to the data set Wd with all nonzero values, di is updated and we have Wg (see Figure 6).

Goal position attraction processing.
Inter-robot safety
The robot moves in an environment with multiple robots; the threat from other robots in some cases may be even greater than that from static obstacles. Consider a scenario shown in Figure 7 with three robots, where θc
is the current direction of the robot, and θcj
and θck
are the moving directions of its nearby robots. Take a neighboring robot Rj
as an example. Based on the line from the robot to Rj
and the moving direction of Rj
, we have the angles θsj
and θej
, where θej
is parallel to θcj
. For a direction θi
, it shall be affected noticeably by the robot Rj
if θi
is within the interval Ψ
θ
= [min(θsj
, θej
), max(θsj
, θej
)]. The influence factor Mij
is expressed as follows

A three-robot scenario.
where Fir (i, j) is the inter-robot influence function, as shown in Figure 8, Dj is the distance between the robot and its neighboring robot Rj , and θoj is the direction of the line from the robot to the next estimated position of robot Rj .

The inter-robot influence function Fir (i, j).
The influences from all nearby robots are then combined together. For the index i (i=1,2,…, N), the influence Mi is achieved by maximizing all influences from neighboring robots. Then we update di by applying diMi to the nonzero data in Wg and obtain the data set Wf .
The detailed process is given in algorithm 2, where Z is the total number of its neighboring robots, cal_θ(Rj ) is used to calculate θsj and θej , and dis(Rj ) provides the distance Dj . Figure 9 gives an illustration. The presence of other robots shall affect the data values of corresponding directions, which can reduce the possibility of these directions to be selected.

Inter-robot safety processing.
Decision-making
It is noted that the data in the data set Wf
are acquired with full considerations of environment, itself, and other robots. Each direction θi
corresponding to a positive di
is safe and it is considered as a candidate of the optimal direction. In this article, θ* is chosen as follows:
As can be observed in Figure 10, the direction corresponding to the minimum value of the valid data in Wf is selected as the optimal direction θ*, which will be sent to the motor unit for execution.

Decision-making.
Simulations
Simulations are conducted to testify the proposed approach in our developed multi-robot platform with the functions of robots setting, obstacles setting, sensors perception, dynamic motion process demonstration, and so on. The robot is round with a radius r of 0.5 m. v max = 0.2m/s, d L = 6 m, and N = 90. The parameters in the proposed approach are as follows: d max = 4, k = 1.5.
In simulation 1, four robots R 1–R 4 are required to arrive at their destinations while avoiding the collisions. The trajectories of the robots are demonstrated in Figure 11, where S 1–S 4 and G 1–G 4 are their initial positions and goal positions, respectively. It can be seen that each robot fulfills its task smoothly.

The trajectories of the robots in simulation 1.
Simulation 2 is used to testify the anti-disturbance ability. The task requires four robots R 1–R 4 exchange their positions in pair. The results are shown in Figure 12. The robots move from the initial positions S 1–S 4 to respective goal positions G 1–G 4. When they arrive at the positions illustrated in Figure 12(a), a new obstacle obs 3 is added, as shown in Figure 12(b). These robots rapidly respond to this sudden environment change, and finally they reach respective destinations safely.

The results of simulation 2: (a) before a new obstacle obs 3 is added and (b) after a new obstacle obs 3 is added.
Simulation 3 considers a 20-robot scenario where Rq (q = 1,…, 10) is demanded to exchange their positions with Rq (q = 11,…, 20), respectively. The snapshots of simulation 3 are depicted in Figure 13. One can see that each robot successfully moves round the obstacles and other robots it encountered during the motion toward its destination, which demonstrates the performance of the proposed approach.

The results of simulation 3 with a 20-robot scenario.
Simulation 4 assumes that the robots work in a warehouse-like environment with three sorting tables and some cargo shelves, where 12 robots are required to go to cargo shelves and 5 robots are ready to return sorting tables. The simulation result is illustrated in Figure 14(a) and (b), where the starting position and ending position for the robot Rq (q = 1,2,…, 17) are Sq and Gq , respectively. One can see that each cargo robot achieves collision-free motion.

The results of simulation 4.
To further verify the proposed approach with inter-robot safety, we conduct the comparison with the method where inter-robot safety is not considered and the approach in Zhang et al. 16 All robots are located in a circle whose radius is 16.5 m, and the initial position and goal position of each robot are symmetric with respect to the center of the circle. When the number of robots is even, they distributed evenly, which is equivalent to the case with positions exchange in pair. For the robotic systems whose number Njs is odd, they follow the simulation conditions as that of the even case with Njs + 1.
Figure 15 demonstrates the comparison of the proposed approach with the method without inter-robot safety and the approach in Zhang et al. 16 Figures 16 to 18 illustrate the motion snapshots of robots adopting these three approaches with 12 robots, respectively.

The comparison of three approaches.

The snapshots of the simulation where 12 robots exchange their positions in pair with the proposed approach.

The snapshots of the simulation where 12 robots exchange their positions in pair without the consideration of inter-robot safety.

The snapshots of the simulation where 12 robots exchange their positions in pair with the approach in Zhang et al. 16
One can see that our approach and the approach in Zhang et al. 16 are superior to the method without inter-robot safety. This is mainly because that the former two approaches consider the mobility influence from the neighboring robots. From Figures 16 to 18, the approaches without inter-robot safety and in Zhang et al. 16 lead to a denser aggregation of robots. Clearly, this aggregation shall increase the difficulty for these robots to break away from the congestion, which results in a lengthy task execution time. For the proposed approach, the dense aggregation of robots is suppressed. The comparison reveals the superiority of the proposed approach with a shorter execution time.
Conclusion
This article proposes an approach to avoid collisions in complex multi-robot environments. The proposed approach considers the influences from itself, the static obstacles, and other neighboring robots. By inter-robot safety processing, the possibility of being selected for the directions that are affected by the neighboring robots is reduced. Finally, an optimized criterion is given to obtain a collision-free decision. The simulation results show that the proposed approach can achieve collision avoidance even in crowded multi-robot environments. In the future, we will conduct the experimental verification with more theoretical analysis.
Footnotes
Declaration of conflicting interests
The author(s) declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.
Funding
The author(s) disclosed receipt of the following financial support for the research, authorship, and/or publication of this article: This work was supported in part by the National Natural Science Foundation of China under grants 61633017 and 61633020, the National High Technology Research and Development Program of China (863 Program) under grant 2015AA042201, the Beijing Natural Science Foundation under grant 4161002, and the Key Research and Development Program of Shandong Province under grant 2017CXGC0925.
