Next Article in Journal
Predicting High-Risk Students Using Learning Behavior
Next Article in Special Issue
Learning to Utilize Curiosity: A New Approach of Automatic Curriculum Learning for Deep RL
Previous Article in Journal
Preface to the Special Issue “Natural Language Processing (NLP) and Machine Learning (ML)—Theory and Applications”
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

On the Throughput of the Common Target Area for Robotic Swarm Strategies

by
Yuri Tavares dos Passos
1,2,*,
Xavier Duquesne
2 and
Leandro Soriano Marcolino
2
1
Centro de Ciências Exatas e Tecnológicas, Universidade Federal do Reconcâvo da Bahia, Rua Rui Barbosa, 710. Centro., Cruz das Almas 44380-000, Brazil
2
School of Computing and Communications, Lancaster University, Bailrigg, Lancaster LA1 4WA, UK
*
Author to whom correspondence should be addressed.
Mathematics 2022, 10(14), 2482; https://doi.org/10.3390/math10142482
Submission received: 12 June 2022 / Revised: 11 July 2022 / Accepted: 14 July 2022 / Published: 16 July 2022

Abstract

:
A robotic swarm may encounter traffic congestion when many robots simultaneously attempt to reach the same area. This work proposes two measures for evaluating the access efficiency of a common target area as the number of robots in the swarm rises: the maximum target area throughput and its maximum asymptotic throughput. Both are always finite as the number of robots grows, in contrast to the arrival time at the target per number of robots that tends to infinity. Using them, one can analytically compare the effectiveness of different algorithms. In particular, three different theoretical strategies proposed and formally evaluated for reaching a circular target area: (i) forming parallel queues towards the target area, (ii) forming a hexagonal packing through a corridor going to the target, and (iii) making multiple curved trajectories towards the boundary of the target area. The maximum throughput and the maximum asymptotic throughput (or bounds for it) for these strategies are calculated, and these results are corroborated by simulations. The key contribution is not the proposal of new algorithms to alleviate congestion but a fundamental theoretical study of the congestion problem in swarm robotics when the target area is shared.

1. Introduction

Swarms of robots are systems composed of a large number of robots that can only interact with direct neighbours and follow simple algorithms. Interestingly, complex behaviours may emerge from such straightforward rules [1,2]. An advantage of such systems is the usage of low-priced robots instead of a few expensive ones to solve problems. Robotic swarms accurately projected for simple robots may solve complex tasks with greater efficiency and fault-tolerance, while being cheaper than a small group of complex robots oriented for a specific problem domain. They can also be seen as a multi-agent system with spatial computers, which is a group of devices displaced in the space such that its objective is defined in terms of spatial structure and its interaction depends on the distance between them [3]. Swarms have recently been receiving attention in the multi-agents systems literature in problems such as logistics [4], flocking formation [5], pattern formation [6] and the coordination of unmanned aerial vehicle swarms [7]. In such problems relating to spatial distribution, conflicts may be created by the trajectories of the robots, which may slow down the system, especially when a group is intended to go to a common region of the space. Some examples where this happens are waypoint navigation [8] and foraging [9].
The topic of robotic traffic control has been studied for a long time [10,11,12], but with the premise that autonomous cars navigate on delimited lanes and that coordination is needed only at junctions. Even recent related works on multi-agent systems [13,14,15] also deal with this problem in a similar way. In [16,17], they also deal with multi-agents and pathfinding, but not in a situation where the target of every agent is the same area. Furthermore, distributed solutions are considered here where agents only have local information, while [16,17] propose centralised solutions. Xia et al. [18] investigate the topology of the neighbourhood relations between multiple unmanned surface vehicles in a swarm. They deal with maintaining formation in swarms, but they have to keep virtual leaders, and their goal is not to minimise congestion.
Moreover, there has not been much research on the problem of reducing congestion when a swarm of robots is aimed at the same target. Surveys about robotic swarms [19,20,21,22,23,24] do not provide information regarding these situations. Even a recent survey on collision avoidance [25] does not address this issue, though it provides insights into multi-vehicle navigation. Congestion in robotic swarms is mostly managed by collision avoidance in a decentralised fashion, allowing for improved algorithm scalability.
However, solely avoiding collisions does not necessarily lead to a good performance in problems with a common target. For example, Marcolino et al. [26] showed that the ORCA algorithm [27] reaches an equilibrium where robots could not arrive at the target despite avoiding collisions. That paper also presented three algorithms using artificial potential fields for the common target congestion problem, but no formal analysis of the cluttered environment was conducted. Hence, congestion is still not well understood, and more theoretical work is needed to measure the optimality of the algorithms. A better understanding of this topic should lead to a variety of new algorithms adapted to specific environments. Thus, this paper aims to introduce the first theoretical study on this problem, which should lead to future enhancements in handling congestion in robotic swarms.
Therefore, this work fits in the literature on mathematical models of swarm robotics, such as the works by Lima and Oliveira [28], which models a cellular automata ant memory to control a robot swarm for foraging tasks; Varghese and McKee [29], for pattern transformation modelling; Li and Chen [30], for box-pushing; Taylor-King et al. [31], which studies the effect of turning delays on the behaviour of groups of robots; Galstyan et al. [32], for microscopic robots that reside in a fluid and can detect chemicals; Khaluf and Dorigo [33], which models swarm performance measures using the integral of linear birth–death processes; and Mannone et al. [34], which uses category theory and quantum computing to model the development of robotic swarm systems. However, as mentioned, these theories do not yet allow one to better understand swarm congestion.
Furthermore, any elaborated analysis on that subject must investigate the effect of the increase in the number of individuals on the swarm congestion, as it is desirable for the system to perform well as it grows in size. If one has a finite measure that abstracts the optimality of any algorithm as the number of robots goes to infinity, this can be used as a metric to compare different approaches to the same problem. Thus, this work presents as a metric the common target area throughput. That is, a measure of the rate of arrival in this area is proposed as the time tends to infinity as an alternative approach to analyse the congestion in swarms with a common target area. In network and parallel computing studies [35,36], asymptotic throughput is used to measure the throughput when the message size is assumed to have infinite length. The same idea is used here, but instead of message size, it is applied with infinite time, as if the algorithms run forever. As it will be presented in the next section, this implies dealing with an infinite number of robots. Thus, time is being used here instead of message size or bytes, as in computer network studies.
Therefore, the contributions in this paper are the following.
  • A method for evaluating algorithms for the common target problem in a robotic swarm by using the throughput in theoretical or experimental scenarios is proposed.
  • An extensive theoretical study of the common target problem is presented, allowing one to better understand how to measure the access to a common target using a metric not yet used in other works on the same problem.
  • Assuming a circular target area and that the robots are constantly moving at the maximum linear speed and have a fixed minimum distance from each other, theoretical strategies for entering the area are developed, and their maximum theoretical throughput for a fixed time and their maximum asymptotic throughput when time goes to infinity are calculated (or bounds for it). Additionally, the correctness of these calculations is verified by simulations.
The presented theoretical strategies are based on forming a corridor towards the target area or making multiple curved trajectories towards the boundary of the target area. For the corridor strategy, the throughput when the robots are moving towards the target in square and hexagonal packing formations is also discussed. The theoretical strategies are evaluated by realistic Stage [37] simulations with holonomic and non-holonomic robots. These experiments corroborate that whenever an algorithm makes a swarm take less time to reach the target region than another algorithm, the throughput of the former is higher than the latter.
Note that the key contribution of this work is not the proposal of new algorithms to alleviate congestion but a fundamental theoretical study of the congestion problem in swarms having the same target. The presented strategies are the theoretical grounding for new distributed algorithms for robotic swarms in our concurrent work [38]. When we assume that the robots are constantly moving at maximum linear speed and maintaining a fixed minimum distance, we can provide analytical calculations of the maximum possible throughput for a given time and bounds or exact value of the maximum asymptotic throughput for the different theoretical strategies. Based solely on these calculations, we can compare which strategy is better. However, for robots using artificial potential fields, it is not straightforward to obtain explicit throughput equations due to the changeability of those quantities previously assumed constant. Then, in the lack of closed asymptotic equations, simulations were performed in [38] for the algorithms inspired by our strategies in order to obtain experimental throughput and compare algorithms for varying linear speeds and inter-robot distances. As shown by these experimental data, their variation and the effect of the other robots in the trajectory does affect the throughput. However, the analytically calculated maximum throughput in this work serves as an upper bound to the ones obtained from the simulations in more realistic conditions when considering the mean speed and mean distance between the robots in place of the constant values on the obtained equations.
This paper is organised as follows. The next section briefly explains the mathematical notation being used. Section 3 formally defines the common target area throughput and proves statements about this measure for theoretical strategies that allow robots to enter the common target area. Section 4 describes the experiments and presents their results to verify the correctness of the theoretical strategies results. Finally, Section 5 summarises the results and gives final remarks.

2. Notation

Geometric notation is used as follows. A B ,   A B and A B ¯ represent a line passing through points A and B, a ray starting at A and passing through B and a segment from A to B, respectively. | A B ¯ | is the size of A B ¯ . A B C D means A B is parallel to C D . If a two-dimensional point is represented by a vector P 1 , its x- and y-coordinates are denoted by P 1 , x and P 1 , y , respectively.
A B C expresses the triangle formed by the points A, B and C. A B C D E F and A B C D E F mean the triangles ABC and DEF are congruent (same angles and same size) and similar (same angles), respectively. Depending on the context, the notation is omitted for brevity.
A O B ^ means an angle with vertex O, one ray passing through point A and another through B. Depending on the context, if only one E F G is being dealt with, its angles will be named only by E ^ , F ^ and G ^ . All angles are measured in radians in this paper.

3. Theoretical Analysis

This paper considers the scenario where a large number of robots must reach a common target. After reaching the target, each robot moves towards another destination which may or may not be common among the robots. It is assumed that the target is defined by a circular area of radius s. A robot reaches the target if its centre of mass is at a distance below or equal to the radius s from the centre of the target. In addition, it is supposed that there is no minimum amount of time to stay at the target. Additionally, the angle and the speed of arrival have no impact on whether the robot reached the target or not. In this section, theoretical strategies are constructed to solve that task and show limits for the efficiency of real-life implementations, which we developed in a concurrent work [38]. To measure performance, the following definition is presented.
Definiton 1.
The throughput is the inverse of the average time between arrivals at the target.
Informally speaking, the throughput is measured by someone located on the common target (i.e., on its perspective). It is considered that an optimal algorithm minimises the average time between two arrivals or, equivalently, maximises throughput. The unit for throughput can be in s 1 . It will be noted f (as in frequency). The rest of the paper focuses on maximising throughput.
Assume an experiment was run with N 2 robots for T units of time, such that the time between the arrival of the i-th robot and the i + 1 -th robot is t i , for i from 1 to N 1 . Then, by Definition 1, f = 1 1 N 1 i = 1 N 1 t i = N 1 i = 1 N 1 t i = N 1 T , because i = 1 N 1 t i = T . Thus, an equivalent definition of throughput is given:
Definiton 2.
The throughput is the ratio of the number of robots that arrive at a target region, not counting the first robot to reach it, to the arrival time of the last robot.
The target area is a limited resource that must be shared between the robots. Since the linear speeds of the robots have an upper bound, a robot needs a minimum amount of time to reach and leave the target before letting another robot in. Let the asymptotic throughput of the target area be its throughput as the time tends to infinity. Because any physical phenomenon is limited by the speed of light, this measure is bounded. Then, the asymptotic throughput is well suited to measure the access of a common target area as the number of robots grows.
One should expect that the asymptotic throughput depends mainly on the target size and shape, the speed of the robots, and the distance between robots. As any bounded target region can be included in a circle of radius s, only circular target regions will be dealt with hereafter. If the robots are moving at maximum speed and keeping the distance between each at a minimum value all the time, then it is also expected that the throughput and asymptotic throughput reach their maximum value. Thus, it is assumed hereafter that the robots move at a constant maximum linear speed, v, and the distance between each other is either constant when possible or no lower than a fixed value, d.
To efficiently access the target area, two main cases are identified: s d / 2 and s < d / 2 . There are targets that several robots can simultaneously reach without collisions. That is the case if the radius s d / 2 . Thus, one approach is making lanes arrive in the target region so that as many robots as possible can simultaneously arrive. After the robots arrive at the target, they must leave the target region by making curves. However, we discovered [38] that this approach does not obtain good results in realistic simulations due to the influence of other robots, although it is theoretically the best approach if the robots could run at a constant speed and maintain a fixed minimum distance between each other.
The case where s < d / 2 , when only one robot can occupy the target area simultaneously, is of interest. Making two queues and avoiding the inter-robot distance being less than d is good guidance to work efficiently. Particularly, the case s = 0 offers interesting insights, so this is discussed next.
Some lemmas and propositions need a long technical treatment to be proven. In order to avoid the reader missing the main idea of this paper, only their statements are provided. All proofs are available in the Supplementary Materials.

3.1. Common Target Point: s = 0

Consider the case where robots are moving in straight lines at constant linear speed v, maintaining a distance of at least d between each other. A robot has reached the target when its centre of mass is over the target. When s = 0 , the target is a point. The first result is the optimal throughput when robots are moving in a straight line to a target point. It is illustrated in Figure 1. This section constructs a solution to attain the optimal throughput.
First, consider two robots, Robot 1 and Robot 2. Their trajectories are straight lines towards the target. Assume the straight-line trajectory of Robot 1 has an angle θ 1 with the x-axis and the one of Robot 2 has θ 2 . Define θ 2 θ 1 = θ as the angle between the two lines. The positions of the robots are described by the kinematic Equation (1) below, where ( x 1 ( t ) , y 1 ( t ) ) and ( x 2 ( t ) , y 2 ( t ) ) are the positions of Robot 1 and Robot 2, respectively, and t R is an instant of time. Without loss of generality, the origin of time is set when Robot 1 reaches the target, and the target is located at ( 0 , 0 ) . Thus, ( x 1 ( 0 ) , y 1 ( 0 ) ) = ( 0 , 0 ) . τ is the delay between the two arrivals at the target. Then, ( x 2 ( τ ) , y 2 ( τ ) ) = ( 0 , 0 ) , and
x 1 ( t ) y 1 ( t ) = v t cos ( θ 1 ) v t sin ( θ 1 ) and x 2 ( t ) y 2 ( t ) = v ( t τ ) cos ( θ 2 ) v ( t τ ) sin ( θ 2 )
In order to find the optimal throughput, this paper starts with its first lemma:
Lemma 1.
To respect a distance of at least d between the two robots, the minimum delay between their arrival is d v 2 1 + cos ( θ ) .
This result leads to Proposition 1.
Proposition 1.
The optimal throughput f for a point-like target ( s = 0 ) is f = v d . It is achieved when robots form a single line, i.e., the angle between the trajectories of the robots must be 0.
The insight derived from Proposition 1 implies that one should increase the speed of the robots or decrease the minimum distance between them to increase the throughput. It is also noted that the optimal trajectory for all the robots is to form a queue behind the target and Robot 1. As a result, the optimal path is to create one lane to reach the target. When the angle θ between the path of a robot and the next one is increased, a delay from the optimal throughput is introduced. For instance, Figure 2 shows the normalised delay for different angles θ (normalised by dividing τ by τ m i n = d / v ) between two robots, according to Lemma 1. This figure shows that for an angle of π / 3 , the minimum delay is 15 % higher than for an angle of 0, and the minimum delay is 41 % higher for an angle of π / 2 .

3.2. Small Target Area: 0 < s < d / 2

This section supposes a small target area where 0 < s < d / 2 ; hence, two lanes with a distance d cannot fit towards the target yet. The next results are based on a strategy using two parallel lanes as close as possible to guarantee the minimum distance d between robots. Figure 3 describes these two parallel lanes. This strategy is called compact lanes hereafter. Proposition 2 considers a target area with radius 0 < s 3 4 d , and Proposition 3 assumes 3 4 d < s < d 2 .
Proposition 2.
Assume two parallel lanes with robots at constant speed v and maintaining a constant distance d between them. The throughput of a common target area with radius 0 < s 3 4 d at a given time T after the first robot has reached the target area is
f ( T ) = 1 T v T 2 d 2 ( 2 s ) 2 + v T 2 d 2 ( 2 s ) 2 + 1 2
and is limited by
f = lim T f ( T ) = v d 1 ( 2 s d ) 2 .
Proposition 3.
Assume two parallel lanes with robots at constant speed v and maintaining a constant distance d between them. The throughput of a common target area with radius 3 4 d < s < d 2 at a given time T after the first robot has reached the target area is
f ( T ) = 1 T v T d + v T d + 1 2
and is limited by
f = lim T f ( T ) = 2 v d .
Observe that if T = k d v for any 0 < k Z is used in (4), the compact lanes strategy can achieve the throughput of two parallel lanes of robots going in the direction of the target region when T = k d v for any k Z or when T , even though two robots cannot reach the target region at the same time.

3.3. Large Target Area: s d / 2

This section focuses on situations where more than two robots can simultaneously touch the target. Three feasible strategies are presented.
The simplest strategy is to consider several parallel lanes being at a distance d from each other. However, it is possible to obtain higher throughput. In particular, two other strategies are identified: (a) using parallel straight line lanes that may be distanced lower than d and (b) robots moving towards the target following curved trajectories. Strategy (a) uses more than two compact lanes, extending the strategy presented in the previous section. By doing this, the robots fit in a hexagonal packing arrangement moving toward the target region. Strategy (b) uses a touch and run approach. In it, robots do not cross the target area, they only reach it and return in the opposite direction using curved trajectories which respect the minimum distance d.
The next section starts with the parallel lanes strategy, which has the lowest asymptotic throughput over the strategies presented in this section, for comparison with the other strategies. In particular, it will be used later as a justification for the lowest number of lanes used in the strategy (b) in (14) in Proposition 7. Following their description and properties, a discussion comparing them is provided.

3.3.1. Parallel Lanes

It is considered here that the robots are moving inside lanes. The lanes are straight lines, and the linear speed v of the robots is constant. The lanes are separated by a distance d, and each robot maintains a distance d from each other. Figure 4 illustrates an example of this strategy. The first lane, Lane 1, is at the top. The first robot of each lane is located at ( s , s ( i 1 ) d ) for the Lane i. The next proposition states the throughput for a given time and the asymptotic throughput for this strategy.
Proposition 4.
Assume a circular target region with its centre at ( 0 , 0 ) and radius s d 2 and parallel lanes starting at ( s , s ( i 1 ) d ) for i { 1 , , 2 s d + 1 } . At each Lane i, the first robot is located at the point ( s , s ( i 1 ) d ) in the starting configuration. Then, the first robot to reach the target is located at ( s , s ( J 1 ) d ) , for J = s d + 1 , if s s d d s s d d , otherwise J = s d + 1 . The throughput for a given time T after the first robot reaches the target region is:
f p ( T ) = 1 T i = 1 2 s d + 1 N i ( T ) 1 T ,
for N i ( T ) = v T d i + d J d + 1 , if T d i d J v , otherwise, N i ( T ) = 0 ,   d j = s s 2 ( s ( j 1 ) d ) 2 , and
f p = lim T f p ( T ) = 2 s d + 1 v d .

3.3.2. Hexagonal Packing

By extending the compact lanes to more than two lanes, the robots will be packed in a hexagonal formation. An illustration of this strategy is shown in Figure 5. As it can be seen, robots from different lanes are still able to move towards the target keeping a distance d from each other, even though the lanes have a distance lower than d.
An upper bound of the asymptotic throughput for the hexagonal packing strategy is first computed, then the throughput for a given time using this strategy is calculated.
Proposition 5.
Assume robots moving at speed v, going to a circular target of radius s. The upper bound of the asymptotic throughput for the hexagonal packing strategy is
f h m a x = 2 3 2 s d + 1 v d .
Proposition 5 presents an upper bound of the asymptotic throughput using hexagonal packing, but it does not tell us which is the best placement of the robots inside a corridor since the hexagonal formation can be rotated by different angles. Hence, the results about the throughput considering the placement of the hexagonal packing inside a corridor of robots going to the target region will be presented. First, however, the following definition will be needed.
Definiton 3.
The hexagonal packing angle θ is the angle formed by the x-axis and the line formed by any robot at position ( x , y ) and its neighbour at ( x + d cos ( θ ) , y + d sin ( θ ) ) under the target region reference frame.
Observe that any robot at ( x , y ) under the hexagonal packing has at most six neighbours located at x + d cos θ , y + d sin θ ,   x + d cos θ + π 3 , y + d sin θ + π 3 ,   ,   x + d cos θ + 5 π 3 , y + d sin θ + 5 π 3 (Figure 6). If θ = π 3 , putting this value in the previous series results in the first neighbour robot being at ( x + d cos ( π / 3 ) , y + d sin ( π / 3 ) ) and the last neighbour robot at x + d cos 0 , y + d sin 0 . This is the same result if θ = 0 was used. Consequently, due to this periodicity, hexagonal packing angles in [ 0 , π 3 ) are assumed.
The next proposition states the bounds of the throughput in the limit towards the infinity for hexagonal packing using an arbitrary, but fixed, hexagonal packing angle θ . A fixed θ is assumed because normally in a robotic swarm the robots rely on local sensing. In order to obtain the maximum number of robots inside the corridor, all robots should know the size of the corridor and communicate by local-ranged message sending. It would take time to send information, and for all robots to adjust their orientation each time a new robot joins the swarm when using this local sensing approach.
In other words, if the corridor where the robots are going in the direction of the target is increasing over time, then θ should change over time for the optimal throughput. However, in practice, changing the hexagonal packing angle implies all robots must turn to a hexagonal packing angle θ * depending on the size of the new rectangle based on the added robots to it to maximise the number of robots inside the corridor. In addition to the time to send messages with this parameter, more time would be needed for every robot to adapt to the updated computed θ * because the turning speed of the robots is finite. Therefore, this paper does not handle this adjustable scenario.
Proposition 6.
Assume the robots using hexagonal formation coming to a circular target area with radius s such that the first robot to reach it was at time 0 at ( x 0 , y 0 ) = ( w , 0 ) , for any w s . For a given time T, the robots are going to the target at linear speed v, keeping a distance d between neighbours ( 0 < d 2 s ), using fixed hexagonal packing angle θ [ 0 , π / 3 ) . The throughput for a given time is given by
f h ( T , θ ) = 1 T x h = n l n l + 1 Y 2 R ( x h ) Y 1 R ( x h ) + 1 + 1 T x h = B U Y 2 S ( x h ) Y 1 S ( x h ) + 1 1 T ,
for Y 2 R ( x h ) Y 1 R ( x h ) and Y 2 S ( x h ) Y 1 S ( x h ) (if for some x h , either of these conditions are false, it is assumed that the respective summand for this x h is zero). Additionally, n l = 2 s sin | π / 6 θ | 3 d ,   n l + = 2 ( v T s ) cos ( π / 6 θ ) + 2 s sin ( | π / 6 θ | ) 3 d + 1 ,
Y 1 R ( x h ) = max sin ( π 3 θ ) x h s d cos θ π 6 , cos ( π 3 θ ) x h sin π 6 θ , if θ < π / 6 , max sin ( π 3 θ ) x h s d cos θ π 6 , v T s d cos ( π 3 θ ) x h sin π 6 θ , if θ > π / 6 , x h 2 s d , if θ = π / 6 ,
Y 2 R ( x h ) = min sin ( π 3 θ ) x h + s d cos θ π 6 , v T s d cos ( π 3 θ ) x h sin π 6 θ , if θ < π / 6 , min sin ( π 3 θ ) x h + s d cos θ π 6 , cos ( π 3 θ ) x h sin π 6 θ , if θ > π / 6 , x h 2 + s d , if θ = π / 6 ,
B = 2 ( sin ( π / 3 θ ) ( c x l x ) + cos ( π / 3 θ ) ( y 0 l y s ) ) 3 d , if T > s v , 2 2 s v T ( v T ) 2 3 d sin θ + π 6 , otherwise ,
for c x = x 0 + v T s and ( l x , l y ) = argmin ( x , y ) Z | v T s + x 0 x | + | y 0 y | , if T > s v , otherwise, ( l x , l y ) = ( x 0 , y 0 ) , where Z is the set of robot positions inside the rectangle measuring v T s × 2 s for v T s > 0 . If T > s v or arctan s 2 sin ( θ ) ( v T s ) 3 s 2 + cos ( θ ) ( v T s ) < π 2 θ , U = 2 ( sin ( π / 3 θ ) ( c x l x ) + cos ( π / 3 θ ) ( y 0 l y ) + s ) 3 d , otherwise, U = 2 2 s v T ( v T ) 2 3 d cos θ π 3 . In addition, Y 1 S ( x h ) = d x h C θ , x + 3 C θ , y Δ ( x h ) 2 d and
Y 2 S ( x h ) = min ( L ( x h ) , C 2 ( x h ) ) 1 , if min ( L ( x h ) , C 2 ( x h ) ) i f = L ( x h ) and T > s v , min ( L ( x h ) , C 2 ( x h ) ) , otherwise ,
C θ = cos ( θ ) sin ( θ ) sin ( θ ) cos ( θ ) c x l x y 0 l y ,   Δ ( x h ) = 4 s 2 3 d x h C θ , x C θ , y 2 ,   C 2 ( x h ) = d x h C θ , x + 3 C θ , y + Δ ( x h ) 2 d ,   L ( x h ) = sin π 2 θ ( d x h C θ , x ) + cos π 2 θ C θ , y d sin 5 π 6 θ , if T > s v , otherwise L ( x h ) = sin π 2 θ x h sin 5 π 6 θ , and
lim T f h ( T , θ ) 4 v s 3 d 2 2 v cos ( θ π / 6 ) 3 d , 4 v s 3 d 2 + 2 v cos ( θ π / 6 ) 3 d .
The upper and lower bounds presented on (11) are below or equal the maximum asymptotic throughput presented by the Proposition 5, Equation (8). The result of the Proposition 5 only concerns the maximum asymptotic throughput and does not consider the hexagonal packing angle θ , while Proposition 6 gives a lower bound and tightens the bounds for a given θ . Figure 7 presents an example comparison of these equations for two different values of s. As expected, the maximum asymptotic throughput under the optimal density assumption (in (8)) is a possible value of the throughput using hexagonal packing and is above or equal to the interval in (11) for any given θ . However, for practical robotic swarms applications, a certain hexagonal packing angle must be fixed depending on the expected height of the corridor, target size and the minimum distance between the robots, resulting in a throughput below or equal to the upper value presented in Proposition 5.
On the other hand, due to the discontinuities of (9), it is difficult to obtain an exact θ that maximises the throughput given the other parameters. In addition, there is no specific value of θ that achieves the maximum throughput for all possible values of the other parameters. Interestingly, given a fixed sub-interval of θ , depending on the number of sample values, new local maxima and minima can arise from these discontinuities. Additionally, a different parity of the number of samples can produce a global maximum in even or odd interval points. To illustrate this, Figure 8, Figure 9, Figure 10 and Figure 11 present the result of this equation for some randomly generated parameters and a different number of samples of θ equally spaced and taken from the domain interval, that is, from 0 to π / 3 , including these values. Two different orders of magnitude are chosen for the number of equally spaced points in each plot (a small one, about two orders, and a large one of seven orders), and different parities are also given (99 and 100 for the small order, and 10 7 and 10 7 + 1 for the large one).
In Figure 8, Figure 9, Figure 10 and Figure 11, θ is over the x-axis, and the number of robots inside the given rectangle is over the y-axis. These plots use v = 1 m/s. The maximum value in each image is represented by an orange circle, and a rectangle represents the maximum between the left and the right image. No square means the maximum values in both sides are equal. Each one of the Figure 8, Figure 9, Figure 10 and Figure 11 presents two different sets of parameters. In Figure 8 and Figure 9, 99 equally spaced values are shown for θ [ 0 , π / 3 ) on the left-hand side images and 100 on the right-hand side; then, the maximum on each side is compared, and the best one is chosen. The same is performed in Figure 10 and Figure 11, but using 10 7 and 10 7 + 1 . Figure 8a, Figure 9a, Figure 10b and Figure 11b show an example that θ π / 6 reaches the maximum throughput, and in Figure 8c,d and Figure 10c,d, the maximum is at θ = 0 . Moreover, Figure 9c,d have their maximum for θ different from the other examples. Figure 8c,d have the same maximum, despite the plots being different. This also occurs in Figure 10c,d and Figure 11c,d. If the parameters are known, one can find an approximate best candidate for θ by searching several values, as presented. However, as far as the authors know, obtaining the true value which maximises that equation by a closed-form is an open problem.
Additionally, notice that whenever the number of samples is odd, the value θ = π / 6 is sampled. Observe in these figures that when the maximum is at θ = π / 6 , it tends to be higher than the maximum found without considering it. For instance, compare the maximum found on the pairs (a) and (b) in Figure 8, Figure 9, Figure 10 and Figure 11. On the other hand, θ = π / 6 is not always the optimal value. Thus, the authors suggest to compute first the value for θ = π / 6 , then compare it with the result for a search for the maximum for any chosen number of samples in the interval from θ [ 0 , π / 3 ) .

3.3.3. Touch and Run Strategy

Now, the touch and run strategy is discussed. Since a robot should spend as little time as possible near the target, a simple scenario is imagined where robots travel in predefined curved lanes and tangent to the target area where they spend minimum time on the target. To avoid collisions with other robots, the trajectory of a robot nearby the target is circular, and the distance between each robot must be at least d at any part of the trajectory. Hence, no lane crosses another, and each lane occupies a region defined by an angle in the target area, denoted by α and shown in Figure 12a.
Figure 12b shows the trajectory of a robot towards the target region following that strategy. This figure also shows the relationship between the target area radius (s), the minimum safety distance between the robots (d), the turning radius (r), the central region angle ( α ) and the distance from the target centre for a robot to begin turning ( d r )—used as justification for (12) and (13). The green dashed circle represents the whole turning circle. The robot first follows the boundary of the central angle region—that is, the entering ray—at a distance of d / 2 . Then, it arrives at a distance of s of the target centre using a circular trajectory with a turning radius r. Due to the trajectory being tangent to the target shape, it is close enough to consider that the robot reached the target region.
Finally, the robot leaves the target by following the second boundary of the central angle region—that is, the exiting ray—at a distance of d / 2 . Depending on the value of α , it is possible to fit several of these lanes around the target. For example, in Figure 13, when α = π / 2 , it is possible to fit four lanes. In this figure, robots are black dots, and d o is the desired distance between the robots in the same lane—which is calculated depending on the values of d, s, r and the number of lanes K as shown later. When robots of all lanes simultaneously occupy the target region, their positions are the vertices of a regular polygon—it is represented in the figure by a grey square inside the target region.
The lemma below concerns the distance to the target centre where the robots start turning on the curved path. It will also be useful in the discussion about experiments using this strategy in Section 4.4.
Lemma 2.
The distance d r to the target centre for the robot to start turning is
d r = s ( 2 r + s ) r d .
Now, a lemma about the turning radius is presented, and then the domain of K and α are defined in order to calculate the throughput for the touch and run strategy.
Lemma 3.
The central region angle α, the minimum distance between the robots d and the turning radius r are related by
r = s sin ( α / 2 ) d / 2 1 sin ( α / 2 ) .
Proposition 7.
Let K be the number of curved trajectories around the target area, α be the angle of each central area region, and r the turning radius of the robot for the curved trajectory of this central area region. For a given d > 0 and s d / 2 , the domain of K is
3 K π arcsin d 2 s , a n d
α = 2 π K .
Now that the correct parametrisation has been determined for the touch and run strategy, its throughput is obtained in the next proposition.
Proposition 8.
Assuming the touch and run strategy and that the first robot of every lane begins at the same distance from the target, given a target radius s, the constant linear robot speed v, a minimum distance between robots d, and the number of lanes K, the throughput for a given instant T is calculated by
f t ( K , T ) = 1 T K v T d o + 1 1 , f o r
d o = max ( d , d ) , and
d = r ( π α ) + d 2 r cos ( α / 2 ) sin ( α / 2 ) , if 2 r cos ( α / 2 ) < d , 2 r arcsin d 2 r , otherwise ,
with r obtained from (13). In addition,
f t ( K ) = lim T f t ( K , T ) = K v d o .
Figure 14 presents examples of (19) for some parameters. Observe that the maximum throughput for different values of s , d and v can be found by a linear search in the interval obtained by (14).

3.3.4. Comparison of the Strategies

The parallel lanes strategy has the lowest of the limits concerning u = s d , the ratio between the radius of the target region and the minimum distance between the robots. However, its asymptotic value is still higher than the minimum possible asymptotic throughput for hexagonal packing just for some values of u. This section will make explicit the dependence on the argument u in every throughput function defined previously to compare them to this ratio. Let f p ( u ) = lim T f p ( T , u ) and f h m i n ( u ) be the asymptotic throughput for the parallel lanes strategy and the lower asymptotic throughput for the hexagonal packing strategy for a ratio u, respectively. Hence, by Proposition 4, f p ( u ) = 2 u + 1 v d , and by (11) using θ = π / 6 as it minimises the lower bound of lim T f ( T , θ ) in Proposition 6, f h m i n ( u ) = 2 3 2 u 1 v d .
Proposition 9.
There are some u < 3 + 2 4 2 3 such that f p ( u ) > f h m i n ( u ) , and for every u 3 + 2 4 2 3 , f p ( u ) f h m i n ( u ) .
Figure 15 shows an example of f h m i n ( u ) , f p ( u ) and the maximum possible asymptotic throughput of the hexagonal packing f h m a x ( u ) = 2 3 2 u + 1 v d for u [ 0 , 10 ] . Observe that, from the left side of u = 7 , f p ( u ) has some values above f h m i n ( u ) even though they are below f h m a x ( u ) for every u.
Because of this proposition, for values of u 3 + 2 4 2 3 7 , the hexagonal packing strategy at the limit will have higher throughput than parallel lanes. However, for values u < 3 + 2 4 2 3 , there is the possibility of the parallel lanes strategy being better than hexagonal packing. As there is not an exact asymptotic throughput for the hexagonal packing strategy for a given angle θ , one can numerically find the best θ using large values of T on (9); then, after choosing θ , the numerical approximation of the asymptotic throughput using this fixed θ and those T values is calculated. This result can be compared with the throughput for the same large values of T for the parallel lanes strategy using (6). Furthermore, in a scenario with the target region only being accessed by a corridor with a finite height, the maximum time T can be inferred by its size, and then the exact throughput for this specific value can be calculated by (9) and (6) as stated before, but using only this specific value T, instead of a set of large values, to decide which strategy is more suitable.
Let f h ( T , θ , u ) and f p ( T , u ) be (9) and (6) making explicit the parameter u. Let θ * be the outcome from the search of the θ , which maximises f h ( T , θ , u ) by numeric approximation. Thus, define f h ( T , u ) = f h ( T , θ * , u ) . Figure 16 illustrates the result of the procedure mentioned above for T = 10,000 for 100 equally spaced values of u [ 0 , 7 ] and seeking the maximum throughput using 1000 evenly spaced points between [ 0 , π / 3 ) to find the best θ for the hexagonal packing strategy. Then, it is compared with the result for θ = π / 6 as explained previously when Figure 8, Figure 9, Figure 10 and Figure 11 were discussed. Observe that for u [ 0.5 , 0.9 ] there is some values for which f h ( 10 , 000 , u ) < f p ( 10 , 000 , u ) . Figure 17 shows this by 100 equally spaced values of u [ 0.4 , 1 ] for different values of v. This occurs because, for such values of u, using square packing fits more robots inside the circle over the time than hexagonal packing, as shown in Section 4.5.
Additionally, the asymptotic throughput of the touch and run strategy, f t ( u ) = lim T f t ( T , u ) , for higher values of u is greater than the maximum possible asymptotic value of the hexagonal packing f h m a x ( u ) = 2 3 2 u + 1 v d , as shown later by numeric experimentation. Before presenting this result, it is necessary to verify which values of u are allowed by f t ( u ) and to express the asymptotic throughput of the touch and run strategy from Proposition 8 in terms of the ratio u.
From Proposition 7, the possible number of lanes K is in { 3 , , K ( u ) } with K ( u ) = π arcsin 1 2 u . Consequently, f t ( u ) is only allowed for any u 1 3 . In fact, by Proposition 7, K 3 , then π arcsin 1 2 u π arcsin 1 2 u 3 π 3 arcsin 1 2 u sin π 3 1 2 u 3 2 1 2 u u 1 3 .
The algebraic manipulations for expressing the asymptotic throughput of the touch and run strategy from Proposition 8 is shown below in terms of the ratio u. The asymptotic throughput expressed in (19) is
K v d o = K d o d v d = K max ( d , d ) d v d = K max ( 1 , d d ) v d ,
for an integer K { 3 , , K ( u ) } . From (15), α = 2 π K , and, from (13), r d = s d sin ( α / 2 ) d 2 d 1 sin ( α / 2 ) = u sin ( π K ) 1 2 1 sin ( π K ) = def r ( u , K ) , resulting in
d d = r d ( π α ) + d 2 r cos ( α / 2 ) d sin ( α / 2 ) , if 2 r cos ( α / 2 ) < d , 2 r d arcsin d 2 r , otherwise , [ by ( 18 ) ] = r d π 2 π K + 1 2 r d cos ( π K ) sin ( π K ) , if 2 r d cos ( π K ) < 1 , 2 r d arcsin 2 r d 1 , otherwise , = r ( u , K ) π 2 π K + 1 2 r ( u , K ) cos ( π K ) sin ( π K ) , if 2 r ( u , K ) cos ( π K ) < 1 , 2 r ( u , K ) arcsin 1 2 r ( u , K ) , otherwise , = def d ( u , K ) .
Thus, from (20) and (21), f t ( u , K ) = K max ( 1 , d ( u , K ) ) v d , and the upper throughput for the touch and run strategy in terms of u is given by f t ( u ) = max K { 3 , , K ( u ) } f t ( u , K ) = max K { 3 , , K ( u ) } K max ( 1 , d ( u , K ) ) v d = K * ( u ) max ( 1 , d ( u , K * ( u ) ) ) v d , for some function K * ( u ) that finds this maximum in { 3 , , K ( u ) } . Similarly, for a fixed maximum time T, by (16), f t ( T , u ) = max K { 3 , , K ( u ) } f t ( K , T , u ) .
Figure 18 presents a comparison of the asymptotic throughput f t ( u ) and the lower and upper values of the asymptotic throughput of the hexagonal packing f h m i n ( u ) and f h m a x ( u ) for values of u ranging from 1 / 3 to 1000. Observe that the asymptotic throughput of the touch and run strategy is greater than the maximum possible asymptotic throughput of the hexagonal packing strategy for almost all values of u, except for some in ( 1.12 , 1.25 ) (Figure 18b).
Additionally, numerical experiments for f t ( T , u ) and f h ( T , u ) are performed using fixed time T = 10,000 in (16), (9) and u [ 1 / 3 , 7 ] . For finding θ * , the same procedure is applied, which was described before to compare f h ( T , u ) and f p ( T , u ) . Figure 19 shows the result. It suggests the touch and run strategy has higher throughput than hexagonal packing for large values of T. Although hexagonal packing has lower asymptotic throughput than the touch and run strategy for almost all u values, it is suitable for u < 1 3 whenever it surpasses the parallel lanes strategy.
For real-world applications and assuming the robots are constantly at maximum linear speed and at fixed distance between other robots, the hexagonal packing strategy is adequate for a situation where the target is placed in a constrained region, for example, walls in north and south positions. In this example, the number of lanes used in the touch and run strategy would be reduced because of the surrounding walls. In an unconstrained scenario, if the ratio u and the maximum time T are known, the throughput value of the hexagonal packing strategy from (9) (for the θ which maximises it) can be compared with the throughput of the touch and run strategy from (16) (for K * ( u ) ) to choose which strategy should be applied. However, assuming a constant speed and a fixed minimum distance between robots in a swarm is not practical because other robots influence the movement in the environment. Hence, these strategies are the inspiration to propose novel algorithms based on potential fields for robotic swarms in [38].

4. Experiments and Results

To evaluate this approach, several simulations were executed using the Stage robot simulator [37] for testing the equations presented in the theoretical section (Section 3). Hyperlinks to the video of executions are available in the captions of each corresponding figure. They are in real-time so that the reader can compare the time and screenshots presented in the figures in this section with those in the supplied videos (The source codes of each experimented strategy are in https://github.com/yuri-tavares/swarm-strategies, accessed on 12 June 2022).
Experiments were executed for all strategies considering s > 0 . We could not make experiments for point-like targets because a point with a fixed value is nearly impossible to be reached by a moving robot in Stage computer simulations due to the necessity of exact synchronization of the sampling frequency of positions made by the simulator and the speed of the robot. Hence, a circular area with a radius s > 0 around the target must be used to identify that a robot reached it. After presenting the experiments and results for all strategies for circular target region with radius s > 0 , they are compared experimentally considering the analysis previously discussed in Section 3.3.4.
It is saved for each robot its arrival time in milliseconds since the start of the experiment. The arrival time of every robot is subtracted by the arrival time of the first robot. By doing so, the experiment is assumed to begin in time T = 0 without worrying about the initial inertia. After this, the number of robots (N) is registered for each time value (T).
To alleviate some of the numerical errors caused by the floating-point representation, rounding on the 13th decimal place was used before using floor and ceiling functions on the equations presented. For example, in contemporary computers, by using double variables in C or float in Python, if you divide 9.6 by 1.6, the result is 5.999999999999999 for 15 decimal places formatting, but it should be 6. If the floor function was applied to the previous result, the outcome would be 5 instead of the expected 6.
For all experiments in this section, the robots are distant from each other by d = 1 m. In the figures of this section, black robots indicate they reached the target, and red did not. In addition, the experiments shown on this section were not repeated because the linear speed and initial positions are constant, so there is no random aspect, and the same results are obtained for different runs.

4.1. Compact Lanes

For compact lanes simulations, v = 1 m/s, and the first robot to reach the target is at the bottom lane and starts at the target. For a target area radius s, such that 0 < s < 3 d / 4 , s = 0.3 m, and for 3 d / 4 s < d / 2 , s = 0.45 m. Figure 20 shows screenshots of the simulation using s = 0.3 m during T = 7.1 s and Figure 21 for s = 0.45 m and T = 10.1 s.
Experiments were run in order to verify the throughput for a given time and the asymptotic throughput calculated by (2) to (5). Figure 22 shows the throughput for different values of time obtained by the experiments in Stage, i.e., ( N 1 ) / T , in comparison with the calculated value by (2) and (3) for s = 0.3 m and by (4) and (5) for s = 0.45 m. “Simulation” stands for the data obtained from Stage, “Instantaneous” for the equations of the throughput for a given time calculated in (2) and (4) and “Asymptotic” for the asymptotic throughput obtained from (3) and (5). The mentioned results of the equations match the data obtained from simulations. These figures confirm that the equations presented in the theoretical section agree with the throughput obtained by simulations.

4.2. Parallel Lanes

The parallel lanes strategy was experimented for v = 1 m/s and s { 3 , 6 } m. Figure 23 and Figure 24 present screenshots from executions using these parameters.
To verify the throughput for a given time calculated by (6) and its asymptotic value as in (7), they are compared with the throughput obtained from Stage simulations. Figure 25a presents these comparisons. “Simulation” stands for the data obtained from Stage, “Instantaneous” for the equations of the throughput for a given time calculated in (6), and “Asymptotic” for the asymptotic throughput obtained from (7). As expected, the values of (6) approximate to (7) as time passes. Additionally, observe that the values from (6) are almost aligned with the values from the simulation, except for some points. The difference in those points is due to the floating-point error discussed at the beginning of Section 4 that happens in the division before the use of floor or ceiling functions used on (6). Figure 25b shows the number of robots versus the time of arrival of the last robot for the same data used in Figure 25a. As the running time is proportional to the number of robots in the experiments, observe that the higher throughput per time is reflected as a lower arrival time of the last robot per the number of robots. In addition, note that the values tend to infinity as the horizontal axis values grow.

4.3. Hexagonal Packing

The hexagonal packing was experimented for v = 1 m/s and the combination of the following variables and values: s { 3 , 6 } m and θ { 0 , π / 12 , π / 6 , 5 π / 18 } . Figure 26, Figure 27, Figure 28, Figure 29, Figure 30, Figure 31, Figure 32 and Figure 33 present screenshots from executions using these parameters.
To evaluate the throughput for a given time and angle calculated in (9) and the bounds on the asymptotic throughput as in (11), they are compared with the throughput obtained from Stage simulations. Figure 34 presents these comparisons. Observe that the values from (9) are almost aligned with the values from the simulation, except for some points. The difference in those points is also due to the floating-point error—discussed in the introduction of Section 4—over the divisions and trigonometric functions performed before the use of floor or ceiling functions used on (9). In addition, due to the floating-point error, in the computation of (10), instead of using min ( L ( x h ) , C 2 ( x h ) ) = L ( x h ) , | min ( L ( x h ) , C 2 ( x h ) ) L ( x h ) | < 0.001 was checked.
Additionally, note in Figure 34 that for any value of s or θ , as the time passes, the values of (9) asymptotically approach some value inside the bounds given by (11). Although the exact asymptotic value could not be given for the presented parameters, the experiments show that the bounds are correct. In the same manner, as occurred for parallel lanes, the higher throughput per time is reflected as a lower arrival time of the last robot per the number of robots, and it tends to infinity as the number of robots grows (Figure 35).

4.4. Touch and Run

For the touch and run strategy, the robots maintain the linear speed over the whole experiment, then turn at a fixed constant rotational speed ω = v / r , for r obtained from (13), when they are next to the target centre by the distance d r obtained from (12). After they arrive at the target region, when they are distant from the target centre by d r , they leave the curved path, stop turning and follow the linear exiting lane. On that lane, to stabilise their path following, the robots follow the queue using a turning speed equal to γ β , such that β is the angle of the exit lane and γ is the robot orientation angle, both in relation to the x-axis.
The speed of these experiments was v = 0.1 m/s because the robots utilised on Stage have a maximum turning speed of π / 2 rad/s. Choosing a low linear speed implies a greater number of lanes K, as the turning speed ω = v / r and r vary over K and s. In addition, a low linear speed diminishes the time measurement error, since the positions of the robots are sampled at every 0.1 s by the Stage simulator. Their positions are not guaranteed to be obtained at the exact moment they are far from the target centre by d r ; thus, this also yields an error in time measurement for their arrival in the target area.
The value of s is in { 3 , 6 } m and all allowed K values are used for experimenting with the touch and run strategy with 200 robots. By (14), for the former s value, there is a maximum K = 18 and for the later, K = 37 . However, as the maximum angular speed is limited, the allowed K values range for s = 3 m is reduced to { 3 , , 16 } and for s = 6 m, { 3 , , 33 } . Figure 36, Figure 37, Figure 38 and Figure 39 present screenshots from executions using some of these parameters. The circle in the middle of these figures is the target region, and the lines where the robots are over represent the curved trajectory they follow by the touch and run strategy.
Figure 40 presents the comparison of (16) and (19) for the throughput for a given time, the bound on its asymptotic value and the one obtained from Stage simulations. Although the total number of robots and the linear speed were fixed, the arrival times and the number of robots to reach the target change for each parameter used in this figure since the distance between the robots per lane varies and the number of robots simultaneously arriving is, in most cases, the number of lanes. In addition, the first two arrival times were not plotted because the first one is zero, yielding an indeterminate output by the throughput definition, and the second one is still too small in relation to the others, making the resultant throughput too high compared with the rest, thus producing an incomprehensible graph.
Observe that the values from (16) are almost equal to the values from simulation, except for some points. They are different because of the floating-point error in the divisions and trigonometric functions before the use of floor function used on (16)—already mentioned in the introduction of Section 4—as well as the time measurement errors for the arrival of the robots on the target area as explained at the beginning of this section. As expected, the values of (16) tend to come nearer to the asymptotic value given by (19). Differently from the previous strategies, notice that, for small values of T, the throughput is higher than for larger ones because, for a fixed K, (16) is decreasing for T. As occurred for the previous strategies, higher throughput per time is reflected as a lower arrival time of the last robot per number of robots, which tends to infinity as the number of robots grows (Figure 41).
Figure 42 shows a comparison of the throughput at the end of the experiment—that is, for 200 robots and considering the difference between the time to reach the target region spent by the last robot and the first—and the asymptotic throughput obtained by (19) for all the possible number of lanes (K) for the used parameters and s { 3 , 6 } m. The simulation values tend to come close to the asymptotic value, confirming the theoretical results.

4.5. Comparison between Hexagonal Packing and Parallel Lanes

As discussed in Section 3.3.4, it is observed that the parallel lane strategy has a higher throughput than hexagonal packing for values of u = s / d from 0.5 to a value of about 0.85 and for high values of T, despite the parallel lanes having lower asymptotic throughput for other values of u. In order to validate this observation, experiments on Stage were performed for these strategies using T = 10,000 s, v = 0.1 m/s, d = 1 m and s ranging from 0.4 to 0.95 m in increments of 0.05 m. The best hexagonal packing angle θ was computed for hexagonal packing using the same method mentioned at the end of the theoretical section, i.e., the maximum throughput was searched using 1000 evenly spaced points between [ 0 , π / 3 ) to find the best θ ; then, it was compared with the result for π / 6 .
Figure 43 presents the results from the experiments with Stage and the theoretical results shown earlier. The functions f h and f p are the same presented in Figure 17. The labels “Simulation hex.” and “Simulation par.” stand for the throughput resultant from the experiments with hexagonal packing and parallel lanes strategies, respectively. The throughput improvement for the values of u = s / d where the parallel lanes strategy overcomes the hexagonal packing is mainly caused by the square packing being more effective than hexagonal packing for fitting the robots inside the circle over the time for those values. To illustrate this, Figure 44 illustrates the execution for v = 0.1 m/s, d = 1 m and s { 0.5 , 0.85 } m. The robots run from right to left at a constant linear speed v = 0.1 m/s. The grey squares are highlighted—which measure 1 × 1 m 2 —to help estimate the time needed for about eight robots to arrive in the target region. This figure shows that the square packing fits more robots than hexagonal packing over time in these cases.
Observe in these figures that when the robots are arranged in squares, more robots arrive per unit of time than using hexagonal packing. To help visualise this, heed that in Figure 44a, there are N = 9 robots in black, occupying a rectangle including the circular target area with a width of approximately W 4.5 m (this distance can be roughly measured by the grey squares, counting from the two last black robots on the right side to the first one in the left side). As v = 0.1 m/s was assumed, the throughput in this case is approximately N 1 W v ( 9 1 ) 0.1 4.5 0.178 s 1 . Making similar calculations, Figure 44b–d have the approximate throughputs ( 8 1 ) 0.1 3 0.233 s 1 , ( 8 1 ) 0.1 4 = 0.175 s 1 and ( 8 1 ) 0.1 3 0.233 s 1 , respectively. The results from the parallel lanes in this illustration—about 0.233 for both values of s—surpass the values for the hexagonal packing.

5. Conclusions

A novel metric was proposed for measuring the effectiveness of algorithms to minimise congestion in a swarm of robots trying to reach the same goal: the common target area throughput. In addition, the asymptotic throughput for the common target area was defined as the throughput when the time tends to infinity.
Assuming that the robots move at constant maximum speed and the distance between each other is as close as possible to a fixed value, it was shown how to calculate the maximum throughput for different theoretical strategies to arrive at the common circular target region: (i) making parallel queues to reach the target region, (ii) using a corridor with robots in hexagonal packing to enter in the region, and (iii) following curved trajectories to touch the region boundary. Based on these calculations solely, it was possible to compare which strategy is better.
Due to their aim of maximising the target area throughput, these strategies were used as inspiration for new algorithms using artificial potential fields in [38]. Thus, for common target area congestion in robotic swarms, the throughput is well suited for comparing algorithms due to its abstraction of the rate of the target area access as the number of robots grows, whether the closed throughput equation is derived or not.
The key contribution of this work is a fundamental theoretical study of congestion in swarm robotics, which already served as inspiration to create new algorithms. However, future work could extend this theoretical study further, by considering varying linear speed and distances between the robots.

Supplementary Materials

The following supporting information can be downloaded at: https://www.mdpi.com/article/10.3390/math10142482/s1. References [39,40,41] are cited in the supplementary materials.

Author Contributions

Conceptualization, X.D.; Formal analysis, Y.T.d.P. and X.D.; Investigation, Y.T.d.P. and X.D.; Methodology, Y.T.d.P. and X.D.; Software, Y.T.d.P. and X.D.; Supervision, L.S.M.; Writing—original draft, X.D.; Writing—review & editing, Y.T.d.P. and L.S.M. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by Lancaster University.

Acknowledgments

Yuri Tavares dos Passos gratefully acknowledges the Faculty of Science and Technology at Lancaster University for the scholarship and the Universidade Federal do Recôncavo da Bahia for granting the leave of absence to finish his PhD.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Navarro, I.; Matía, F. An introduction to swarm robotics. Int. Sch. Res. Not. 2013, 2013, 608164. [Google Scholar] [CrossRef] [Green Version]
  2. Garnier, S.; Gautrais, J.; Theraulaz, G. The biological principles of swarm intelligence. Swarm Intell. 2007, 1, 3–31. [Google Scholar] [CrossRef]
  3. Giavitto, J.L.; Dulman, S.O.; Spicher, A.; Viroli, M. Proceedings of the Spatial Computing Workshop (SCW 2013) Colocated with AAMAS (W09); Version 1; IFAMAAS (International Foundation for Autonomous Agents and Multiagent Systems): Saint Paul, MN, USA, 2013; Available online: https://hal.archives-ouvertes.fr/hal-00821901 (accessed on 12 June 2022).
  4. Giordano, J.P.; Wu, A.S.; Pherwani, A.; Mathias, H.D. Comparison of Desynchronization Methods for a Decentralized Swarm on a Logistical Resupply Problem. In Proceedings of the 20th International Conference on Autonomous Agents and MultiAgent Systems, AAMAS’21, Online, 3–7 May 2021; International Foundation for Autonomous Agents and Multiagent Systems: Richland, SC, USA, 2021; pp. 1510–1511. [Google Scholar]
  5. Cohen, S.; Agmon, N. Spatial Consensus-Prevention in Robotic Swarms. In Proceedings of the 20th International Conference on Autonomous Agents and MultiAgent Systems, AAMAS’21, Online, 3–7 May 2021; International Foundation for Autonomous Agents and Multiagent Systems: Richland, SC, USA, 2021; pp. 359–367. [Google Scholar]
  6. Cicerone, S.; Di Fonso, A.; Di Stefano, G.; Navarra, A. MOBLOT: Molecular Oblivious Robots. In Proceedings of the 20th International Conference on Autonomous Agents and MultiAgent Systems, AAMAS’21, Online, 3–7 May 2021; International Foundation for Autonomous Agents and Multiagent Systems: Richland, SC, USA, 2021; pp. 350–358. [Google Scholar]
  7. Yang, B.; Ma, C.; Xia, X. Drone Formation Control via Belief-Correlated Imitation Learning. In Proceedings of the 20th International Conference on Autonomous Agents and MultiAgent Systems, AAMAS’21, Online, 3–7 May 2021; International Foundation for Autonomous Agents and Multiagent Systems: Richland, SC, USA, 2021; pp. 1407–1415. [Google Scholar]
  8. Marcolino, L.S.; Chaimowicz, L. No Robot Left behind: Coordination to Overcome Local Minima in Swarm Navigation. In Proceedings of the 2008 IEEE International Conference on Robotics and Automation, Pasadena, CA, USA, 19–23 May 2008; pp. 1904–1909. [Google Scholar] [CrossRef] [Green Version]
  9. Ducatelle, F.; Caro, G.A.D.; Pinciroli, C.; Mondada, F.; Gambardella, L. Communication Assisted Navigation in Robotic Swarms: Self-Organization and Cooperation. In Proceedings of the 2011 IEEE/RSJ International Conference on Intelligent Robots and Systems, San Francisco, CA, USA, 25–30 September 2011; pp. 4981–4988. [Google Scholar] [CrossRef]
  10. Kato, S.; Nishiyama, S.; Takeno, J. Coordinating Mobile Robots By Applying Traffic Rules. In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems, Raleigh, NC, USA, 7–10 July 1992; pp. 1535–1541. [Google Scholar] [CrossRef]
  11. Caloud, P.; Choi, W.; Latombe, J.C.; Le Pape, C.; Yim, M. Indoor automation with many mobile robots. In Proceedings of the IEEE International Workshop on Intelligent Robots and Systems, Ibaraki, Japan, 3–6 July 1990; pp. 67–72. [Google Scholar] [CrossRef]
  12. Grossman, D. Traffic control of multiple robot vehicles. IEEE J. Robot. Autom. 1988, 4, 491–497. [Google Scholar] [CrossRef]
  13. Carlino, D.; Boyles, S.D.; Stone, P. Auction-Based Autonomous Intersection Management. In Proceedings of the 16th International IEEE Conference on Intelligent Transportation Systems (ITSC 2013), The Hague, The Netherlands, 6–9 October 2013; pp. 529–534. [Google Scholar] [CrossRef] [Green Version]
  14. Sharon, G.; Stone, P. A Protocol for Mixed Autonomous and Human-Operated Vehicles at Intersections. In Autonomous Agents and Multiagent Systems—AAMAS 2017 Workshops, Best Papers; Lecture Notes in Artificial Intelligence; Sukthankar, G., Rodriguez-Aguilar, J.A., Eds.; Springer International Publishing: New York, NY, USA, 2017; Volume 10642, pp. 151–167. [Google Scholar] [CrossRef]
  15. Cui, J.; Macke, W.; Yedidsion, H.; Goyal, A.; Urieli, D.; Stone, P. Scalable Multiagent Driving Policies for Reducing Traffic Congestion. In Proceedings of the 20th International Conference on Autonomous Agents and MultiAgent Systems, AAMAS ’21, Online, 3–7 May 2021; International Foundation for Autonomous Agents and Multiagent Systems: Richland, SC, USA, 2021; pp. 386–394. [Google Scholar]
  16. Choudhury, S.; Solovey, K.; Kochenderfer, M.J.; Pavone, M. Efficient Large-Scale Multi-Drone Delivery using Transit Networks. J. Artif. Intell. Res. 2021, 70, 757–788. [Google Scholar] [CrossRef]
  17. Shahar, T.; Shekhar, S.; Atzmon, D.; Saffidine, A.; Juba, B.; Stern, R. Safe Multi-Agent Pathfinding with Time Uncertainty. J. Artif. Int. Res. 2021, 70, 923–954. [Google Scholar] [CrossRef]
  18. Xia, G.; Sun, X.; Xia, X. Distributed Swarm Control Algorithm of Multiple Unmanned Surface Vehicles Based on Grouping Method. J. Mar. Sci. Eng. 2021, 9, 1324. [Google Scholar] [CrossRef]
  19. Sahin, E. Swarm Robotics: From Sources of Inspiration to Domains of Application. In International Workshop on Swarm Robotics; Sahin, E., Spears, W.M., Eds.; Springer: Berlin/Heidelberg, Germany, 2005; pp. 10–20. [Google Scholar] [CrossRef]
  20. Sahin, E.; Girgin, S.; Bayindir, L.; Turgut, A.E. Swarm Robotics. In Swarm Intelligence: Introduction and Applications; Springer: Berlin/Heidelberg, Germany, 2008; pp. 87–100. [Google Scholar] [CrossRef]
  21. Barca, J.C.; Sekercioglu, Y.A. Swarm robotics reviewed. Robotica 2013, 31, 345–359. [Google Scholar] [CrossRef] [Green Version]
  22. Brambilla, M.; Ferrante, E.; Birattari, M.; Dorigo, M. Swarm robotics: A review from the swarm engineering perspective. Swarm Intell. 2013, 7, 1–41. [Google Scholar] [CrossRef] [Green Version]
  23. Bayındır, L. A review of swarm robotics tasks. Neurocomputing 2016, 172, 292–321. [Google Scholar] [CrossRef]
  24. Chung, S.; Paranjape, A.A.; Dames, P.; Shen, S.; Kumar, V. A Survey on Aerial Swarm Robotics. IEEE Trans. Robot. 2018, 34, 837–855. [Google Scholar] [CrossRef] [Green Version]
  25. Hoy, M.; Matveev, A.S.; Savkin, A.V. Algorithms for Collision-Free Navigation of Mobile Robots in Complex Cluttered Environments: A Survey. Robotica 2015, 33, 463–497. [Google Scholar] [CrossRef] [Green Version]
  26. Marcolino, L.S.; Passos, Y.T.; Souza, A.A.F.d.; Rodrigues, A.d.S.; Chaimowicz, L. Avoiding Target Congestion on the Navigation of Robotic Swarms. Auton. Robot. 2017, 41, 1297–1320. [Google Scholar] [CrossRef] [Green Version]
  27. van den Berg, J.; Guy, S.J.; Lin, M.; Manocha, D. Reciprocal n-Body Collision Avoidance. In Robotics Research; Pradalier, C., Siegwart, R., Hirzinger, G., Eds.; Springer: Berlin/Heidelberg, Germany, 2011; pp. 3–19. [Google Scholar] [CrossRef]
  28. Lima, D.A.; Oliveira, G.M. A cellular automata ant memory model of foraging in a swarm of robots. Appl. Math. Model. 2017, 47, 551–572. [Google Scholar] [CrossRef]
  29. Varghese, B.; McKee, G. A mathematical model, implementation and study of a swarm system. Robot. Auton. Syst. 2010, 58, 287–294. [Google Scholar] [CrossRef] [Green Version]
  30. Li, Y.; Chen, X. Modeling and Simulation of Swarms for Collecting Objects. Robotica 2006, 24, 315–324. [Google Scholar] [CrossRef]
  31. Taylor-King, J.P.; Franz, B.; Yates, C.A.; Erban, R. Mathematical modelling of turning delays in swarm robotics. IMA J. Appl. Math. 2015, 80, 1454–1474. [Google Scholar] [CrossRef] [Green Version]
  32. Galstyan, A.; Hogg, T.; Lerman, K. Modeling and mathematical analysis of swarms of microscopic robots. In Proceedings of the 2005 IEEE Swarm Intelligence Symposium, Pasadena, CA, USA, 8–10 June 2005; pp. 201–208. [Google Scholar] [CrossRef] [Green Version]
  33. Khaluf, Y.; Dorigo, M. Modeling Robot Swarms Using Integrals of Birth-Death Processes. ACM Trans. Auton. Adapt. Syst. 2016, 11, 1–16. [Google Scholar] [CrossRef]
  34. Mannone, M.; Seidita, V.; Chella, A. Categories, Quantum Computing, and Swarm Robotics: A Case Study. Mathematics 2022, 10, 372. [Google Scholar] [CrossRef]
  35. Daduna, H.; Pestien, V.; Ramakrishnan, S. Asymptotic Throughput in Discrete-Time Cyclic Networks with Queue-Length-Dependent Service Rates. Stoch. Model. 2003, 19, 483–506. [Google Scholar] [CrossRef]
  36. Hockney, R.W. The communication challenge for MPP: Intel Paragon and Meiko CS-2. Parallel Comput. 1994, 20, 389–398. [Google Scholar] [CrossRef]
  37. Gerkey, B.P.; Vaughan, R.T.; Howard, A. The Player/Stage Project: Tools for Multi-Robot and Distributed Sensor Systems. In Proceedings of the 11th International Conference on Advanced Robotics, Coimbra, Portugal, 30 June–3 July 2003; pp. 317–323. [Google Scholar]
  38. Passos, Y.T.; Duquesne, X.; Marcolino, L.S. Congestion control algorithms for robotic swarms with a common target based on the throughput of the target area. arXiv 2022, arXiv:2201.09337. [Google Scholar]
  39. Chang, H.C.; Wang, L.C. A Simple Proof of Thue’s Theorem on Circle Packing. arXiv 2010, arXiv:math.MG/1009.4322. [Google Scholar]
  40. Red Blob Games. Hexagonal Grids. 2021. Available online: https://www.redblobgames.com/grids/hexagons/ (accessed on 16 November 2021).
  41. Graham, R.L.; Knuth, D.E.; Patashnik, O. Concrete Mathematics: A Foundation for Computer Science, 2nd ed.; Addison-Wesley Professional: Reading, MA, USA, 1994. [Google Scholar]
Figure 1. Two robots, R 1 and R 2 , are moving in straight lines toward a target at A. The angle between their trajectory is θ . The distance between the two robots over time is denoted by l θ ( t ) .
Figure 1. Two robots, R 1 and R 2 , are moving in straight lines toward a target at A. The angle between their trajectory is θ . The distance between the two robots over time is denoted by l θ ( t ) .
Mathematics 10 02482 g001
Figure 2. Normalised delay versus the angle between the trajectories of the robots.
Figure 2. Normalised delay versus the angle between the trajectories of the robots.
Mathematics 10 02482 g002
Figure 3. Two parallel robot lanes for a small target, illustrating the compact lanes strategy.
Figure 3. Two parallel robot lanes for a small target, illustrating the compact lanes strategy.
Mathematics 10 02482 g003
Figure 4. Example of the parallel lanes strategy.
Figure 4. Example of the parallel lanes strategy.
Mathematics 10 02482 g004
Figure 5. Robot lanes for hexagonal packing.
Figure 5. Robot lanes for hexagonal packing.
Mathematics 10 02482 g005
Figure 6. Example of hexagonal packing with different angles. The robots are the black dots.
Figure 6. Example of hexagonal packing with different angles. The robots are the black dots.
Mathematics 10 02482 g006
Figure 7. Limit given by (8) using the circle packing results and the lower and upper bounds of the hexagonal packing limit by (11) for θ [ 0 , π / 3 , d = 1 m, v = 1 m/s and s { 3 , 6 } m.
Figure 7. Limit given by (8) using the circle packing results and the lower and upper bounds of the hexagonal packing limit by (11) for θ [ 0 , π / 3 , d = 1 m, v = 1 m/s and s { 3 , 6 } m.
Mathematics 10 02482 g007
Figure 8. Examples of (9) varying θ from 0 to π 3 for different and randomly generated values of T, s, and d. It continues in Figure 9. (a) For 99 samples, T = 43 s, s = 3 m, d = 1 m. (b) For 100 samples, T = 43 s, s = 3 m, d = 1 m. (c) For 99 samples, T = 30 s, s = 2.5 m and d = 0.66 m. (d) For 100 samples, T = 30 s, s = 2.5 m and d = 0.66 m.
Figure 8. Examples of (9) varying θ from 0 to π 3 for different and randomly generated values of T, s, and d. It continues in Figure 9. (a) For 99 samples, T = 43 s, s = 3 m, d = 1 m. (b) For 100 samples, T = 43 s, s = 3 m, d = 1 m. (c) For 99 samples, T = 30 s, s = 2.5 m and d = 0.66 m. (d) For 100 samples, T = 30 s, s = 2.5 m and d = 0.66 m.
Mathematics 10 02482 g008
Figure 9. Continuation of Figure 8: examples of (9) varying θ from 0 to π 3 for different and randomly generated values of T, s and d. (a) For 99 samples, T = 4 s, s = 2 m and d = 0.13 m. (b) For 100 samples, T = 4 s, s = 2 m and d = 0.13 m. (c) For 99 samples, T = 100 s, s = 2.40513 m and d = 1 m. (d) For 100 samples, T = 100 s, s = 2.40513 m and d = 1 m.
Figure 9. Continuation of Figure 8: examples of (9) varying θ from 0 to π 3 for different and randomly generated values of T, s and d. (a) For 99 samples, T = 4 s, s = 2 m and d = 0.13 m. (b) For 100 samples, T = 4 s, s = 2 m and d = 0.13 m. (c) For 99 samples, T = 100 s, s = 2.40513 m and d = 1 m. (d) For 100 samples, T = 100 s, s = 2.40513 m and d = 1 m.
Mathematics 10 02482 g009
Figure 10. Similar to Figure 8 and Figure 9 but using 10 7 and 10 7 + 1 equally spaced points for θ [ 0 , π / 3 ) . It continues in Figure 11. (a) For 10 7 samples, T = 43 s, s = 3 m, d = 1 m. (b) For 10 7 + 1 samples, T = 43 s, s = 3 m, d = 1 m. (c) For 10 7 samples, T = 30 s, s = 2.5 m and d = 0.66 m. (d) For 10 7 + 1 samples, T = 30 s, s = 2.5 m and d = 0.66 m.
Figure 10. Similar to Figure 8 and Figure 9 but using 10 7 and 10 7 + 1 equally spaced points for θ [ 0 , π / 3 ) . It continues in Figure 11. (a) For 10 7 samples, T = 43 s, s = 3 m, d = 1 m. (b) For 10 7 + 1 samples, T = 43 s, s = 3 m, d = 1 m. (c) For 10 7 samples, T = 30 s, s = 2.5 m and d = 0.66 m. (d) For 10 7 + 1 samples, T = 30 s, s = 2.5 m and d = 0.66 m.
Mathematics 10 02482 g010
Figure 11. Continuation of Figure 10: examples similar to Figure 8 and Figure 9 but using 10 7 and 10 7 + 1 equally spaced points for θ [ 0 , π / 3 ) . (a) For 10 7 samples, T = 4 s, s = 2 m and d = 0.13 m. (b) For 10 7 + 1 samples, T = 4 s, s = 2 m and d = 0.13 m. (c) For 10 7 samples, T = 100 s, s = 2.40513 m and d = 1 m. (d) For 10 7 + 1 samples, T = 100 s, s = 2.40513 m and d = 1 m.
Figure 11. Continuation of Figure 10: examples similar to Figure 8 and Figure 9 but using 10 7 and 10 7 + 1 equally spaced points for θ [ 0 , π / 3 ) . (a) For 10 7 samples, T = 4 s, s = 2 m and d = 0.13 m. (b) For 10 7 + 1 samples, T = 4 s, s = 2 m and d = 0.13 m. (c) For 10 7 samples, T = 100 s, s = 2.40513 m and d = 1 m. (d) For 10 7 + 1 samples, T = 100 s, s = 2.40513 m and d = 1 m.
Mathematics 10 02482 g011
Figure 12. Illustration of the touch and run strategy. (a) Central angle region and its exiting and entering rays defined by the angle α . (b) Trajectory of a robot next to the target in red.
Figure 12. Illustration of the touch and run strategy. (a) Central angle region and its exiting and entering rays defined by the angle α . (b) Trajectory of a robot next to the target in red.
Mathematics 10 02482 g012
Figure 13. Theoretical trajectory in red, for α = π / 2 and K = 4 .
Figure 13. Theoretical trajectory in red, for α = π / 2 and K = 4 .
Mathematics 10 02482 g013
Figure 14. Plot of the asymptotic throughput of the touch and run strategy (given by (19)) for some values of s and d, in metres, and v = 1 m/s, for the interval of values for K obtained by (14).
Figure 14. Plot of the asymptotic throughput of the touch and run strategy (given by (19)) for some values of s and d, in metres, and v = 1 m/s, for the interval of values for K obtained by (14).
Mathematics 10 02482 g014
Figure 15. Example of u values such that f h m a x ( u ) > f p ( u ) for v = 1 m/s and d = 1 m.
Figure 15. Example of u values such that f h m a x ( u ) > f p ( u ) for v = 1 m/s and d = 1 m.
Mathematics 10 02482 g015
Figure 16. Comparison of f p ( T , u ) and f h ( T , u ) for u [ 0 , 7 ] , T = 10,000 s, v = 1 m/s and d = 1 m.
Figure 16. Comparison of f p ( T , u ) and f h ( T , u ) for u [ 0 , 7 ] , T = 10,000 s, v = 1 m/s and d = 1 m.
Mathematics 10 02482 g016
Figure 17. Comparison of f p and f h for u [ 0.4 , 1 ] , T = 10,000 s, v { 0.1 , 1 } m/s and d = 1 m. The difference in the lines of f h is due to θ * being different for each value of v. (a) v = 0.1 m/s; (b) v = 1 m/s.
Figure 17. Comparison of f p and f h for u [ 0.4 , 1 ] , T = 10,000 s, v { 0.1 , 1 } m/s and d = 1 m. The difference in the lines of f h is due to θ * being different for each value of v. (a) v = 0.1 m/s; (b) v = 1 m/s.
Mathematics 10 02482 g017
Figure 18. Graph varying u for f h m i n ( u ) , f h m a x ( u ) and f t ( u ) with v = 1 m/s and d = 1 m for different intervals of u. In (a), f h m i n ( u ) and f h m a x ( u ) are almost overlapped. In (b), f t ( u ) > f h m a x ( u ) for all u, except in an interval within (1.12,1.25). (a) u [ 1 / 3 , 1000 ] ; (b) u [ 1 / 3 , 1.25 ] .
Figure 18. Graph varying u for f h m i n ( u ) , f h m a x ( u ) and f t ( u ) with v = 1 m/s and d = 1 m for different intervals of u. In (a), f h m i n ( u ) and f h m a x ( u ) are almost overlapped. In (b), f t ( u ) > f h m a x ( u ) for all u, except in an interval within (1.12,1.25). (a) u [ 1 / 3 , 1000 ] ; (b) u [ 1 / 3 , 1.25 ] .
Mathematics 10 02482 g018
Figure 19. Example for T = 10,000 s, v = 1 m/s, d = 1 m and 100 equally spaced points of u [ 1 / 3 , 7 ] . f h ( T , u ) < f t ( T , u ) , albeit f h m a x ( u ) f t ( T , u ) for a few values of u < 1.5 .
Figure 19. Example for T = 10,000 s, v = 1 m/s, d = 1 m and 100 equally spaced points of u [ 1 / 3 , 7 ] . f h ( T , u ) < f t ( T , u ) , albeit f h m a x ( u ) f t ( T , u ) for a few values of u < 1.5 .
Mathematics 10 02482 g019
Figure 20. Simulation on Stage for compact lanes strategy using s = 0.3 m, d = 1 m during T = 7.1 s. Available on https://youtu.be/e1cWJzWhQmQ, accessed on 12 June 2022. (a) 0 s: beginning of the simulation; (b) After 2.7 s; (c) After 6.7 s; (d) 5 s: ending of the simulation.
Figure 20. Simulation on Stage for compact lanes strategy using s = 0.3 m, d = 1 m during T = 7.1 s. Available on https://youtu.be/e1cWJzWhQmQ, accessed on 12 June 2022. (a) 0 s: beginning of the simulation; (b) After 2.7 s; (c) After 6.7 s; (d) 5 s: ending of the simulation.
Mathematics 10 02482 g020
Figure 21. Simulation on Stage for compact lanes strategy using s = 0.45 m, d = 1 m during T = 10.1 s. Available on https://youtu.be/9OXGC1w83j0, accessed on 12 June 2022. (a) 0 s: beginning of the simulation; (b) After 3.5 s; (c) After 7 s; (d) 10.1 s: ending of the simulation.
Figure 21. Simulation on Stage for compact lanes strategy using s = 0.45 m, d = 1 m during T = 10.1 s. Available on https://youtu.be/9OXGC1w83j0, accessed on 12 June 2022. (a) 0 s: beginning of the simulation; (b) After 3.5 s; (c) After 7 s; (d) 10.1 s: ending of the simulation.
Mathematics 10 02482 g021
Figure 22. Throughput versus time plot for compact lanes strategy for different values of s.
Figure 22. Throughput versus time plot for compact lanes strategy for different values of s.
Mathematics 10 02482 g022
Figure 23. Simulation on Stage for parallel lanes strategy using s = 3 m, d = 1 m during T = 13 s. Available on https://youtu.be/2Y1RHc9YVaw, accessed on 12 June 2022. (a) 0 s: beginning of the simulation; (b) After 6.5 s; (c) 13 s: ending of the simulation.
Figure 23. Simulation on Stage for parallel lanes strategy using s = 3 m, d = 1 m during T = 13 s. Available on https://youtu.be/2Y1RHc9YVaw, accessed on 12 June 2022. (a) 0 s: beginning of the simulation; (b) After 6.5 s; (c) 13 s: ending of the simulation.
Mathematics 10 02482 g023
Figure 24. Simulation on Stage for parallel lanes strategy using s = 6 m, d = 1 m during T = 16 s. Available on https://youtu.be/TVdka65fi1g, accessed on 12 June 2022. (a) 0 s: beginning of the simulation; (b) After 8 s; (c) 16 s: ending of the simulation.
Figure 24. Simulation on Stage for parallel lanes strategy using s = 6 m, d = 1 m during T = 16 s. Available on https://youtu.be/TVdka65fi1g, accessed on 12 June 2022. (a) 0 s: beginning of the simulation; (b) After 8 s; (c) 16 s: ending of the simulation.
Mathematics 10 02482 g024
Figure 25. Plots for the experiments of parallel lanes strategy for s { 3 , 6 } m. (a) Number of robots versus throughput. (b) Number of robots versus the time of arrival of the last robot.
Figure 25. Plots for the experiments of parallel lanes strategy for s { 3 , 6 } m. (a) Number of robots versus throughput. (b) Number of robots versus the time of arrival of the last robot.
Mathematics 10 02482 g025
Figure 26. Simulation on Stage for hexagonal packing strategy using s = 3 m, θ = 0 during T = 9.8 s. Available on https://youtu.be/6_LgZWFOWd0, accessed on 12 June 2022. (a) 0 s: beginning of the simulation; (b) After 4.9 s; (c) 9.8 s: ending of the simulation.
Figure 26. Simulation on Stage for hexagonal packing strategy using s = 3 m, θ = 0 during T = 9.8 s. Available on https://youtu.be/6_LgZWFOWd0, accessed on 12 June 2022. (a) 0 s: beginning of the simulation; (b) After 4.9 s; (c) 9.8 s: ending of the simulation.
Mathematics 10 02482 g026
Figure 27. Simulation on Stage for hexagonal packing strategy using s = 3 m, θ = π / 12 during T = 10 s. Available on https://youtu.be/Wji8XlSQJBQ, accessed on 12 June 2022. (a) 0 s: beginning of the simulation; (b) After 5 s; (c) 10 s: ending of the simulation.
Figure 27. Simulation on Stage for hexagonal packing strategy using s = 3 m, θ = π / 12 during T = 10 s. Available on https://youtu.be/Wji8XlSQJBQ, accessed on 12 June 2022. (a) 0 s: beginning of the simulation; (b) After 5 s; (c) 10 s: ending of the simulation.
Mathematics 10 02482 g027
Figure 28. Simulation on Stage for hexagonal packing strategy using s = 3 m, θ = π / 6 during T = 10 s. Available on https://youtu.be/szOBU8no_sU, accessed on 12 June 2022. (a) 0 s: beginning of the simulation; (b) After 4.9 s; (c) 10 s: ending of the simulation.
Figure 28. Simulation on Stage for hexagonal packing strategy using s = 3 m, θ = π / 6 during T = 10 s. Available on https://youtu.be/szOBU8no_sU, accessed on 12 June 2022. (a) 0 s: beginning of the simulation; (b) After 4.9 s; (c) 10 s: ending of the simulation.
Mathematics 10 02482 g028
Figure 29. Simulation on Stage for hexagonal packing strategy using s = 3 m, θ = 5 π / 18 during T = 10 s. Available on https://youtu.be/jRLgaF7Te1Q, accessed on 12 June 2022. (a) 0 s: beginning of the simulation; (b) After 4.9 s; (c) 10 s: ending of the simulation.
Figure 29. Simulation on Stage for hexagonal packing strategy using s = 3 m, θ = 5 π / 18 during T = 10 s. Available on https://youtu.be/jRLgaF7Te1Q, accessed on 12 June 2022. (a) 0 s: beginning of the simulation; (b) After 4.9 s; (c) 10 s: ending of the simulation.
Mathematics 10 02482 g029
Figure 30. Simulation on Stage for hexagonal packing strategy using s = 6 m, θ = 0 during T = 9.8 s. Available on https://youtu.be/v0FK8YpGrL8, accessed on 12 June 2022. (a) 0 s: beginning of the simulation; (b) After 4.9 s; (c) 9.8 s: ending of the simulation.
Figure 30. Simulation on Stage for hexagonal packing strategy using s = 6 m, θ = 0 during T = 9.8 s. Available on https://youtu.be/v0FK8YpGrL8, accessed on 12 June 2022. (a) 0 s: beginning of the simulation; (b) After 4.9 s; (c) 9.8 s: ending of the simulation.
Mathematics 10 02482 g030
Figure 31. Simulation on Stage for hexagonal packing strategy using s = 6 m, θ = π / 12 during T = 10.1 s. Available on https://youtu.be/OBS_HADH5OE, accessed on 12 June 2022. (a) 0 s: beginning of the simulation.; (b) After 5 s; (c) 10.1 s: ending of the simulation..
Figure 31. Simulation on Stage for hexagonal packing strategy using s = 6 m, θ = π / 12 during T = 10.1 s. Available on https://youtu.be/OBS_HADH5OE, accessed on 12 June 2022. (a) 0 s: beginning of the simulation.; (b) After 5 s; (c) 10.1 s: ending of the simulation..
Mathematics 10 02482 g031
Figure 32. Simulation on Stage for hexagonal packing strategy using s = 6 m, θ = π / 6 during T = 10 s. Available on https://youtu.be/-KX7ziOp8b0, accessed on 12 June 2022. (a) 0 s: beginning of the simulation.; (b) After 4.9 s; (c) 10 s: ending of the simulation.
Figure 32. Simulation on Stage for hexagonal packing strategy using s = 6 m, θ = π / 6 during T = 10 s. Available on https://youtu.be/-KX7ziOp8b0, accessed on 12 June 2022. (a) 0 s: beginning of the simulation.; (b) After 4.9 s; (c) 10 s: ending of the simulation.
Mathematics 10 02482 g032
Figure 33. Simulation on Stage for hexagonal packing strategy using s = 6 m, θ = 5 π / 18 during T = 10 s. Available on https://youtu.be/GRYRnH5CrhU, accessed on 12 June 2022. (a) 0 s: beginning of the simulation; (b) After 4.9 s; (c) 10 s: ending of the simulation.
Figure 33. Simulation on Stage for hexagonal packing strategy using s = 6 m, θ = 5 π / 18 during T = 10 s. Available on https://youtu.be/GRYRnH5CrhU, accessed on 12 June 2022. (a) 0 s: beginning of the simulation; (b) After 4.9 s; (c) 10 s: ending of the simulation.
Mathematics 10 02482 g033
Figure 34. Comparison of simulation data with the asymptotic and instantaneous throughput for hexagonal packing with different values of s and θ . (a) θ = 0 ; (b) θ = π / 12 ; (c) θ = π / 6 ; (d) θ = 5 π / 18 .
Figure 34. Comparison of simulation data with the asymptotic and instantaneous throughput for hexagonal packing with different values of s and θ . (a) θ = 0 ; (b) θ = π / 12 ; (c) θ = π / 6 ; (d) θ = 5 π / 18 .
Mathematics 10 02482 g034
Figure 35. Time of arrival at the target of the last robot versus the number of robots for the same simulations in Figure 34. (a) θ = 0 ; (b) θ = π / 12 ; (c) θ = π / 6 ; (d) θ = 5 π / 18 .
Figure 35. Time of arrival at the target of the last robot versus the number of robots for the same simulations in Figure 34. (a) θ = 0 ; (b) θ = π / 12 ; (c) θ = π / 6 ; (d) θ = 5 π / 18 .
Mathematics 10 02482 g035
Figure 36. Simulation on Stage for the touch and run strategy using s = 3 m, K = 10 during T = 228 s at v = 0.1 m/s. Available on https://youtu.be/Z-ruOMYFyBU, accessed on 12 June 2022. (a) 0 s: beginning of the simulation; (b) After 114 s; (c) 228 s: ending of the simulation.
Figure 36. Simulation on Stage for the touch and run strategy using s = 3 m, K = 10 during T = 228 s at v = 0.1 m/s. Available on https://youtu.be/Z-ruOMYFyBU, accessed on 12 June 2022. (a) 0 s: beginning of the simulation; (b) After 114 s; (c) 228 s: ending of the simulation.
Mathematics 10 02482 g036
Figure 37. Simulation on Stage for the touch and run strategy using s = 3 m, K = 16 during T = 523.1 s at v = 0.1 m/s. Available on https://youtu.be/FvAqv0zD4_Y, accessed on 12 June 2022. (a) 0 s: beginning of the simulation; (b) After 261.6 s; (c) 523.1 s: ending of the simulation.
Figure 37. Simulation on Stage for the touch and run strategy using s = 3 m, K = 16 during T = 523.1 s at v = 0.1 m/s. Available on https://youtu.be/FvAqv0zD4_Y, accessed on 12 June 2022. (a) 0 s: beginning of the simulation; (b) After 261.6 s; (c) 523.1 s: ending of the simulation.
Mathematics 10 02482 g037
Figure 38. Simulation on Stage for the touch and run strategy using s = 6 m, K = 19 during T = 127.4 s at v = 0.1 m/s. Available on https://youtu.be/xJVoVCIjX5k, accessed on 12 June 2022. (a) 0 s: beginning of the simulation; (b) After 63.6 s; (c) 127.4 s: ending of the simulation.
Figure 38. Simulation on Stage for the touch and run strategy using s = 6 m, K = 19 during T = 127.4 s at v = 0.1 m/s. Available on https://youtu.be/xJVoVCIjX5k, accessed on 12 June 2022. (a) 0 s: beginning of the simulation; (b) After 63.6 s; (c) 127.4 s: ending of the simulation.
Mathematics 10 02482 g038
Figure 39. Simulation on Stage for the touch and run strategy using s = 6 m, K = 33 during T = 548 s at v = 0.1 m/s. Available on https://youtu.be/-xZz84npKV4, accessed on 12 June 2022. (a) 0 s: beginning of the simulation; (b) After 274 s; (c) 548 s: ending of the simulation.
Figure 39. Simulation on Stage for the touch and run strategy using s = 6 m, K = 33 during T = 548 s at v = 0.1 m/s. Available on https://youtu.be/-xZz84npKV4, accessed on 12 June 2022. (a) 0 s: beginning of the simulation; (b) After 274 s; (c) 548 s: ending of the simulation.
Mathematics 10 02482 g039
Figure 40. Throughput versus time comparison of the touch and run simulation on Stage with asymptotic values and the theoretical instantaneous equation for the throughput for different values of s and K. (a) s = 3 m and K { 10 , 16 } ; (b) s = 6 m and K { 19 , 33 } .
Figure 40. Throughput versus time comparison of the touch and run simulation on Stage with asymptotic values and the theoretical instantaneous equation for the throughput for different values of s and K. (a) s = 3 m and K { 10 , 16 } ; (b) s = 6 m and K { 19 , 33 } .
Mathematics 10 02482 g040
Figure 41. Time of arrival at the target of the last robot versus number of robots for the same simulations in Figure 40. (a) s = 3 m and K { 10 , 16 } ; (b) s = 6 m and K { 19 , 33 } .
Figure 41. Time of arrival at the target of the last robot versus number of robots for the same simulations in Figure 40. (a) s = 3 m and K { 10 , 16 } ; (b) s = 6 m and K { 19 , 33 } .
Mathematics 10 02482 g041
Figure 42. Throughput versus the number of lanes comparison of the simulation on Stage and asymptotic throughput for s { 3 , 6 } m.
Figure 42. Throughput versus the number of lanes comparison of the simulation on Stage and asymptotic throughput for s { 3 , 6 } m.
Mathematics 10 02482 g042
Figure 43. Throughput versus ratio u = s / d comparing hexagonal packing and parallel lanes strategies for v { 0.1 , 1 } m/s, including results from Stage simulations. (a) v = 0.1 m/s; (b) v = 1 m/s.
Figure 43. Throughput versus ratio u = s / d comparing hexagonal packing and parallel lanes strategies for v { 0.1 , 1 } m/s, including results from Stage simulations. (a) v = 0.1 m/s; (b) v = 1 m/s.
Mathematics 10 02482 g043
Figure 44. Screenshots of the Stage simulation for hexagonal packing and parallel lanes strategy for d = 1 m and s { 0.5 , 0.85 } m. (a) Hexagonal packing with best θ for s = 0.5 m. Available on https://youtu.be/IZBnFHLKXUA, accessed on 12 June 2022. (b) Parallel lanes for s = 0.5 m. Available on https://youtu.be/YYv1dJFkdPA, accessed on 12 June 2022. (c) Hexagonal packing with best θ for s = 0.85 m. Available on https://youtu.be/r9X0fsnngm0, accessed on 12 June 2022. (d) Parallel lanes for s = 0.85 m. Available on https://youtu.be/0cx-bHPIong, accessed on 12 June 2022.
Figure 44. Screenshots of the Stage simulation for hexagonal packing and parallel lanes strategy for d = 1 m and s { 0.5 , 0.85 } m. (a) Hexagonal packing with best θ for s = 0.5 m. Available on https://youtu.be/IZBnFHLKXUA, accessed on 12 June 2022. (b) Parallel lanes for s = 0.5 m. Available on https://youtu.be/YYv1dJFkdPA, accessed on 12 June 2022. (c) Hexagonal packing with best θ for s = 0.85 m. Available on https://youtu.be/r9X0fsnngm0, accessed on 12 June 2022. (d) Parallel lanes for s = 0.85 m. Available on https://youtu.be/0cx-bHPIong, accessed on 12 June 2022.
Mathematics 10 02482 g044
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

dos Passos, Y.T.; Duquesne, X.; Marcolino, L.S. On the Throughput of the Common Target Area for Robotic Swarm Strategies. Mathematics 2022, 10, 2482. https://doi.org/10.3390/math10142482

AMA Style

dos Passos YT, Duquesne X, Marcolino LS. On the Throughput of the Common Target Area for Robotic Swarm Strategies. Mathematics. 2022; 10(14):2482. https://doi.org/10.3390/math10142482

Chicago/Turabian Style

dos Passos, Yuri Tavares, Xavier Duquesne, and Leandro Soriano Marcolino. 2022. "On the Throughput of the Common Target Area for Robotic Swarm Strategies" Mathematics 10, no. 14: 2482. https://doi.org/10.3390/math10142482

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop