Abstract
Cooperative transportation using multi-robots is a significant challenge in robotics. For the problem, each robot is required, in general, to reach a different task-point to form a transport formation, where all the task-points are determined according to the shape of the transported object and the number of robots. A method based on bottleneck-linear assignment is proposed to form complex transport formations. First, the optimal paths from each robot to all the task-points are calculated by a two-direction path algorithm, which is developed in this paper as the core of the task-points' assignment. Second, in order to optimize the travelling paths of the robots and the time taken to establish the formation, a bottleneck-linear assignment strategy is presented to assign the task-points for the robots. Finally, an improved artificial moment motion controller makes each robot move along a sub-optimal path to reach its task-point. Simulations indicate that the proposed method is feasible and efficient.
1. Introduction
Cooperative transportation by multi-robots is an interesting and challenging problem in robotics. Much attention has been paid on its study [1–5] as it holds the promise of a wide range of applications. For example, for a factory in a serious fire, cooperative transportation by multi-robots can be used to rescue workers in coma and to remove any obstacles along exit passageways and so forth.
The grasping-based method and caging-based method are two important methods addressing the problem. Under the grasping-based method, a force-closure or form-closure condition is achieved by the robots' contacts. Under these conditions, the robot mechanism can resist any external force and generate acceleration for a transported object [2, 6, 7, 8]. In most cases, robots are the only source of grasp forces. When external forces acting on the transported object, such as gravity and friction, are used together with contact forces to produce force-closure, this is a situation of conditional force-closure. In [9, 10], conditional force-closure is used for object-pushing and other tasks.
Under the caging-based method, the object-closure condition is always achieved [2, 8, 11–14]. Under this condition, the object has some freedom to move, and the contact between the object and the robotic mechanism need not to be maintained. As a result, the motion planning and control of each robot become simpler, and the coordination among the robots becomes easier.
Under the methods for the cooperative transportation problem, all the robots in the group are required, in general, to approach the object to form a transport formation that satisfies certain conditions and constraints, such as an object-closure condition and the limitation of the manipulating force of each robot. For instance, in [8, 13, 14], a method based on an object-closure condition is presented. Its first step is to form a transport formation as noted above.
In [13], a method based on potential fields is presented for forming transport formations with the advantages of low computational burden and scalable numbers of robots. However, the method is unable to form a desired transport formation if the object is not star-shaped [13]. The paths travelled by the robots and the duration to establish formations are not optimized either, even though this may be a significant aspect.
In [15], a method based on handling-points (“task-points” in this paper) is proposed for forming complex transport formations, and its general steps are as follows. First, a host robot computes all the task-points according to the number of robots and the shape of the object, and assigns each robot a different task-point. When the first step is successfully completed, each robot will move towards its task-point so that a desired formation can be established. The method presents an important idea for forming transport formations, i.e., all task-points are easy to calculate according to the number of robots and the shape of the object and so forth. If each robot can be assigned to a suitable task-point and move along a sub-optimal path to reach the task-point, then the paths travelled by robots and the time taken to establish formations can be optimized. Furthermore, a desired formation can be always achieved, no matter how many robots exist and how complex the object is. However, the method takes the line segment between a robot and a task-point as the optimal path between them, and each robot is forced to move along a line segment toward its task-point without considering the object and other robots. As a result, when some of the line segments are blocked by the object or by other robots, the method becomes unfeasible.
Up to now, most of the existing works on transport formations do not consider how to optimize the paths travelled by robots and the time taken to establish formations, and few existing methods can guarantee that a desired formation can be formed in cases where the shape of the object is very complex.
Motivated by the limitations noted above and the basic idea of the method in [15], a new method based on bottleneck-linear assignment is developed in this paper for forming complex transport formations, and which can be viewed as an improvement of the method in [15]. The main contributions of the proposed method are presented below.
Inspired by the idea of Dijkstra's algorithm [16, 17] and the fact that all task-points are placed around and close to the object, a two-direction path algorithm is developed for computing the optimal paths from each robot to all the task-points. Via the algorithm, a matrix about the optimal paths from the robots to the task-points is obtained which is the foundation for assigning the task-points.
To optimize the paths travelled by the robots and the time taken to establish formations, a bottleneck-linear assignment strategy is proposed to assign each robot a reasonable task-point. The proposed assignment inherits the advantages of bottleneck assignment and general linear assignment [18] while avoiding their shortcomings. As a result, it performs much better than bottleneck assignment and general linear assignment.
To decrease the computational burden of the artificial moment motion controller presented in [19–21], the methods for attractive segments and attractive points are improved. As a result, when the controller is used to make each robot move safely along a sub-optimal path towards its task-points, the performance in real-time of the controller is improved.
The rest of this paper is organized as follows. In Section 2, models of robots and task-points are introduced and the problem under discussion is formulated. In Section 3, the two-direction path algorithm is discussed and a method using it to compute the optimal paths from a robot to all the task-points is presented. In Section 4, a bottleneck-linear assignment is proposed for assigning each robot a reasonable task-point. The artificial moment motion controller for forming transport formations is improved in Section 5. Several simulations are run and analysed in Section 6, and some conclusions are drawn in Section 7.
2. Associated Models and Problem Formulation
In this paper, the transported object is mathematically abstracted to a polygon. All the robots in the system are close to the object at the initial time, so there is no need for the robots to consider obstacles except for the object.
At the initial time, m task-points are given such that the object-closure condition and associated constraints are satisfied when each robot is on a task-point, where m is the number of robots in the system.
There is one host robot in the system while the others are general robots. Except for these specified aspects, the robots' models, sensors and communication methods are all the same as those in [20].
For example, the model of robot Ri (i=1, 2,…, m) in this paper is also a circle with a radius DR and a principal motion direction line (PMDline). Ri's PMDline is a directed line with a start-point PRi and a length SR, where PRi is Ri's centre and SR is the longest step-length of the robots. The robots' PMDlines have several interesting features, as introduced in [19–21].
At the initial time, the host robot knows not only the position and shape of the transported object but also the positions of all the task-points and robots. Based on this knowledge, the host robot can assign to each robot a different task-point.
A general robot knows of the object but not the other robots at the initial time, and it is necessary to inform the host robot of its position and posture at intervals. If the host robot notes that all robots have reached their task-points, then it will direct all the robots to drag or push the object to move.
The model of task-point Tj (j=1, 2,…, m) is a point with a PMDline. Tj's PMDline is a directed line with a start-point Tj and a length 2SR, and it can indicate the direction of motion of the system over time.
The problem discussed in this paper is to find a better method than that in [15] to assign to each robot a task-point such that no matter how many robots exist and how complex the object is, the feasible path of each robot to its task-point and the time taken to establish a desired formation are both shorter. A better method than that in [15] for robot motion needs to be presented so that each robot can reach its task-point safely with a sub-optimal travelling path, and so that when a robot reaches its task-point, its PMDline direction can be the same as that of its task-point.
Then, β=agl(βi−βj) is the angle from li to lj.
3. The Two-direction Path Algorithm
For assigning each robot a reasonable task-point, the host robot should obtain the optimal paths from Ri (i=1, 2,…, m) to all task-points first of all. A two-direction path algorithm is presented in this section for the problem, which is inspired by the fact that the host robot knows the shape of the object beforehand and that all the task-points are around and close to the object.
For the convenience of introducing the method, some important notations are given.
V: a set consisting of all the task-points and all the end-points of the segments on the boundary of the object. Furthermore, all the points in V are continuously numbered in the order encountered by a light-spot such that it starts from a point A on the boundary of the object and moves forward along the boundary of the object continuously until reaching A again.
For example, In Fig. 1, V={V1, V2,…, V42}, where V1 and V42 are the first and last points encountered by the light-spot respectively.
[oij]: an n × n matrix calculated using the following method, where n is the number of points in V.
If i=j, then oij=0. Else, if ViVj is blocked by the object (ViVj has such points that they are on the object but not on the boundary of the object), then oij is a positive constant with a very large value. Else, oij is the length of ViVj.
For example, in Fig. 1, V1V5 is blocked by the object, so o15 is very large; V1V4 and V1V2 are not blocked by the object, so o14 and o12 are the lengths of V1V4 and V1V2 respectively.
opath: an array about the optimal paths and their lengths from each robot to each point in V, where opath{i}{j} is the record about the optimal path from Ri to Vj.
todo: an increasing permutation of the index numbers of the points in V, where only when the optimal path from Vj1 to Ri has been obtained can j1 be an element in todo. Moreover, if the first element in todo is j, then the last element in todo is j+n, and the index number of Vj1 should be changed to j1+n when j1< j, which implies that Vj1+n is the same point as Vj1. As such, the first and last elements in todo are the points in V with the smallest and largest index numbers, respectively, although they are a same point.

An illustration of the set V
At the initial stage, todo is obtained using the following method: 1) for each l such that PRiVl is not blocked by the object, l is an element of the increasing permutation todo; 2) let the last element in todo be j+n, where j is the first element in todo.
For example, for R1 in Fig. 1, todo is {7, 8, 9, 10, 23, 38, 39, 40, 49} at the initial stage.
Based on Definition 2, Theorem 1 can be stated, which is the foundation of the two-direction path algorithm and the reason for the name of the method.
Assume an element h exists in todo such that h>j1 and VlVh is not blocked by the object. As such, VlVj1Vj2…PRi must intersect with VlVh. Without loss of generality, assume that Vj1Vj2 and VlVh intersect at point E, as shown in Fig. 2(b). It follows that VlEVj2…PRi is such a polyline that is not blocked by the object. On the other hand, because Vj1 is not on VlVh, the polyline VlVj1E is longer than VlE. As a result, VlVj1Vj2…PRi is longer than VlEVj2…PRi, which contradicts the condition that VlVj1Vj2…PRi is the optimal path of Vl to Ri.

Two solutions for the same linear assignment problem. (a) T1 to R2, T2 to R3 and T3 to R3 (b) T1 to R3, T2 to R2 and T3 to R3.
Thus, there is no element h existing in todo such that h>j1 and VlVh is not blocked by the object. The conclusion implies that if the polyline VlVj1Vj2…PRi is the optimal path of Vl to Ri and j1>l, then the polyline is Vl's positive direction path to Ri.
Similarly, it can be proven that if the polyline VlVj1Vj2…PRi is the optimal path of Vl to Ri and j1<l, then it is Vl's negative direction path to Ri. □
Based on Theorem 1, the two-direction path algorithm is given in Algorithm 1.
From Algorithm 1, it can be seen that the two-direction path algorithm is an improvement of Dijkstra's algorithm since the set todo in the two-direction path algorithm is equivalent to the set of the settled nodes in Dijkstra's algorithm [17] and both of them operate in phases.
Two-direction path algorithm for the optimal paths from Ri to all task-points
Method for the bottleneck-linear assignment problem
However, at each phase, all the unsettled nodes need to be considered and only the node with the smallest tentative distance can become settled in Dijkstra's algorithm [17]. In the two-direction path algorithm, however, only the index numbers between j and j1 need to be considered, and two or even more of them can be added to todo (but not always just one).
For example, for R1 in Fig. 1, four index numbers, namely 11, 12, 13 and 14, are added to todo in the phase such that j=10 and j1=23.
Additionally, the two-direction path algorithm can always compute the optimal paths from Ri to all the task-points.
Because of the advantages mentioned above, the two-direction path algorithm is more efficient than Dijkstra's algorithm for the problem discussed in this section.
4. Bottleneck-linear Assignment
Once the optimal paths from Ri(i=1, 2,…, m) to all the task-points are calculated, a matrix shown as (2) can be obtained, where dij(i, j=1, 2,…, m) is the length of the optimal path from a robot Ri to a task-point Tj. The matrix is called the “path cost matrix” (PCM).
The problem of assigning to each robot a different task-point is reduced to selecting m elements from the PCM such that no two selected elements are on a same row/column, and if dij is selected, then Tj is assigned to Ri.
For optimizing the paths travelled by the robots, it is a good idea to reduce the above problem to a linear assignment problem [18, 22]. The reason for this is that the assignment can set the sum of the selected elements as a minimum. Many methods [18, 22] can be used to solve the assignment problem, and the shortest augmenting path algorithm is one of the best methods for this problem thus far [18].
However, linear assignments focus only on the sum but not on the maximum element of the selected elements. As such, the time taken by the last robot to reach its task-point or used to establish a transportation formation may be quite long. The reason for this is that several solutions exist for the same linear assignment problem in general, and the difference between their largest elements is often great.
For example, in Fig. 2, if the linear assignment is used to assign the task-points to the robots, then two solutions shown as Fig. 2 exist. Obviously, the time taken by the last robot to reach its task-point in Fig. 2(b) will be longer than that in Fig. 2(a) if the conditions are the same as each other.
If bottleneck assignment [18] is used to select m elements from the PCM, then the time taken to establish formations can be optimized as it can make the maximum element of the selected elements a minimum. Yet the assignment ignores the sum of the selected elements. This is to say, except for the path of the last robot to reach its task-point, the travelling paths of all the other robots are ignored. Thus, bottleneck assignment is not suitable either.
From the previous discussion, it follows that a better assignment would be to inherit the advantages of the bottleneck and linear assignments while overcoming their shortcomings. The bottleneck-linear assignment defined below is just an assignment as noted above.
The method for the bottleneck-linear assignment problem is given in Algorithm 2.
Bottleneck-linear assignment has many advantages. For example, compared with general linear assignments, it can make the time taken to form a transport formation as short as possible; compared with general bottleneck assignments, it can optimize the paths travelled by all the robots and not just the last robot.
In fact, the features of bottleneck-linear assignment are closest to those of distance-optimization correspondence as proposed in [23]. But for a distance-optimization correspondence, only the elimination method developed in [23] has been used so far. Under the method, the maximum un-eliminated element in the PCM is picked first of all. If the elimination of the element will entail that no m elements can be selected such that no two of them are in the same row/column, then the element is selected. Otherwise, the element is eliminated. The above steps are repeated until m elements are selected. The difficulty of the elimination method is to determine whether an element can be eliminated - a large amount of calculation is needed to do so in general. Thus, distance-optimization correspondence is more difficult to solve than bottleneck-linear assignment.
5. Improved Artificial Moment Motion Controller
Once each robot has a different task-point, a decentralized motion controller can be used to drive each robot safely and independently towards its task-point.
This paper adopts the artificial moment motion controller developed in [19, 20] because it has many advantages. For example, the controller can make a robot reach a target position with obstacles nearby while having a given posture, and it can make robots pass through narrow passages and bypass complicated obstacles safely, as well as resolving the conflicts between robots quickly while avoiding deadlock and livelock situations even in crowded dynamical environments.
The basic idea of the controller is that, at a given time tk, Ri may be influenced by three types of artificial moments, namely, the attractive moment by its attractive-point Pati and attractive angle θati, repulsive moments by obstacles, and coordinated moments by other robots. Under the influence of the artificial moments, Ri changes its PMDline and position along the gradient of the total moments so that the moments can increase quickly. Together with a motion vector (Sxi(k+1), Syi(k+1)) T , which is along Ri's PMDline in general and which is not influenced by the artificial moments, Ri moves one step to the next position. At the next sampling time, the above process is repeated until the task of the system is fulfilled.
From the basic idea of the controller, it can be observed that the attractive point Pati should be obtained first of all. A feasible method for Pati is that based on attractive segments [20, 21], which is believed to be better than that in [19]. The reason for this is that since each attractive segment can be used for several sampling times in general, and can be updated in a timely fashion when necessary, attractive segments can decrease the computational burden for attractive points while guiding Ri to move along a suboptimal path.
However, the method given in [21] for computing new attractive segments involves a heavy computational burden while difficult to understand.
For the above limitations, an improved method for attractive segments is presented in this paper. The method is motivated by the fact that the optimal path from Ri to its task-point Tj, which must be a polyline with vertexes in V, is computed by the host robot.
Let AstiAendi denote the attractive segment of Ri at time tk and Asti(k−1) Aendi(k−1) denote this at tk-1, where Asti is on the object and Aendi is in free space in general.
Assume that the optimal path from Ri to its task-point Tj is the polyline Vj0Vj1Vj2…VjqTj, where Vj0 is PRi. Obviously, if PRiTj is not blocked by the object, then q=0.
Let Vjp denote Asti(k−1). As such, the basic idea for Asti and Aendi can be introduced as follows.
Because an attractive segment can be employed for several sampling times, Asti is Asti(k−1) or Vjp in general. If Asti cannot be Vjp, then Asti is Vj(p+1) in the case where p<q and is empty in the case where p=q. The reason for this is that if Asti cannot be Vjp and p=q, then Tj can be selected as Pati directly.
Aendi is computed based on Asti under the following method. If Asti is empty, then Aendi is empty as well. Otherwise, Aendi is a point such that agl(β(Asti, Aendi)-β(PRi, Asti))=sgn*θa, and the length of AstiAendi is λaDs, where sgn =sign(agl(β(Vj(p-1), Vjp)-β(Vjp, Vj(p+1)))). The method for θa is as follows. If |agl(β(Asti, Vj(p+1)))-β(Asti, PRi))|>π/2, then θa =π/2, else θa =|agl(β(Asti, Vj(p+1)))-β(Asti, PRi))| +δθ, where if p=q, then Vj(p+1) is Tj.
The details of the method for Asti, Aendi and Pati are given in Algorithm 3, where if tk=t0, then p=0; if q>0, then Asti(−1) and Aendi(−1) are Vj1 and PRi, respectively, else they are empty.
If Asti and Aendi cannot be the same as that at tk-1 and the method presented in [21] is used to compute them, then the general steps are as below. First, positive and negative key obstacle function segment sets are computed according to the key block wall of Ri. Second, a reasonable motion direction is selected based on the key obstacle function segment sets and Ri's task-point. Finally, Asti and Aendi are calculated.
Compared with the method in [21], it follows that Algorithm 3 decreases the computational burden for attractive segments for the obvious reasons that Algorithm 3 has no requirement to compute Ri's key block wall, its key obstacle function segment sets or its motion direction, and so forth.
Based on Pati, the attractive angle θati, which is β(PRi, Pati) in most cases, can be obtained by the method presented in [20]. Unlike that in [20], Pati needs no improvement in the process for computing θati in this paper. The reason for this is that, because Tj is always close to the object, Ri cannot block the other robots' paths to their task-points when Ri is on Tj.
Compute Asti, Aendi and Pati at time tk
The artificial motion controller designed in [20] can be used to make Ri move towards and reach Tj.
In the controller, except for some special cases, the length of the motion vector (Sxi(k+1), Syi(k+1)) T is SR. As such, Ri's motion speed will be high in most cases, even though the sum of the artificial moments imposed on Ri is zero. Thus, it is difficult for Ri to become trapped by obstacles and it can pass through narrow passages.
In general, the attractive moment by Pati and θati will make Ri’s PMDline point to Pati (i.e., it will make the direction angle of Ri’s PMDline be θati) and the repulsive moments by obstacles will keep Ri’s PMDline away from obstacles. Because of the motion vector (Sxi(k+1), Syi(k+1)) T , Ri can move close to Pati while staying away from obstacles.
If another robot Rj is close to Ri, then Rj may impose a coordinated moment on Ri so that the conflicts between them can be resolved safely and quickly. The moment is designed according to the following idea. If they have no tendency to move towards each other, then Rj's coordinated moment will only make Ri maintain a safe distance from Rj. Otherwise, the coordinated moment will make Ri move to one side of Rj so that Ri can bypass Rj and so that no collision occurs between them.
For the artificial moment motion controller and the various concepts that are not specified in this paper, readers may refer to [20] for details since they are the same as those in [20].
The details of the proposed method for forming complex transport formations are given in Algorithm 4.
6. Simulations and Analysis
For verifying the feasibility and efficiency of the proposed method, extensive simulations have been carried out. The results of three typical simulations are given in Figs. 3–5, where all the algorithms are written in the MATLAB language. Some parameters are that DS=1.2, λa=0.8, δθ=π/90, DR=0.15 and SR=0.24.

Simulation for 23 robots to form a complex transport formation

Simulation for 32 robots to form a complex transport formation

Simulation for 43 robots to form a complex transport formation
As a comparison, the simulations based on general linear assignment are also given with the same parameters and conditions.
In the simulations, the task-points of each robot determined by general linear assignment and bottleneck-linear assignment are shown in Tabs. 1–3, where “R” denotes the indexes of the robots and “GL” and “BT” denote the task-points of the robots determined, respectively, by general linear assignment and bottleneck-linear assignment.
Assignment results of the task-points in the simulation with 23 robots
Assignment results of the task-points in the simulation with 32 robots
Assignment results of the task-points in the simulation with 43 robots
In Figs. 3–5, small circles with PMDlines indicate task-points and those without PMDlines indicate the initial positions of the robots, where the numbers beside them are their indexes. The larger circles with PMDlines are robots, where the solid colour curves are their travelling paths.
From Figs. 3–5, it follows that all the given transport formations are achieved safely and exactly by the proposed method, although the formations are very complex. Furthermore, each robot's PMDline direction can be the same as that of its task-point when the robot reaches its task-point and comes to a standstill. Thus, the proposed method is feasible.
From the robots' travelling paths, it can be seen that most of the robots do not move along the optimal paths to their task-points. The reason for this is that when an optimal path associated with a robot is computed by the host robot, the robot's size, and conflicts with other robots and collisions with the object are not considered for decreasing the computational burden. However, within the process of movement, all the matters mentioned above are required to be considered. As a result, most of the robots cannot move along optimal paths.
Even so, the differences between the robots' travelling paths and the optimal ones are all very slight. Thus, the simulations verify that the method proposed in this paper for attractive segments can not only decrease the computational burden but can also optimize the robots' travelling paths.
General steps for forming a complex transport formation
In the figures (b) and (d), the time elapsed or steps used to form the provided formations are given. From the results, it follows that the time elapsed or steps used based on bottleneck-linear assignment are much lower than those based on general linear assignment. The result indicates that bottleneck-linear assignment is highly beneficial for the problem discussed in this paper.
7. Conclusions
This paper proposes a method based on bottleneck-linear assignments for assigning each robot a reasonable task-point. An improved artificial moment motion controller is used to make each robot move safely towards its task-point while its travelling path is shorter. The following aspects of this paper deserve further attention.
The two-direction path algorithm. The algorithm is the foundation of the task-points' assignment as it can compute the optimal paths from Ri (i=1, 2,…, m) to all the task-points. Although some aspects of the algorithm are similar to those of Dijkstra's algorithm, it has many advantages. For example, the algorithm can always compute the optimal paths from Ri to all the task-points; at each stage, only some of the elements' index numbers that are not in todo are considered, and the number of the elements in todo may increase by two or more (but not always by one). Thus, the algorithm is more efficient than Dijkstra's algorithm.
The bottleneck-linear assignment and the method for the assignment. The assignment has many advantages. For example, compared with general linear assignments, it can make the time used to form a transport formation become as short as possible; compared with general bottleneck assignments, it can optimize the travelling paths of all the robots and not just the last robot; compared with the distance-optimization correspondence, it is easier to solve.
The improved method for attractive segments. The method is based on the fact that the optimal path of Ri to its task-point has been computed by the host robot at the initial stage. Moreover, if necessary, a new attractive segment for Ri can be quickly calculated by the method while there is no requirement to compute Ri's key block wall, key obstacle function segment sets or motion direction, and so forth. Thus, the method decreases the computational burden for attractive segments considerably, and the performance of the artificial moment motion controller is improved when it is implemented in real-time.
In the future, we will investigate how to use the strategy based on the artificial moments to control complex multi-robot transport formations so that the transported objects can be moved to desired positions.
Footnotes
8. Acknowledgements
The research reported herein was supported by the Natural Science Foundation of China (71571091, 71371092), the Natural Science Foundation of Liaoning Province (2015020054) and the Liaoning Province Ministry of Education Scientific Study Project (L2013121). The authors of this paper would like to express their gratitude to the anonymous reviewers for their valuable comments which have helped us to improve the paper.
