Abstract
This article proposes three control algorithms for the emergence of self-organized behaviours, including aggregation, flocking and rendezvous, in swarm robotics systems. The proposed control algorithms are based on a local polar coordinates’ control law available in the literature for posture regulation; this law is adapted to work in a self-organized robotic swarm using distance and bearing as coupling information. Therefore, the robots only need to know the radial distance and orientation to the goal; additionally, the three algorithms are based on self-organization, eliminating the need for a preset coupling topology among the robots. In particular, the flocking algorithm has a first stage for topology creation, while the rendezvous and aggregation algorithms change the topology on every iteration depending on the local interactions of the robots. The effectiveness of the algorithms was evaluated through numerical simulations of swarms of up to 100 differential traction wheeled mobile robots.
Introduction
Current trends, inspired by the observation of the interaction of social organisms, such as bees, ants and fish, include the implementation of groups to solve tasks in a collective fashion. Many benefits of robotic group implementations have been reported in the literature. The principal advantages of working in groups instead of as individuals for problem solving are summarized below
1
:
Ability/capacity: A single individual may have limited or insufficient capacities to perform tasks alone, especially if tasks are composed of complex subtasks, for example, heavy lifting and simultaneous work in different spaces.
Efficiency: Working in groups allows for tasks to be fulfil faster as well as more effectively and efficiently than by a single individual, particularly if tasks involve constant workspace displacement.
Redundancy and fault tolerance: Redundancy is the ability of the group to fulfil (totally or partially) the tasks of one group member, assuming the member alone cannot complete the task. This characteristic allows a group to continue working even when some members are lost due to internal failures or by external forces.
Cost: Due to task division, each group member can be constructed with more inexpensive parts, thanks to the limited characteristics needed instead of a single individual performing a complex task alone.
Swarm robotics is an approach of multi-robot systems inspired by the behaviour of social organisms, such as bacteria cultures, ant colonies, bee swarms and bird flocks.
2
The principal objective of this system is to coordinate a group of robots with limited individual characteristics in such way that collective behaviours emerge, to conjointly perform complex tasks.
3
For this purpose, robots depend on the interaction with other members of the group in a nearby area, because typically, these robots have short-range communication modules. The characteristics that define a robotic swarm include the following
4
:
Robustness: the ability of the group to fulfil the task collectively in the presence of failures of some swarm members.
Scalability: the capability of the group to complete their tasks indistinctly of the number of members in the swarm.
Flexibility: the adaptation of the robotic swarm to address environment changes.
In the literature, different control strategies are found to generate collective behaviours in multi-robot systems: for example, the emergence of rendezvous using graph theory with fixed coupling among robots is one such strategy. 5,6 On the other hand, it was shown that adaptive control with output feedback produces the same collective behaviour 7 ; even more, rendezvous can be achieved with an event-triggered control. 8
In the flocking case, some works applied graph theory, 9,10 while others were based on a predictive model control scheme. 11,12
Ultimately, aggregation was treated using commutation techniques for groups consisting of multiple function nodes, imitating the behaviour of certain dopaminergic neurons. 13 In other works, the authors preferred to solve the aggregation problem using probabilistic finite state machines, 14,15 and another paper employed virtual physical forces for the emergence of aggregation. 16 Based on the different literature reported on collective behaviours for multi-robot systems, the objective of this work consists of the present three control algorithms, as well as the numerical simulation results of their implementation on robotic swarms of up to 100 differential traction wheeled mobile robots (WMRs) for the emergence of the following three particular collective behaviours: aggregation, flocking and rendezvous.
Nevertheless, all of the collective behaviours reported in this work emerge due to self-organization, a phenomenon commonly found in nature, in which organisms achieve common behaviours without the intervention of external forces or the direct influence of a leader. 17 Some examples of the presence of auto-organization in nature include tissue formation due to the union of distinct cells, pattern formation in desert dunes 18 and labour division in social insect colonies. 19 The main advantages of the control algorithms described in this work are as follows. (i) Unlike evolving techniques, the implemented controllers represent low computational cost. (ii) The inputs needed for the controllers are distance and orientation to other robots or special landmarks on a robot local frame, making them ideal for implementation using ranging sensors and beacons, without the need to use global framework measurement or state observers on the controller. (iii) Unlike in graph-theory-based techniques, a self-organized swarm does not need the robots to have preset IDs nor previous knowledge of the number of robots in the swarm to establish the interactions.
The remainder of the article is organized as follows. In the second section, the definitions of preliminary concepts involved with the kinematics of a single WMR, including the control law for posture regulation for a desired posture input, are presented. In the third section, the proposed control algorithms for the emergence of aggregation, flocking and rendezvous are described. Later, fourth section presents the numerical simulation results of the three control algorithms; finally, in the fifth section, conclusions and future work are stated.
Preliminaries
For the purpose of this work, every robot of the swarm is represented by a WMR. The simplest model of a WMR is the unicycle, corresponding to a single upright wheel, rolling in a plane
20
(see Figure 1). With generalized coordinates
in which v and ω represent the linear and angular velocities of the unicycle WMR, respectively.

Simplest representation of the unicycle mobile robot.
For the purpose of driving the WMR to a desired position
where ρ is the distance of the robot position (x, y) to its desired position (

Representation of the unicycle WMR framework in polar coordinates. WMR: wheeled mobile robot.
In this work, the following control law in polar coordinates that guarantees asymptotic posture regulation 20,21 is employed
with gains
The transformation of the controller (4) to polar coordinates entails the existence of a discontinuity, since γ and δ angles are not defined for
in which
For WMR implementation purposes, a differential traction structure is employed, which corresponds to the kinematics of a unicycle robot with simplest construction and control. This WMR model is controlled through the modulation of the angular velocities of its actuated wheels (see Figure 3). If the control law (4) is used to regulate the posture of a WMR with differential traction, it is necessary to calculate the angular velocities of its left and right wheels,

Differential traction WMR. This robot is controlled through the angular velocities of its actuated wheels. WMR: wheeled mobile robot.
Self-organized collective behaviours
This section describes the following three collective behaviours generated in this work: aggregation, flocking and rendezvous, as well as the corresponding control strategies.
Aggregation
Aggregation is a collective behaviour frequently observed in natural organisms, ranging from bacteria to social insects, such as bees, termites and cockroaches as well as in various mammals. 23 Aggregation helps organisms avoid predators, endure hostile environments and reproduce. 24 This behaviour emerges in two different ways. First, the behaviour can be guided by the ambient conditions; for instance, organisms gather in environment zones with propitious characteristics such as temperature, humidity or resource availability. Second, this behaviour can emerge in homogeneous environments without special zones; in this case, the aggregation is a product solely of the interactions among the members of the group. 25 Concerning robotic swarms, the objective of aggregation (Figure 4) is to group an originally scattered set of robots in a particular environment zone. 4 This basic behaviour is fundamental because it allows the robots to get close in such a way that more interactions exist, producing more complex collective behaviours. 26 The principal approaches for the emergence of this behaviour reported in the literature include artificial evolution, probabilistic algorithms and artificial potential fields. 27

Aggregation of a robotic swarm: (a) first, all the robots are scattered; (b) next a strategy is implemented to select a zone to gather; (c) depending on the strategy, a single group can be formed or (d) may form several groups, including isolated robots.
In this work, the last approach is used to achieve aggregation in a robotic swarm. The strategy consists of driving every robot to the centroid of a triangle formed by its position, the position of the closest robot to it and the robot corresponding to the farthest robot in its sensing area (see Figure 5). To accomplish this task, every robot behaves according to Algorithm 1.

The ith robot tries to reach the position of the centroid in the figure formed between its position and those of the nearest and farthest robots to it.
Self-organized aggregation procedure
It is important to establish that the efficiency of this strategy resides in the communication radius of each robot, which, if too small, can induce the formation of different scattered groups and even isolate some robots from the groups. To avoid this issue, some algorithms use external signals, which allow the robots to detect special aggregation areas. 28
Flocking
Flocking is often present in nature, for example, in birds, fish and animals flock. Decades ago, scientists of different disciplines, including animal behaviour, physics, social sciences and computational sciences, have dedicated themselves to study the emergence of this collective behaviour.
29
This behaviour is characterized by a fluent movement of the whole group, due to individual actions of every member of the group (Figure 6). Reynolds
30
proposed a set of basic rules for local interaction between elements of the group with the purpose of coordinating their movements, eventually known as the Reynolds rules
31
:
Cohesion: the elements of the swarm should stay together.
Alignment: the elements should match their speeds.
Separation: the elements in the swarm should avoid collision.

n-Trailer flocking. (a) Robots need to order themselves to display the desired formation. (b) The robot is designated with
As an application example, flocking was achieved, combining the Reynolds rules with a spiral search algorithm, based on the behaviour of hunting hawks, for a swarm of autonomous underwater vehicles with searching purposes. 32 On the other hand, Tanner et al. studied the stability in a swarm formed by agents with double integrator dynamics, in which every agent is controlled in a way that all the agents move with a common velocity while maintaining a specific distance among them using two different approaches: fixed coupling topologies 33 and time-varying topologies. 34
To generate this collective behaviour in a robotic swarm, we propose that WMRs move like a platoon, displaying a chain pattern while following a specific trajectory. To achieve flocking, the concept of n-trailer is used, in which a robot drags an arbitrary number of trailers represented with more WMRs. 35 In this case, we identify the following two different control objectives: one for the first robot, which follows the desired trajectory, and one for the follower robots, which try to regulate their positions to an anchor point located at a distance ℓ behind another robot (see Figure 7). This point represents the anchorage between the truck and the trailer.

Coupling point of the i + 1 robot, located at a distance ℓ behind robot i.
For the first robot in the platoon, the posture regulation controller (5) is used, in which, the desired position
The path generator must satisfy the non-holonomic constraint in the WMR. For the follower robots, the posture regulation controller (5) is used to drive the robots to their anchor point. In this case, the desired position for the ith WMR applied at the input of its controller is selected as follows
It is worth to mentioning that, for the self-organization of the swarm, all robots have both behaviours programmed, and it is up to the group to select the robot that will follow the desired trajectory. For this purpose, every WMR executes Algorithm 2, based on equations (7) and (8).
Self-organized flocking
Rendezvous
In a robotic swarm acting in a finite environment, there may exist some in which these robots must gather in a determined spot; this behaviour is known as rendezvous (Figure 8). This collective behaviour can be the first step of pattern formation, or this spot can be used as a recharging or maintenance station, also, it can be used to start complex behaviours such as collective transportation .
36
In the literature, different definitions of rendezvous are reported; however, in this work, it is considered as the task to simultaneously gather a group of robots in a previously known (or negotiated) place in the workspace.
37,38
If

Rendezvous of a robotic swarm. (a) A group of scattered robots try to regulate their position to a previously known rendezvous zone. (b) The farthest robots come closer to the zone faster, while robots closest to the rendezvous zone decelerate, waiting for the others. (c) In an arbitrary time step, all robots lie outside the border of the rendezvous zone, while in the next time step, (d) all robots cross the rendezvous zone border simultaneously.
It is possible to apply different control strategies to achieve this objective. For example, in the literature, works show that rendezvous is achieved by applying a series of advance and stop movements on the robots until they gather.
39,40
In this work, the proposed strategy consists of amplifying and attenuating the linear and angular velocities of the regulation controller (5) with variable gain, which is a function of the distance from the robots to the rendezvous point. Thus, we assume that the WMR moves in a finite workspace in which the distance from any robot to the rendezvous point is bounded by
in which
It can be observed in equation (10) that if robot i has a greater distance to the rendezvous point than robot j, that is
Self-organized rendezvous
Numerical results
To assess the effectiveness of the proposed control algorithms, numerical simulations on swarms of different sizes were conducted to evaluate the scalability. For all cases shown, the initial postures
Aggregation
In this case, the algorithm was iterated 2000 times for each robotic swarm with sampling period

Results of aggregation. (a) Initial average distances of the robots with a box plot. (b) Average distances of the robots after 2000 aggregation algorithm iterations in all simulated swarms.
Due to the nature of the algorithm, some robots can be isolated from the main aggregate (i.e. the group with more robots), forming another aggregate with fewer elements. It is difficult to delimit the area covered by the main aggregate, thus the use of the average distances between all robots is proposed as a threshold for belonging to main aggregate. Therefore, a robot belongs to the main aggregate if its average distance to the other WMRs is equal to or less than the average distances of all robots. Figure 10 shows the percentage of WMRs that belong to the main aggregate considering this metric. In the literature, different metrics are used to evaluate aggregation algorithm performance. In particular, the expected cluster size (ECS) and total distance (TD) among robots are examiend.
14
ECS uses a threshold

Percentage of robots belonging to the main aggregate for different simulated swarms.
Using this neighbourhood, the size of a cluster can be defined for each robot; namely,
The other metric included in this work is TD, which measures the TD between each robot pair. This metric uses negative distance to emphasize the high metric value for better clustering. TD is defined as follows 14
We can observe the estimated cluster size for each simulated swarm size, considering

ECS for different swarm sizes. ECS: expected cluster size.
On the other hand, regarding the spatial information, Figure 12 shows the TD among robots for each swarm size. It is worth mentioning that distance decreases with 2000 algorithm iterations.

TD among robots before (blue) and after (red) execution of the aggregation algorithm. TD: total distance.
Figure 13(a) shows the aggregation of a 10-WMR swarm; in this case, the main aggregate contains 7 WMRs, while 3 WMRs are scattered through the workspace. Two scattered WMRs aggregate themselves close to the main aggregate. On the other hand, Figure 13(b) shows that some secondary aggregates formed around the main aggregate in the 100-WMR swarm.

Positions of the robots in a swarm of (a) 10 robots and (b) 100 robots after execution of the aggregation algorithm.
As an example, Figure 14 shows the average distance of each WMR in the 10-WMR swarm of Figure 13(a), highlighting the average distances metric used to determine whether a WMR belongs to the main aggregate.

Average distances of 10 robots in the swarm over time. The dashed line represents the average distances.
Flocking
In flocking simulations, Algorithm 2 was iterated 2000 times with a sampling period of 0.22 s. The desired distance between the WMRs was selected as 0.5 m. The desired trajectories for the simulations are circular, and a Gerono’s lemniscate with frequency of
For the first simulation, Figure 15 shows the postures of five WMRs at the beginning of the simulation and for different time instants. The WMRs describe a circular trajectory while maintaining a chain formation. Figure 16 shows the WMR postures at different time instants while tracking Gerono’s lemniscate trajectory. In both cases, the red dashed line corresponds to the desired trajectory.

Different time instants for the flocking simulation of a five-robot swarm tracking a circular trajectory. Postures correspond to (a) initial, (b)

Postures of the five robots in the swarm tracking Gerono’s lemniscate. Postures correspond to (a)
For the simulations corresponding to the 10-WMR swarm, Figure 17 shows the behaviour of the WMRs at different time instants while trying to flock in a circular trajectory. Figure 18 shows the corresponding postures for the same swarm pursuing Gerono’s lemniscate trajectory. As in previous figures, the desired trajectory of the first WMR in the platoon is represented with the red dashed line.

Results of flocking in a 10-robot swarm in a circular trajectory. Postures correspond to (a) initial, (b)

Swarm of 10 robots describing Gerono’s lemniscate while moving like a platoon. Postures correspond to (a)
Figure 19 shows the trajectories of the robots in the different simulations. As the number of robots increases, it takes more time to make the selected formation because the platoon formation forces some robots to wait and do extra movements to solve the non-holonomic constraints inherent to the unicycle WMR.

Trajectories described for the robots flocking in the four simulations. (a) Five-robot swarm with circular trajectory, (b) Gerono’s lemniscate trajectory and the 10-robot swarm, (c) circular and (d) Gerono’s lemniscate.
Rendezvous
For this case, the rendezvous algorithm was iterated 2000 times for each robotic swarm. It is worth highlighting that the rendezvous point changed to a rendezvous zone, in which the robots are considered gathered, with a radius of 5 m centred on the desired rendezvous point. For all cases, this point is previously known for the robots and was selected randomly within the workspace. Figure 20 shows the time needed to rendezvous all the robots, meaning all the robots are in the rendezvous zone.

Rendezvous time for different swarm sizes.
As an example, Figure 21 shows the behaviour of the WMRs in a 10-WMR swarm when they are about to rendezvous around 403.9 s, corresponding to 1836 iterations of the rendezvous algorithm with a sampling period of 0.22 s.

Postures of the robots around the rendezvous zone (delimited with the red circle) at (a)
The initial postures for the 100-WMR swarm are shown in Figure 22. The time needed to rendezvous this swarm was 256.3 s, as seen in Figure 20 and corroborated with the position errors of Figure 23. Notice how the distance errors

Initial postures of 100 robots in the swarm for the rendezvous simulation.

(a) Position error of robots with respect to the rendezvous point and (b) zoom of the errors around the rendezvous time. For both graphs, we can observe the distance to the rendezvous point, highlighting the rendezvous area radius with the dashed line.
Conclusions
In this work, using a posture regulation controller found in the literature, three control algorithms were developed for the emergence of self-organized collective behaviours in a robotic swarm. The proposed algorithms are based on polar coordinates; therefore, the robots share only distance and bearing to special neighbouring landmarks. None of the algorithms need a preset static coupling topology due to self-organization strategies. Future work includes implementation on real robotic swarms and examining the implementation feasibility in the design process of the algorithms. The algorithm simplicity in all the cases is found in the use of distances and orientations to other robots or special landmarks; therefore, implementation is intended to be achieved using ranging sensors and beacons. None of the proposed algorithms need position calculation in the global framework. The control algorithms were evaluated through numerical simulations on swarms up to 100 WMRs, selected for illustration purposes, in order to prove scalability. Future work will find a bound on the number of robots that can be controlled at once. Additionally, none of the proposed algorithms consider collision avoidance; thus future work will implement a strategy to avoid collisions between robots. In the aggregation algorithms, the results show it is not feasible in every case to aggregate all the robots in a single group; although, robots outside the group considerably decreased their average distance to other robots. In some cases, more than one group emerged. The implemented flocking strategy is not unique, because different formations can be obtained by changing the position of the anchor point. In that sense, the formation pattern can be changed to emulate the pattern displayed by migrating flocks or to represent schools of fish. From the numeric results, we conclude that the size of the swarm and the complexity of the trajectory are fundamental for the position allocation of robots because a contradiction may arise from the platoon length and the desired trajectory. In the rendezvous task, we considered that all the robots have to arrive to the rendezvous point simultaneously; however, it is more practical to consider the idea of a rendezvous area in which all robots are gathered. For all swarm sizes simulated, a practically simultaneous arrival of robots was achieved at the border of the rendezvous zone.
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 by CONACYT through the Research Project on Basic Science, ref. 166654 (A1-S-31628).
