3. Expected Task Completion Time Estimation Analysis
In this section, the estimation analysis is presented by describing the task scenario of the experiments, the individual robot controller, the challenge in the development of a global analysis from local controllers and the common settings of the algorithms for which the expected task completion time estimations are analysed for a number of robots in the swarm.
Task Scenario: Consider the task scenario where a system with N robots in a plane must reach a common target located at . Each robot knows its position and the positions of the targets, and it can sense nearby objects (for instance, by using laser scanners covering 360 degrees). Upon reaching the target, the robots move to different destinations, which may not be similar. Suppose that the target area is a circle of radius s, and 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, there is no minimum amount of time to stay at the target.
In this scenario, the coordination algorithms, if applied, are only employed inside a working area, that is, a circle of radius around the target. Although the swarm density is not considered as an explicit parameter in this work, the number of robots N and the radius D of the working area yield the swarm density . If the robots have two or more targets, the targets are apart by at least . The initial position of the robots has a distance from the target centre randomly chosen from a uniform distribution in m for a fixed E. The angle between the initial position of a robot and the x-axis is selected from a uniform distribution in rad. To avoid robots starting in the same position and crashes between robots in the beginning of the simulation, if the distance between a robot and any other is less than 1 m, its initial position is selected again. This arrangement inside an annulus is only considered at the start of an experiment and before the initial target.
Once the robots have reached the first target area, they will proceed to the next one at a long distance, either to the left or right of the shared target. In other words, the next target is chosen randomly between positions and . Thus, approximately half of the robots will go to the left-hand side and the rest to the right, according to a uniform probability. This paper focuses on the congestion around the first target area, which is shared by all the robots in the swarm. After they leave the working area around the shared target area, they head towards the next target area by using only repulsive and attractive forces (that is, they turn off the coordination algorithm). In addition, the robots measure in the experiments. Although some settings are precise (e.g., robot size and next target positions), the equations derived in this paper are based on general behaviours and are applicable with different parameters.
The global metric analysed in this paper from the local individual robot controller is defined below.
Definition 1. The task completion time is obtained from the last robot to leave the working area around the shared target area, that is, the maximum time to enter the shared target area plus the time to leave the working area for every robot in the swarm.
Once a robot leaves the working area after it reached the first target area, it is no longer considered in the computation of any metric presented in this paper. As the initial position of the robots is random in an experiment and influences the variation of the task completion time, it is considered the expected task completion time from various experiments, which is defined below.
Definition 2. Let be the task completion time of an algorithm using N robots for an experiment with the initial position of the N robots fixed. Then, stands for the expected task completion time over all executions for N robots.
Individual Robot Controller: Consider a robot
at position
at time
t. In this work, each robot uses the same movement controller, chosen to physically describe the change in the position of the robot given by any algorithm that has an input force resultant from a potential force field
, for an attractive potential field
and a repulsive potential field
. The input force has to be equal among the robots for all algorithms to perform a fair comparison among different approaches. Also, the controller needs to adapt the acceleration when the robot’s velocity changes in situations such as the sudden advent of another robot or the transition to a new target. To satisfy these requirements, the controller is based on the previous works on the common target problem [
8,
21,
23] but rewritten in continuous form:
, and
where
is a force to attract the robot toward a target, and
is the repulsive force applied to avoid bumping other robots. Without the assumption that the robot knows the target position,
cannot be computed correctly.
depends on the algorithm used by each robot and has a fixed magnitude
. The sections below show different choices for
. Each robot adds the attractive force with the repulsive forces and then constrain the result to a fixed vector modulus
to homogenise the acceleration among the individuals in the swarm. The constant
is employed to control alterations in velocity. It prevents the robots slipping due to acceleration changes.
Also, the following repulsive force is employed because it acts as a strong barrier as the robot approaches an obstacle [
67]:
where
is a fixed multiplicative constant for the repulsive force field, and
is the default influence radius, that is, the maximum distance from its mass centre a robot considers anything sensed as an obstacle to avoid.
can be set to the maximum range of the robot’s local sensor. Thus, a robot deprived of local object sensing cannot compute
.
Challenge in the Development of a Global Analysis from Local Controllers: With that
, Equation
1 depends on the neighbourhood of the robot, which, although limited, is dynamic. Even if there is a fixed maximum number of neighbours, a global analysis of
would depend on all the other
robots for each instant
t. Thus, obtaining a closed-form expression for the task completion time in terms of
N directly from Equation
1 is difficult. In addition, observing the behaviour of an algorithm for hundreds of robots in the real world is expensive, but it is faster and more affordable by simulation.
In other words, if the individual robot control equations were simpler than Equation
1, the closed-form expression of the expected task completion time in terms of
N would be obtained by the following steps: (i) integrate Equation
1 twice to obtain
for
, (ii) invert it to retrieve
t for each robot
i, (iii) obtain the maximum
t for every robot
i and (iv) calculate the expected value of this maximum when the initial positions of the robots are randomly distributed inside the annulus of radii
D and
and centre at
. As this closed-form expression cannot be derived from Equation
1 in such manner, a theoretical macroscopic analysis inspired by simulations is performed to attain an approximation of the expected task completion time
. For doing this, besides the target area radius
s and the working radius
D, the following variables are given: the mean distance between the centre of mass of a robot and the others
inside the influence radius
for all robots and the mean linear speed of all robots
. A summary of the variables most used henceforward is in
Table 1.
Moreover, the approximations stated in this section may use these variables as input and are mainly derived from geometric observations or obtained from well-known equations. These approximations are explained after their statements, based on a macroscopic analysis observed from the simulations. As these approximations are constructed from experimentation, these explanations cannot be considered formal proofs, although they are composed of proven mathematical expressions.
Furthermore, in the expected task completion time expressions shown below, constants are defined for each algorithm to subsume the overall behaviour of the robots, their interactions and the congestion inspired by the experiments. Such abstraction is analogous to the friction constant in Physics, which summarises the microscopical effect of surfaces. In this field of study, the friction constant for commonly used materials was initially calculated from experiments with them. Similarly, the defined constants are fitted by the experimental data in
Section 4.
Common Settings of the Presented Algorithms: In this section, four algorithms are analysed about the expected task completion time. In the examples in the figures that follow and in the performed experiments, it was used the values in
Table 2 and the robots are holonomic. Note, however, that the theoretical results also apply for arbitrary values and holonomic or non-holonomic robots, as shown in
Section 4.
In the following sections, the state-of-the-art algorithms in [
23] are restated in equation form and based on the local motion controllers for showing the difficulty of solving the task completion time from the individual local control equations. This presentation begins with the no coordination (NC) [
21] (that is, without any congestion control algorithm, only attractive potential field to the target area and repulsive potential field for avoiding other robots) as a simple example to show that, even from this reduced model, it is hard to infer the expected task completion time per number of robots.
3.1. No Coordination Algorithm
Algorithm Description: When the robots are not coordinated, they only follow the target region, avoiding the others by repulsive force. The equation for the
in Equation
1 is the attractive force to the target centre
given by
Although this is the simplest attractive force of all algorithms presented here, Equation
1 also considers the repulsive force of all robots in the environment. Thus, as the number of robots grows, the analytical solution for the differential equations is still complicated to infer.
Samples of the Observations: As an illustration,
Figure 1 and
Figure 2 show an experiment of NC. Red robots are going to the target region, yellow ones have arrived at it and are trying to leave it, and black robots have exited from the working area and are going to the next target. The robots start in random positions outside the working area (
Figure 1(a)). The first robot to reach the working area takes an expected time inversely proportional to the number of individuals in the swarm (marked with a circle and an arrow in
Figure 1(b)). Each robot goes toward the target area until the first reaches it . Eventually, the first robots to reach the common target area will be stuck in it and will try to leave while they are slowed down due to the congestion caused by the other robots that did not arrive at the target yet (
Figure 1(c)). The robots trying to leave the target area will slowly push the other robots until they move out of the cluttered region with a shape similar to a circle. If a robot is heading in the same direction as the first to overcome this area, it may follow the space created by the other robots avoiding the first. This may cause more robots to do the same, and a queue of robots is formed (
Figure 1(d)). The length of this queue and the number of robots in it are random. New queues may appear while the number of robots in the cluttered area diminishes. When no robots are trying to arrive at the target area, the last queues of robots will finally reach the outside of the working area (
Figure 2(e)) until the last robot leaves this area (with a circle and an arrow in
Figure 2(f)).
Figure 3 and
Figure 4 illustrate an example with a larger target area radius. The robots have more space to access the target. In this example, the capacity of the target area is greater than the number of robots, so they can use the free space to travel to the next targets in both sides (
Figure 3(c)). Due to this free space, the number of robots going to the target (in red) is not enough to force the robots leaving it (in yellow) to go to the target centre (
Figure 3(d)). Thus, the time until the cluttering near the target area disappears is lower than in the previous example, and how the robots leave the target area is also different (
Figure 4(e)) because of the free space in the target area and the less resistance caused by the robots going to the target area.
By analysing such examples, an approximation of the expected task completion time for the NC algorithm can be obtained. The following estimation presents the result. After its statement, an explanation shows the derivations of that approximation based on the observations made by simulating the algorithm. Because the following estimation is constructed from experimentation, the explanation below cannot be considered a formal proof.
Estimation 3.
The estimated expected time for N robots starting at a random position with a distance from the target centre in to arrive at the common target area and leave the working area without coordination is
for
and constants and .
Explanation. The equation for estimating the expected time for NC has five parts: the expected time for (a) the first robot arriving at the working area from its starting position, (b) the first robot that entered the working area reaching the target area (e.g., the time at
Figure 1(b)), (c) the first robots filling the target area (e.g., the time from
Figure 1(b) to
1(c)), (d) the cluttered area disappearing by the queues of robots leaving the target (e.g., the time of Figures
1(c)–
2(e) and
3(c)-
4(e)) and (e) the last robot that reached the target leaving the working area (e.g., the time from Figure
2(e) to
2(f)).
Part (a) is obtained from the expected value of the minimum starting distance to the working area for the N robots. Due to the task scenario description, this value uniformly ranges in . Consequently, the expected minimum distance is , obtained from the probability distribution function of the minimum value [68, p. 229]. Then, the expected time for the first robot to arrive at the working area is .
Parts (b) and (e) share the same expression, obtained from the expected time for a robot on average speed going from the end of the working area to the target area and vice-versa: . Part (c) is given by the expected time for a robot going from the border of the target area to the target centre due to the congestion caused by the other robots going to the target area: .
For calculating the time (d), there are two cases. Let the capacity of the target area be the maximum number of robots that fit inside the target area. When the capacity of the target area is greater than or equal to the number of robots outside the target area, the robots which arrive at the target area have less resistance to leave through the space between the robots which did not yet. The capacity of the target area is approximately the number of circles of radius – half the mean distance between the robots – inside the target area with radius s increased by , that is, . Thus, the number of robots exceeding the capacity of the target area is less than or equal to its capacity if . From experiments, the waiting time can be approximated by for a constant that abstracts the influence of other factors in this time, assuming that it does not depend on time (e.g., any scaling in the speed or the average number of robots per queue, and the influence in the overall movement by the type of the robot – holonomic or non-holonomic).
If the maximum number of robots that fit inside the target area is less than the number of robots outside the target area, the resistance for leaving the target area is higher than before, and part (d) is calculated differently. Due to the erratic formation of the queues of the robots leaving the target area, the time is approximated by assuming a fixed mean distance
between the robots and mean speed
moving from the cluttered area and taking the same time to move as the erratic queues. As seen in the example from
Figure 5, the robots outside the target area go towards the centre, while those leaving it form queues following the other robots for each direction to overcome the congestion. The red robots going to the target tend to concentrate inside a circle containing the cluttered area. On the other hand, the yellow robots leave that area one by one for each queue, diminishing the number of robots in the clutter.
Hence, the cluttered area is approximated by a circle whose radius
vanishes as the robots run through these queues. Let
be the number of robots in that circle at time
t.
Figure 5 illustrates this circle with robots. The cross mark in the middle indicates the target area centre. Suppose that a robot next to that position has to leave that circle. Then, it must run a distance of at most
.
This radius
can be estimated from the area occupied by
robots. For this estimation, consider each robot occupying a squared area of
. The area of the circle containing the robots is approximately the area occupied by
squares with area
, that is,
A robot next to the target centre has to move through a distance equivalent to the number of robots fitting
, excluding that one. Thus, the number of robots to move through is given by
. As one robot is decreased proportionally to the number of robots that it would have to move through and the number of queues, the rate of decrease is given by
subsumes the effect of other factors in this rate, such as how the robots move and variations in the speed, similar to
above. Hence,
for a constant
. As for
,
,
implying that when
,
The desired result is obtained by summing parts (a)-(e) and simplifying the final result. □
3.2. Single Queue Former Algorithm
Algorithm Description: The Single Queue Former (SQF) algorithm [
23] makes one queue shaped as a rectangular corridor that goes towards the target. This corridor has a width equal to the circular target diameter,
, and a length equal to the working radius,
D (
Figure 6). The robots are permitted to enter the target region only by this queue. Potential fields are deployed to form this queue (
Figure 6(a)) and to guide the robots to the target area exit (
Figure 6(b)) efficiently. The corridor starts from the current target centre
. Without any loss of generality, the corridor has vertices located at
,
,
and
.
A rotational force field is applied to robots in the working area to enter the common target area through the corridor. The field rotation centre is at the target centre. The robots are submitted to an attractive force towards the target once they reach the corridor. After they arrive at the target area, another rotational force field is applied to them, whose centre is either at the leftmost point of the working area, , or at the rightmost point, , depending on the position of the next target.
To control the attractive forces, each robot has the states
going to the target (
),
leaving the target (
) and
going to the corridor (
), which respectively means the robot is going straightly to the target region, it is leaving it, and it is going to the corridor. The starting state of the robots is
since they start outside the working area. Consider the conditions named
W,
O and
A, represented as well-formed formulas:
where
is the position of the robot
i at time
t. In other terms,
W is true when the robot is inside the working area,
O, when it is outside the corridor unlimited from above and
A, when it has already arrived at the target area. Note that
W and
O do not depend on past time as
A. Thus, the states of the robot can be represented as formulas using these conditions, which are mutually exclusive:
By using these conditions, the attractive force is represented as follows. Robots outside the corridor follow a force according to Passos et al. [
23]
where
is a constant for setting the force magnitude. In other words, for the left-hand side of the circular working area, a clockwise rotational field is applied, and for the right-hand side, an anti-clockwise one.
However, if the robots are in the corridor, they go towards the target area following the same attractive force equation as in Equation
2, that is,
Robots exiting nearby the target are constrained by another rotational field. This field also is only applied inside the circular working area:
where
is the new target location. In other terms, for a robot with a new target located on the left-hand side of the previous target centre, a clockwise rotational field is applied and, on the right-hand side, an anti-clockwise one.
Finally, in addition to the default influence radius
, another constant is used by the robots when calculating repulsive forces:
, with
, the minimum influence radius allowed. For robots inside the corridor or exiting the target region, the influence radius is
. Now consider a robot outside the corridor but on the upper half of the circular working area. Let
be the distance between the robot and a vertical line in the middle of the corridor (
Figure 6(b)). Its influence radius
I varies in relation to
and is set to
only for
. This range for
guarantees that
. For the other robots, the influence radius is
. Thus, the influence radius and repulsive force are given by
Observe that plugging those attractive and repulsive forces in Equations
4–
7 into the movement controller (Equation
1) yields an intricate differential equation with cases that not only depend on the position of an individual robot for attraction but also the robots in the neighbourhood due to the repulsive force and past time. Moreover, the influence radius calculated in Equation
7 also has different cases, expanding the chain of related expressions to calculate the solutions of the differential equations for each robot. Due to this complexity, the inference of the SQF algorithm task completion time function from the controller equations becomes more difficult than when the robots use NC. As a result, the estimated task completion time function equation is calculated by observing the behaviour of the robots in experiments, similarly to the previous section.
Samples of the Observations: As an example,
Figure 7 and
Figure 8 illustrate an experiment of the SQF algorithm with the default value of its parameter
m. Red, green and yellow robots are in the state
going to the target,
going to the corridor and
leaving the target, respectively. Black robots have exited the working area and are going to the next target. The starting positions are shown in
Figure 7(a). The robots go in the direction of the target and change to state
going to the corridor as they reach the working area (
Figure 7(b)). The longest time for all the robots to enter the corridor is approximately the time for the bottom-most robot to go to it over the working area border (marked with a circle and an arrow in
Figure 7(c). Its time includes the waiting of all robots ahead due to those occupying the corridor while they move towards the target area. After that, all robots can access the corridor (
Figure 7(d)). After the last robot reaches the target area (marked with a circle and an arrow in
Figure 8(e)), all robots follow the exit force field and are on different sides depending on their next target (
Figure 8(f)).
Depending on the target size, the area for leaving the target may have robots still going to the entrance corridor. In this circumstance, the robots going to the target area must wait before they reach a location without any robot leaving the working area because these robots keep passing through them.
Figure 9 and
Figure 10 present an example of such a situation.
Figure 9(a) illustrates the initial configuration.
Figure 9(b) presents the first robot to reach the target area through the corridor (marked with a circle and an arrow).
Figure 9(c) shows a robot that has arrived in the target area without going through the corridor and is leaving the target area. As the space between the target area and the working area border is small, the other robots push the robots near the target, and some may go to the target area without passing through the corridor. By the time the first robot leaves the working area (marked with a circle and an arrow in
Figure 9(d)), there are robots going to the corridor in green and robots reaching the working area in red in the middle of the way induced by the potential field to leave the target area. These robots will take more time to go to the corridor than when
s was smaller. Thus, they create a barrier reducing the area for the robots to leave, and the congestion also blocks the robots going to the corridor, thus, increasing their time to leave (
Figure 10(e)).
Figure 10(f) shows the end of this experiment. Observe that most of the robots are not in this figure. The robots on it are examples of robots that took more time to go to the corridor because they were on the leaving route when the other robots were leaving, as described above. Hence, these robots in
Figure 10(f) were the last to overcome the robots exiting through the leaving area.
As before, an approximation of the expected task completion time for the SQF and its explanation are presented as follows.
Estimation 4.
The estimated expected time for N robots starting at a random position with a distance from the target centre in to arrive at the common target area and leave the working area using the SQF algorithm is
for
and constants and .
Explanation. The estimation of the expected time to complete the SQF algorithm is better explained by analysing the experiment backwardly from the last robot to complete the task. Its calculation has five parts: the expected time for (a) the last robot leaving the working area from the target area (e.g., the time from
Figure 8(e) to
8(f)), (b) the last robot going from the topmost edge of the corridor to the target area (e.g., from
Figure 7(d) to
8(e)), (c) robots waiting to access the corridor (e.g.,
Figures 7(c),
9(d) and
10(e)), (d) the bottom-most robot travelling from where it first entered the working area border to the corridor (e.g., the time from
Figure 7(b) to
Figure 7(d) but excluding the waiting time (c)), (e) the bottom-most robot going from its starting position to the working area (e.g.,
Figure 7(a)–
7(b)).
Part (a) is the time from the expected location in the target area reached by the last robot to the border of the working area by following a circular arc due to the exit force field. On average, the starting position of this arc is at the point
in the circular target area and ends at
in
Figure 11(a), which shows this arc in dashed line. This arc belongs to a circle with radius
as illustrated by the right triangle formed by the points
(at the target area circle with radius
s by straightly following the corridor corner
in
Figure 11(b)), the target centre located at
and the point at
1. Its length is proportional to the angle
, with
in the right triangle and
in the isosceles triangle
. Thus, the expected time (a) is given by
.
Part (b) is given by the time to move from the topmost edge (see point
in
Figure 11(b)) to the target area, that is,
.
Part (c) depends on the target area size and the number of robots. If the number of robots is greater than the entry area capacity, there will be robots going to the corridor in the leaving area while others are leaving the working area, causing congestion (as in
Figure 9(d)–
10(f)). The entry area capacity is calculated from the part of the working area likely to be occupied by robots going to the target area and unused for leaving. Thus, it includes the part of the upper half working area that the robots are probable to occupy inside the corridor, including half of the target area, but excluding the area used only by the robots that first arrived in the corridor (for instance, in
Figure 9(d) and
10(e)). The entry area also includes two lateral areas where robots leaving the target area are unlikely to go, given the SQF force field for leaving from the left- and rightmost points of the target area. The entry area is shaded in
Figure 11(c). For the calculation of the entry area, three areas are considered – namely,
,
and
– defined in the following paragraphs. Due to symmetry,
and
are doubled for the final outcome.
is the working area upper half minus the area of and the area of the circular segment of points and . For the area of , the height is given by the height of the isosceles triangle – which is from its inner right triangle – minus the radius s. Thus, , and the area of is . For the circular segment area, is obtained from the isosceles triangle (with equal sides measuring D and base side, ). Thus, , and the circular segment area is obtained by subtracting the area of from the working area sector of : . Hence, .
and comprise the area on the left-hand side where robots leaving the target area are almost unlikely to pass, given the leaving force field from the leftmost point of the target area. is a circular sector area of angle , and is the circular segment area of points and with angle . and are obtained by the isosceles triangle of equal sides measuring D and base side, , obtained from the radius of the circular sector going from the leftmost point of the circular target area to the point . Thus, and . Consequently, , and is the circular sector area of angle minus the area of the isosceles triangle , that is, . The entry capacity is approximated by considering each robot occupying a squared area of inside the entry area: .
If the number of robots is less than or equal to the entry capacity, experiments show that the waiting time is linear in relation to the number of robots; otherwise, it is quadratic (due to the interference of the robots going to the corridor outside the entry area to the robots leaving the working area). Therefore, in the former case, part (c) is estimated by , and, in the latter case, by , for constants and . As before, these constants abstract characteristics intrinsic to the robot dynamics and the environment where the algorithm is applied.
Part (d) is calculated from the arc length from the estimated initial position of the last robot to the corridor topmost edge (point
in
Figure 11(b)). In
Figure 11(b), the point
represents the maximum possible initial position. The estimated arc angle is the expected maximum from approximately
robots on the left-hand side uniformly sampled over
, i.e.,
[68, p. 229]. From the right triangle formed by
and
in
Figure 11(b),
. Thus, the estimated time of part (d) is
.
Part (e) is also obtained from the expected maximum but for N robots and the uniformly distributed distance from the starting point to the working area. It is given by . The desired result is obtained by summing parts (a)-(e). □
3.3. Touch and Run Vector Fields Algorithm
Algorithm Description: The Touch and Run Vector Fields (TRVF) algorithm [
23] creates
K lanes around the target area by using potential fields. Each lane goes from the working area to next to the target area through an
entrance path in a straight fashion, makes a circular curve intersecting only one point of the target area through a circular
curved path, and then leaves the working area directly through an
exit path (
Figure 12). An entrance path is parallel to the exit path on the opposing lane, and both are apart from
d meters. Between them, a parallel ray passes from the target centre to the working area border. There are
K such rays that divide the target area into sectors with angle
. Each lane is contained in such sectors called the central angle region.
Consider a central angle region
, such that
is the angle of the vector
with the
x-axis. Each lane is formed by four waypoints:
and
forms the entrance path,
and
, the circular curved path, and
and
, the exit path (
Figure 12).
Thus [
23],
for the radius
r of the circular path from
to
. Due to Lemma 3 Passos et al. [
22],
. This path has centre located at
[
23].
The robot follows a straight line force field from the entrance and exit paths and an anti-clockwise orbit guided by the force field for the curved path. Let
and
be two arbitrary initial and final waypoints, and
and
R any centre and radius to follow an orbit. The force field for the straight line following is expressed by (adapted from Nelson et al. [
69])
for
,
,
,
, a constant for setting the force magnitude
, the current orientation of the robot
, the constant for proportional angular speed controller
, the constant for exponentiation in the vector field calculation
and the maximum linear speed
v.
The force field for the orbit following is given by (adapted from Nelson et al. [
69])
for
,
and the constant for exponentiation in this vector field calculation
.
In addition, the robots have six states to indicate in which part of the lane they are: going to the target (), going to the entrance path (), on the entrance path (), entering through the curve path (), leaving through the curve path () and on the exit path (). The initial state is going to the target ().
Consider the conditions named
W,
A,
B,
and
, represented as well-formed formulas:
W and
A means the same as in SQF in the previous section.
B,
and
respectively means in some moment the robot left the entering orbit towards the entrance path, left the entrance path and left the curved path orbit next to target area.
is the time that robot
i arrived at target area, i.e.,
.
As in the previous section, the states can be expressed as mutually exclusive formulas using these conditions:
Using them and Equations
9 and
10 the attractive forces of the TRVF algorithm are expressed as follows. Robots in
are attracted to the current target by a force
but are repelled by a
from the working area of the previous target position
(zero, if there is no previous target). The sum of these forces is normalised so that the resultant force has magnitude
:
The robots in
and
only follow a straight line force field in
with different parameters:
Robots in
are only guided by an orbital force field
with the following parameters:
In
and
, they are submitted to a sum of an orbital force and a stronger attractive force, and the resultant modulus of this sum is constrained to
:
Again, the controller in Equation
1 with the attractive force described by Equations
11–
14 results in a complicated differential equation with mutual dependence. Consequently, the estimated expected task completion time function equation for the TRVF algorithm is also calculated by observing the experiments.
Sample of the Observations: As an example,
Figure 13 and
Figure 14 present an execution of the TRVF algorithm with its default values (
Table 3). Robots in red, cyan, blue, magenta, yellow, orange and black represent the states
,
,
,
,
,
and that they left the previous target area, respectively.
Figure 13(a) illustrates the starting configuration. Robots go to the entrance path conducted by an orbital force around the working area. Then, they proceed to the target through the entrance path (
Figure 13(b)).
Figure 13(c) shows the first robot to reach the target in this experiment (marked with a circle and an arrow). Depending on the number of robots, some robots still have to wait to enter the entrance path (in cyan) while the first one to leave the working area exited (the black robot with a circle and an arrow in the bottom of
Figure 13(d)). After that wait, the last robot to access the working area proceeds through the entrance path in the lane, arrives in the target area (with a circle and an arrow in
Figure 14(e)) and leaves by the exit path, facing a few robots going in different directions (
Figure 14(f)).
From such examples, an approximation of the expected task completion time for the TRVF and its explanation are shown below.
Estimation 5.
The estimated expected time for N robots starting at a random position with a distance from the target centre in to arrive at the common target area and leave the working area using the TRVF algorithm is
for a constant , , and .
Explanation. To estimate the expected time to complete the task with the TRVF algorithm, three parts are needed: the expected time for (a) the first robot reaching an entrance path without moving across the border of the working area circular sector from its starting point, (b) the first robot going to the target area and then leaving it until reaching the working area border by one of the
K lanes (e.g.,
Figure 13(b)–
Figure 13(d)), (c) the waiting and travel of the last robot through the lane.
Part (a) is approximated by the expected minimum distance of a robot from its starting position going directly to an entrance path of a lane without moving next to the border of the working area circular sector. This approximation considers that it is more probable that the first robot to arrive at the entrance path was initially in front of the entrance path. Otherwise, the robot would have to move next to the working area border until it arrives at the entrance path, which is more distant, as the cyan robots in
Figure 13(b)–
13(d). From
Figure 15(a), the sector angle in front of the entrance path is given by
. Thus, the expected time is calculated from the expected minimum distance [68, p. 229] for the number of robots located in the sector angle
when the experiment started (
), i.e.,
Figure 15(b) helps to understand how part (b) is calculated. This part is obtained from the time of the first robot moving at average speed through a distance of
meters via the entrance path, going through the circular path until the point
, leaving by this curved path and running again a distance of
meters via the exit path. The curved path length is obtained from the circular sector angle
(because the sum of the angles inside the quadrilateral containing the point
must be
and the internal angle on the right-hand side is equal to
due to parallelism of the line in the lane).
The length
in
Figure 15(b) is calculated from
and
in
Figure 15(c). The triangle
is the same depicted in the proof in [
22, Lemma 2], where the distance to the target centre for the robot to start turning was calculated using this triangle, so, from the proof of that lemma,
From the right triangle
,
. As
,
. Also,
. Therefore,
As mentioned before, part (b) is the time to go through the entrance lane, the curved path and the exit path, measuring
,
and
, respectively. Consequently, part (b) is given by
.
From experiments, part (c) is proportional to the number of robots in each lane, that is, , for a constant that abstracts the characteristics of the experiment. The final result holds by adding parts (a)-(c). □
3.4. Mixed Teams
Algorithm Description: Mixed Teams (MT) occurs when multiple groups of swarms act in the same environment, but they do not know the algorithm used by other groups. Assume two groups of robots, group A of robots and group B of robots. As explained below, the estimation for MT shows that the estimations for the algorithms can be used as a basis for further derivations. A robot of group A at position executes an algorithm which returns a vector . Thus, their attractive force is simply As noticed in the previous algorithms, deriving an exact equation of the task completion time function from the controller equations is complicated because two groups of robots are executing possibly two different algorithms.
As shown in
Appendix A, using NC has the best results among the experimented algorithms for the group A when the percentage of robots in group A to the total number of robots (
) is lower than 30% and 60% for non-holonomic and holonomic robots, respectively. Thus, in the analysis below
is the same as in (
2), and
= NC was used in the following illustrations.
Samples of the Observations:
Figure 16,
Figure 17,
Figure 18 and
Figure 19 show the execution of MT by 10% and 50% of robots in group A (in grey) to the total number of robots, respectively, when the robots in group B are executing the SQF algorithm with its default values. In these figures, the total number of robots is
. In
Figure 16(b), the usual behaviour of the 10% of the robots in group A is to go directly to the target. In
Figure 16(c), some grey robots left the target region and are going to the next target on both sides (marked with circles and arrows). When the two last robots running NC leave the target area in
Figure 16(d) (with circles and arrows), they try to go to the next target on the left-hand side, but other robots using the SQF are blocking their way. Due to that blockage, the two robots will continue through the SQF-induced leaving route until they can go to the left (
Figure 17(e)). After that, only robots using SQF are in the experiment (
Figure 17(f)). When few robots use NC, this often happens.
Figure 18 and
Figure 19 have more robots using NC. From the bottom of
Figure 18(b), more of them go directly to the target than in the previous example. Robots trying to reach the target may be pushed by robots using SQF on the way to leave the working area (
Figure 18(c)). The cluttering formed by them may continue until the last robot using SQF reaches the target area (marked with a circle and an arrow in
Figure 18(d)). This tendency to clutter occurs proportionally to the number of robots using NC as the algorithm of group A. The robots using NC which are oriented to the target but were on the SQF-induced leaving route are more likely to be the last ones to arrive at the target region (as the two grey robots marked with circles and arrows near the target in
Figure 19(e)). At the end of this experiment, they are the last robots to leave the working area (one of them is marked with a circle and an arrow in
Figure 19(f)).
Figure 20,
Figure 21,
Figure 22 and
Figure 23 illustrate the execution of MT with 10% and 50% of robots in group A to the total number of robots for an experiment with the TRVF with the default parameter values as the algorithm of the robots in group B. In these figures,
. As occurred for SQF, using 10% of the robots has almost the same result as using only TRVF for all robots.
Figure 20(b) shows the robots using NC arriving at the target area through the free space between the lanes. If a robot using NC is on the left-hand side, but its new target is on the right-hand side, it has to wait for robots using TRVF open space in the lane blocking its passage (as the grey robot marked with a circle and an arrow on the left side near the target area in
Figure 20(c)). When a few robots use NC, they leave the working area faster than robots using TRVF, as they tend to follow the shortest distance to the target through the spaces between lanes (
Figure 20(d)). In
Figure 21(e), all robots executing NC have finished the task. Only robots with TRVF are leaving the target area by exit paths until the end of the experiment in
Figure 21(f).
Figure 22 and
Figure 23 exemplify the usage of 50% of robots in group A, and group B executes TRVF with default values. As the proportion of robots using NC is more than in the previous example, they are more likely to cover the open space near the target (
Figure 22(b)) and cause congestion inside the target area (
Figure 22(c)). If a lane has more robots using NC, they hamper robots using TRVF to go through it, as the exit lane on the top left-hand side in
Figure 22(d). As for the 10% case, the last robot using NC leaves before the TRVF robots (marked with a circle and an arrow in
Figure 23(e)). However, fewer TRVF robots than in 10% case are inside the working area until the end of the experiment (
Figure 23(f)).
These illustrations hint that the proportion of robots in group A induces a cluttering similar to that occurred by using only NC. Thus, the task completion time tends to be near NC time as the number of robots in group A
M increases and the algorithm followed by the robots in group B as
M decreases. To better show this,
Figure 24 and
Figure 25 show the result from the experiments with MT for scenarios with the robots executing SQF and TRVF with different values of
M. The bars mean the 99% confidence interval of the average for 40 runs for each value in the horizontal axis. (The examples above are shown for convenience for the explanation below. More detailed results are shown in
Section 4.) Based on these observations, the next estimation shows an approximation for an MT, followed by its explanation.
Estimation 6.
The estimated expected time for N robots starting at a random position with a distance from the target centre in to arrive at the common target area and leave the working area when robots are using MT with NC as the group A algorithm depends on the ratio and is expressed by
for constants and , being the algorithm followed by the robots in group B and its estimated expected time .
Proof (Explanation). Let
be a given constant abstracting the environment and the dynamics of the robots in group A for the ratio
p and
a similar constant for the robots in group B. Thus, as observed in the experiments (
Figure 24 and
Figure 25, Figure 35 and Figure 36 in
Section 4 and
Figure A9–
Figure A14 in
Appendix B), the estimated expected time is the sum of the estimated expected time of NC and the control algorithm followed by the robots in group B each multiplied by the constants
and
, respectively. □