# Collective Dynamics of Swarms with a New Attraction/Repulsion Function

Authors: Hong Shi; Guangming Xie
Journal: Mathematical Problems in Engineering
 (2011)

---

## Abstract

We specify an “individual-based” continuous-time model for swarm aggregation inn-dimensional Euclidean space. We show that the swarm is completely stable, and the center of the swarm is stationary. Numerical simulations indicate that the individuals will form a stable and cohesive swarm, and under the attraction/repulsion function, the bound of the swarm size will increase as the number of individuals increases.


---

## Body

## 1. Introduction

Swarming is one of the most common and interesting phenomena in the biological world. Many organisms ranging from simple bacteria to advanced mammals gather together for one reason or another. Many biological theories have proved that such cooperative behavior has certain advantages such as increasing the chance of finding food [1], avoiding predators, and constructing nests. For example, Krause and Ruxton [2], and Couzin and Krause [3] showed that schools of fishes, flocks of birds, and some other vertebrates behave collectively in order to survive in nature. Even cooperative behaviors can be found in the bacteria colony [4]. In one word, the swarming behavior increases the average success of survival in the biological world. This phenomenon has been studied for many decades by biologists. In the recent years, more and more mathematicians and physicists study this phenomenon from the aspects of mathematical modeling [5, 6]. The increasing research concentration on the swarming behavior results from its developing use in engineering fields, such as coordination, distributed cooperative control, and learning strategies for autonomous multiagent systems such as autonomous multirobot applications and unmanned undersea, land, or air vehicles.Many aspects can be concerned for modeling swarm behaviors [7–24], such as the mechanism of information transfer between groups and the synergetic process when preying food as a whole. How information is transmitted within a swarm; how an individual in a swarm can locate itself and find its right place to stay; and whether individuals in a swarm can combine together as a whole and keep it stable. Our work is mainly based on the note [9], in which the author developed a simple model for swarm aggregations based on interindividual attraction/repulsion interactions and showed that the swarm would get cohesive in finite time with a constant bound size, regardless of the number of individuals in the swarm. In [9], the authors technically specified an attraction/repulsion function which ensures each individual not to move away from the whole swarm. Furthermore, they amended their model in [10], introduced the environment factor, and showed that the swarm would avoid unfavorable one.In this paper, we introduce an adjusted attraction/repulsion function. The function in this paper works better in modeling the behaviors of swarm because it is more similar to the swarm in nature. The function indicates that the repulsion increases to infinite as the distance between two individuals in the swarm decreases to zero, and the attraction decreases to zero as the distance increases to infinite. However, for the attraction/repulsion function in [9], the attraction increases to infinite as the distance between two individuals in the swarm increases to infinite, and the repulsion is bounded as the distance decreases to zero. Furthermore, numerical simulations show that the bound of the size of the ultimately stable swarm will increase as the number of individuals in the swarm increases, whereas the increasing rate will decrease.


## 2. Model of a Swarm with New Attraction/Repulsion Function

We consider a swarm ofN individuals (members) in an n-dimensional Euclidean space. We model the individuals as points and ignore their dimensions and assume that they can change their directions arbitrarily if necessary with no time delays. We assume synchronous motion and no time delays, that is, all the members move simultaneously and know the exact positions of all the other members in the swarm, and thus there are no isolated clusters in the swarm. The equation of motion of individual i is given by
(2.1)ẋi=∑j=1,j≠iNf(xi-xj),i=1,…,N,
where xi∈ℝn represents the position of individual i; f(·) represents the function of attraction and repulsion between the individuals in the swarm. In other words, the direction and magnitude of motion of each member is determined as a sum of the attraction and repulsion of all the other members on this member. The attraction/repulsion function that we consider is
(2.2)f(y)=-y(a‖y‖2-b‖y‖4),y∈Rn,
where a and b are positive constants and ∥y∥ is the Euclidean norm given by ∥y∥=yTy, which is used to represent the distance between two individuals in the swarm.For they∈ℝ1 case with a=100 and b=1, this function is shown in Figure 1. From Figure 1, it is easy to see that as the distance becomes larger, the interaction between two individuals changes from repulsion (interaction force  >  0) to attraction (interaction force  <  0), and the attraction decreases as the distance gets much larger. The asterisk in Figure 1 represents the position where the attraction and the repulsion balance. In higher dimensions (i.e, y∈ℝn), the function is exactly the same as in the one-dimensional case, except that it acts on the line connecting the positions of the two individuals (i.e., the line on which the vector y lies).Figure 1
The attraction/repulsion function.Note that the functionf(·) constitutes an artificial social potential function, similar to the one in [9], that governs the interindividual interactions. The term a/∥y∥2 represents the attraction, whereas the term b/∥y∥4 represents the repulsion. Note that this function is attractive (i.e., a/∥y∥2 dominates) for large distances and repulsive (i.e., b/∥y∥4 dominates) for small distances, which is consistent with interindividual attraction/repulsion in biological swarms. Therefore, it constitutes a crude approximation of biological interactions. The main difference between the functions in [9] and in this paper is that the repulsion in our model is unbounded for infinitesimally small arguments; hence, avoidance of collisions between the individuals can be ensured; on the other hand, the attraction approaches zero as any two individuals are far away from each other, which can imitate the real swarm in nature more accurately.The physical significance of our model is clear. If an individual is close to the others in the swarm, the repulsion dominates, which ensures the individual far away from them enough to be “safe”. The repulsion increases as any two individuals get closer because in the real nature the individuals are inclined to be more apart away from others if they are nearer. And if an individual is far away from others in the swarm, the attraction dominates, which makes the individual get closer to the other members of the swarm. However, as the distance between the individual and the others gets bigger, this individual will loss more connection to other members of the swarm, and thus, the attraction decreases to zero as the distance increases to infinity. By equatingf(y)=0, one can find that f(·) switches sign at the set of points defined as 𝒴={y=0or∥y∥=δ=b/a}. The distance δ is the distance at which the attraction and the repulsion balance. Hence, if ∥y∥<δ, then the repulsion dominates; if ∥y∥>δ, then the attraction dominates. Also by equating ḟ(y)=0, we can find that the distance ∥y∥=ζ=3b/a is the distance at which the total force of attraction and repulsion begins to decrease. This is because that with the increase of distance, the individual has less connection with other members.


## 3. Stability Analysis

In this section, we analyze the stability of the system and the final motion behaviors of the swarm members.Definition 3.1.
Thecenter of the swarm members is defined as
(3.1)x̅=1N∑i=1Nxi.
We first prove that because of the symmetry of the attraction/repulsion functionf(·), the center x̅ is stationary for all t, which means that the position of the center is decided by the initial positions of the swarm members. In other words, since f(·) is symmetric with respect to the origin, member i moves toward every other member j exactly the same amount as j moves toward i [9]. Hence, we have the following theorem.Theorem 3.2.
The centerx̅ of the swarm described in (2.1) with an attraction/repulsion function f(·) given in (2.2) is stationary for all t while the whole swarm moves.Proof.
One can easily see that the functionf(·) is symmetric, that is, f(-y)=-f(y) for all y∈ℝn. Let f1(xi-xj)=(a/∥xi-xj∥2)-(b/∥xi-xj∥4). Thus
(3.2)x̅̇=1N∑i=1Nẋi=-1N∑i=1N∑j=1,j≠iN(xi-xj)f1(xi-xj)=0.
Therefore, the swarm center x̅ is stationary for all t.This theorem shows that the swarm described by the model in (2.1) and (2.2) is not drifting. It means that while the swarm members adjust their relative positions to the others, the whole swarm will not move to another new position.In the following, we will further investigate the issue whether the swarm members will finally stop their motion or will start an oscillatory motion within certain region. Define the statex of the system as the vector of the positions of the swarm members, that is, x=[x1T,…,xNT]T. Let the invariant set of equilibrium points be (3.3)Ωe={x:ẋ=0}.We will prove that ast→∞,  the state x(t) converges to Ωe. Namely, the swarm will converge to its equilibrium points. Therefore, the configuration of the swarm members converges to a constant arrangement specified by the set of equilibrium points of the system described in (2.1) and (2.2). We first present the following definition [12].Definition 3.3.
The swarm described in (2.1) is completely stable if every solution converges to the set of equilibrium point of the system.Theorem 3.4.
Consider the swarm described by the model in (2.1) with an attraction/repulsion function f(·) as given in (2.2). The swarm is completely stable, that is, as t→∞, we have x(t)→Ωe.Proof.
Choose the following Lyapunov function:(3.4)J(x)=12∑i=1N-1∑j=i+1N[aln⁡‖xi-xj‖2+b‖xi-xj‖2],
which is an artificial potential function. Computing the gradient of J(x) with respect to xi yields
(3.5)∇xiJ(x)=∑j=1,j≠iN(xi-xj)(a‖xi-xj‖2-b‖xi-xj‖4)=-ẋi.
Then, taking the time derivative of the Lyapunov function J(x) along the motion of the system, we obtain
(3.6)J̇(x)=[∇xJ(x)]Tẋ=∑i=1N[∇xiJ(x)]Tẋi=∑i=1N[-ẋi]Tẋi=-∑i=1N‖ẋi‖2≤0,
for all t. Thus, using LaSalle’s invariance principle, we can conclude that as t→∞, the state x(t) converges to the largest invariant subset of the set defined by
(3.7)Ω={x:J̇(x)=0}={x:ẋ=0}=Ωe.
Since each point in Ωe is an equilibrium, Ωe is an invariant set, and this proves the expected result.The proof of the aforementioned theorem shows the distributed aspect of the swarming behavior. In fact, it shows that the swarm members are performing distributed optimization (function minimization) of a common function (the Lyapunov or cost function) using a distributed gradient method. In other words, each member computes its part of the gradient of the global function at its position (i.e., computes the gradient with respect to its motion variables) and moves along the negative direction of that gradient. The global function in this case is a function of the distances between the members [9].Note that the complete stability implies global convergence of the swarm system to its equilibrium point set, that is, the configuration of the swarm members converges to a constant arrangement. However, the exact location and the size of this set cannot be known, in general, especially for large numberN of the swarm members, because the equations for equilibrium points are nonlinear. On the other hand; however, it is naturally expected that the swarm members will aggregate and form a cluster around the center x̅. Hence, in the next section, we will discuss the cohesion of the swarm.Remark 3.5.
Note that in any of the above analyses, we did not use the dimension of the state spacen. Hence, the results obtained hold for any dimension n.Remark 3.6.
The results here are global. This is a consequence of the definition of the attraction/repulsion functionf(·) in (2.2) over the entire domain.


## 4. Analysis of Swarm Cohesion

We define a swarm member called a free agent, as in [9], which means that there is no neighbors in its repulsion range.Definition 4.1.
A swarm memberi is called a free agent at time t if
(4.1)∥xi(t)-xj(t)∥>δ,∀j∈I,j≠i,
where ℐ={1,…,N} is the set of members of the swarm.
Note that if the distance between a free agent and other members in the swarm is larger thanδ, then there will not be repulsion force on the free agent, and the total force on it will be a combined effect of all the attraction imposed by all the other members. Then we hope that this total force is pointing toward the center x̅ of the swarm and that the free agent is moving toward it. To begin the proof of the following theorem, we define the error vectorei as ei=xi-x̅ for all i∈ℐ.Theorem 4.2.
Assume that all the members are the free agents in the swarm described by the model in (2.1) with an attraction/repulsion function f(·) as given in (2.2) at time t. Then, at time t, their motions are in the direction of decrease of ∑i=1N∥ei∥2 (i.e., toward the center x̅).Proof.
Note that the motion of memberi can be represented as
(4.2)ẋi=-∑j=1,j≠iN(xi-xj)(a‖xi-xj‖2-b‖xi-xj‖4),
and because of Theorem 3.2, we can get
(4.3)ėi=ẋi-x̅̇=ẋi.
Choose the Lyapunov function for the swarm asV=∑i=1NVi, where Vi=1/2eiTei represents half of the distance between member i and the swarm center x̅. Then taking the derivative of V and by using (4.2) and (4.3), we can obtain
(4.4)V̇=∑i=1NeiTėi=∑i=1NeiT[-∑j=1,j≠iN(xi-xj)(a‖xi-xj‖2-b‖xi-xj‖4)]=-∑i=1N∑j=1,j≠iNeiT(ei-ej)f1(xi-xj)=-∑i=1N-1∑j=i+1N‖ei-ej‖2f1(xi-xj)=-∑i=1N-1∑j=i+1N(a-b‖xi-xj‖2),
where f1(xi-xj)=a/∥xi-xj∥2-b/∥xi-xj∥4. Since all the members are the free agents at time t, then ∥xi-xj∥>δ=b/a for all i,j∈ℐ,j≠i, we can get a-b/∥xi-xj∥2>0,foralli,j∈ℐ,j≠i. Therefore, we have
(4.5)V̇<0,
which completes the proof.Remark 4.3.
This theorem is important because it shows the possibility of convergence of the swarm if the original swarm is dispersive. When the members in the swarm are all free agents, the members will aggregate aroundx̅.
As discussed above, all the members of the swarm will converge to the centerx̅ and form a cluster around x̅. However, note that the attraction/repulsion function f(·) in this paper has infinite repulsion force as ∥xi-xj∥→0,foralli,j∈ℐ,j≠i; hence, the agents cannot close unlimitedly.Definition 4.4.
The radiusr of the hyper-ball in which the members finally converge is called a converging radius, and
(4.6)r=max⁡∀i∈I⁡{‖xi-x̅‖}.
We guess that the radius of the hyper-ball in which the members finally converge will increase as the number of members in the swarm increases. In the next section, we will perform some numerical simulations to illustrate the guess. And the simulation results will show that the converging radius increases as the number of members in the swarm increases, and we will provide an approximate function graph to depict the relationship between the radius and the number of the members.


## 5. Numerical Simulations of the Swarm with the New  Attraction/Repulsion Function

We performed some simulations to illustrate whether our hypothesis is consistent with the simulation results. Figures2, 3, 4, 5, 6, 7, 8, 9, 10, and 11 show the states of swarm for the different numbers of individuals in the swarm, where the circles represent the initial positions of members and the asterisks represent the positions of the swarm center. We chose the swarm sizes from 10 to 180. From these figures, it is easy to see that the radius of swarm increases gradually as the number of individuals in the swarm increases, and the increasing rate decreases as the number of individuals in the swarm increases. Figure 12 presents the relation between the number of individuals in the swarm and the converging radius of the swarm, the increasing trend also clearly indicates that the new attraction/repulsion function works well. All the simulation results strongly support the hypothesis before.Figure 2
N=10, radius  =  11.3242.Figure 3
N=20, radius  =  13.8718.Figure 4
N=40, radius  =  15.9004.Figure 5
N=60, radius  =  17.0955.Figure 6
N=80, radius  =  18.0068.Figure 7
N=100, radius  =  18.7945.Figure 8
N=120, radius  =  19.3436.Figure 9
N=140, radius  =  20.2340.Figure 10
N=160, radius  =  20.3709.Figure 11
N=180, radius  =  20.7786.Figure 12
The relation between the number of individuals and the radius of the swarm.


## 6. Concluding Remarks

In this paper, we developed a model of swarm with a new attraction/repulsion function. We analyzed the stability of the swarm system and the aggregation characteristic of the swarm and illustrated by numerical simulations that the radius of the swarm will increase as the number of individuals in the swarm increases. The simulation results presented the approximate relationship between the number of individuals and the swarm radius. This model can be used in studying how individuals forage and chase food in groups. And furthermore, this model can be extended to other more complicated cases in a group that are considered in [10–15]. The following two questions can be further studied: the precise analytic relationship between the number of individuals in a swarm and the radius of the swarm; the motion behaviors within multiple swarms using the attraction/repulsion function provided in this paper.



---

*Source: 735248-2011-08-22.xml*