# Formation Control of Robotic Swarm Using Bounded Artificial Forces

Authors: Long Qin; Yabing Zha; Quanjun Yin; Yong Peng
Journal: The Scientific World Journal
 (2013)

---

## Abstract

Formation control of multirobot systems has drawn significant attention in the recent years. This paper presents a potential field control algorithm, navigating a swarm of robots into a predefined 2D shape while avoiding intermember collisions. The algorithm applies in both stationary and moving targets formation. We define the bounded artificial forces in the form of exponential functions, so that the behavior of the swarm drove by the forces can be adjusted via selecting proper control parameters. The theoretical analysis of the swarm behavior proves the stability and convergence properties of the algorithm. We further make certain modifications upon the forces to improve the robustness of the swarm behavior in the presence of realistic implementation considerations. The considerations include obstacle avoidance, local minima, and deformation of the shape. Finally, detailed simulation results validate the efficiency of the proposed algorithm, and the direction of possible futrue work is discussed in the conclusions.


---

## Body

## 1. Introduction

In the past decades, multirobot systems have attracted lots of attention among researchers. With advances in communication, networking, and computing, robotic swarms are becoming more affordable in many given tasks that are too complex to be achieved by a single robot working alone. So far the possible applications range from coordinated control of UAVs [1–4] to spacecraft [5–8] and automatic vehicles [9, 10], and so forth.The ability to achieve, maintain, and change formation is one of the fundamental prerequisites for building an effective multirobot system. Various approaches of formation control are investigated, which can be divided into three categories: the behavior-based approach, the virtual structure approach, and the potential field approach. In the behavior-based approach, a set of behaviors are assigned to each single robot and the performance of the whole group is determined by comparing the relative importance between the behaviors [11–13]. The virtual structure approach considers the entire formation as a rigid entity. Thereby the desired motion is assigned to the rigid structure and the constraint functions which relate the positions and orientations of the member robots can be defined [14, 15]. The potential field approach presents artificial forces between neighboring robots, stabilizing the system to the equilibrium manifold [16, 17]. In addition to the above classification standard, existing approaches also vary from leaderless to leader-follower and centralized to decentralized. In the leader-follower control, a real or a virtual leader is defined and its motion follows a desired trajectory. The follower robots take the leader as a reference and adjust their motion to maintain the overall formation [18, 19]. The goal of the decentralized approach is to achieve a formation while using only local information concerning positions and velocities, which is different from centralized approach relying on global information [20, 21].Due to the physical comparability, the potential field approach which follows the law of gravitation is easier to understand. By correctly shaping potential fields, a desired behavior to a robotic swarm could be imposed [22]. Moreover, the potential field approach is generally more adaptable for building decentralized formation control algorithm [23]. Because of the intrinsic reliability of decentralized methods [22], the potential field approach is widely used in the field of swarm behavior modeling. Thus in this paper we focus on the formation control based on artificial potential forces.Some researches focused on swarm behavior modeling [24]. Ekanayake and Pathirana [16, 25–27] proposed a scalable decentralized control algorithm to navigate a robotic swarm into a stationary shape. Their algorithm possesses remarkable robustness under external disturbances and works well in real world scenarios such as localization errors, communication range limitations, and boundedness of forces. Hengster-Movrić et al. [17] studied multiagent formation control based on bell-shaped potential function. The special feature of their potential function is its dependence on a control parameter that widens or, conversely, concentrates the effective range of interactions. This dependence is used to eliminate some potentially unwanted equilibrium states (e.g., local minima) through bifurcations [28, 29]. They also proved that the proposed controller applies in moving targets formation as well.With a strong practicability, the above algorithms have overcame several issues which must be concerned in practical applications. However, when we attempted to apply them, we still found some unresolved problems. First, the original forces in the work of Ekanayake et al are defined in the form of upper unbounded functions. As a result, if additional rules of actuator limitations are absent, the forces will numerically overflow in certain cases. For example, when the distance between two robots is shortened significantly or one robot reaches the edge of an obstacle, the repulsion force will turn extremely large. Second, local minima of the compositive potential field still appear nearby the boundary of large obstacles. Such local minima are not taken into account by their algorithms, so the robots moving in the obstacle environment usually linger at unwanted equilibriums. Third, the formation shape itself, which is different from the robots, is considered as insensitive to the artificial forces. Thereby the shape is predefined and incapable of deforming continuously to suit the potential change.To resolve these problems, we first define the artificial forces in the form of exponential functions which possess two types of control parameters:magnitude factors to determine the force magnitude and response factors to tune the reacting sensitivity. By carefully selecting the control parameters of these functions, the distribution of the forces can be effectively adjusted, bounding them within rational range. We further present modifications upon the control algorithm to suit realistic implementation considerations. Among these modifications we specially define the repulsion force from an obstacle which is formed by two components: one avoids the robot from collision, while the other pulls the robot to escape from the local minima nearby large obstacles. In order to make a moving shape sensitive to potential change, we build a controller upon the shape contour which provides elastic forces to compress or stretch the shape, making it autodeformable to avoid collisions. The detailed simulation results show that our control architecture can successfully resolve aforementioned problems and improve the robustness of swam behavior. However, as discussed in the conclusions, the fundamental reason which produces the local minima remained unresolved, so we highlight it as our future work and state potential solution in the end.The outline of the paper is as follows. Section2 presents the swarm model and analyzes the behavior of the swarm with certain assumptions. Section 3 discusses implementation considerations which are needed in real world scenarios. Section 4 devises a controller acting on the shape contour so as to make the shape autodeformable, protecting it from collision with obstacles. With the simulation case studies presented in Section 5, we verify the assertions proposed in Section 2 and demonstrate the behavior of the swarm with constraints and modifications discussed in Sections 3 and 4. Finally in Section 6 we give some concluding remarks and state directions to possible future work in this area.


## 2. Swarm Model and Its Behavior Analysis

In Section2.1 we introduce the dynamics of a swarm. In order to reduce the system complexity and highlight the basic control algorithm in the analysis phase, certain simplifications are to be considered. With the simplifications we define a series of basic artificial forces in Section 2.2 to navigate the robots. The behavior of the swarm drove by these forces is analyzed in Sections 2.3 and 2.4. The stability and convergence properties of the control algorithm are also demonstrated in the analysis.


### 2.1. The Swarm Model

We assume that (1) the robots are point masses which have no physical dimensions and follow point mass dynamics; (2) all the individuals in the same swarm should be identical in physical properties such as mass and mobility (3) all the robots are capable of instant and error free localization; and (4) within the communication network of the robots, there is no delay in any info transmission.The state vector of a swarm ofN robots is shown as
(1)xi=xip⊗[10]+xiv⊗[01],i=1,…,N,
where ⊗ denotes the Kronecker product. The entries of xip,xiv∈ℝ2 represent the position-like and velocity-like state variables. Thereby, the state vector of the whole swarm can be denoted as x=[x1,…,xN]T and it is determined by
(2)x˙=Ax+Bu,
where
(3)A=IN⊗A^,B=IN⊗B^,
with
(4)A^=[010-bm],B^=[01].In (4), b is the friction coefficient which can ensure the swarm a complete stop when the forces are balanced. m is the mass of a robot.


### 2.2. Force Definition

The control inputu in (2) consists of
(5)u=[u1,…,uN]T,
where arbitrary entry in the vector is described as follows:
(6)ui=Fi,a+Fi,r+Fi,m=Fi∈ℝ2.In our work all the components ofFi are built in form of exponential functions which can be generally represented as follows:
(7)F(k,β)=ke-βx,x∈ℝ+,
where k,β∈ℝ+ are constants. Our proposed forces defined in such a form of function can be restricted in a rational range and the behavior of the swarm can be easily adjusted via selecting the parameters.The basic artificial forces are defined as follows.F
i
,
a is an attraction force on the ith robot from the shape which is denoted as l(8)Fi,a=ka(1-n(l,xip))∫l(z-xip)∥z-xip∥(1-e-βa∥z-xip∥)∥dz∥Fi,r is the repulsion force on the ith robot from the shape l denoted by
(9)Fi,r=krn(l,xip)∫l(xip-z)∥xip-z∥e-βr∥z-xip∥∥dz∥.
In (8) and (9), z∈ℝ2 denotes a point on the shape contour. We define that n(l,xip)=1 when xip is inside the shape, and n(l,xip)=0 when it is outside. The mutual exclusion ensures that Fi,a will vanish only if the robot is inside l, and Fi,r will vanish only if the robot is outside l.F
i
,
m in (10) refers to the resultant repulsion force acting on the ith robot from the remaining swarm robots. That is,
(10)Fi,m=km∑j=1,j≠iN(xip-xjp)∥xip-xjp∥e-βm∥xip-xjp∥.
From (8) to (10), βa,βr, and βm adjust reacting sensitivity, ka,kr, and km determine the magnitude of the force, (z-xip)/∥z-xip∥,(xip-z)/∥xip-z∥,(xip-xjp)/∥xip-xjp∥∈ℝ2 are unit vectors determining the force directions.Generally speaking,Fi,a and Fi,r are the forces navigating the robots towards the desired shape and evenly spreading them inside the shape. Fi,m avoids the intermember collisions.


### 2.3. Analysis of the Swarm Behavior

AsFi,a and Fi,r are mutually exclusive and do not work simultaneously, the swarm behavior and the stability of the controller can be analyzed in each instance separately. Definitions defined in (11) will be employed by the analysis.Consider(11)zcm=∑i=1NxipN,zc=∫lz∥dz∥cl,cl=∫l∥dz∥zcm,zc, and cl represent the center of mass of the swarm, the center of mass of the shape contour, and length of the shape contour.


#### 2.3.1. Motion of the Swarm and Its Members outside the Formation Shape

When all the robots are operating outside the target shape, the swarm can be viewed as one object affected by resultant force described as follows:(12)F=Fa+Fm+Ff.Fm is the resultant intermember force and equals to zero; that is,
(13)Fm=∑i=1Nkm∑j=1,j≠iN(xip-xjp)∥xip-xjp∥e-βm∥xip-xjp∥=0.Fa is the attraction force from the target shape
(14)Fa=ka∑i=1N∫l(z-xip)∥z-xip∥(1-e-βα∥z-xip∥)∥dz∥.
With definitions in (11), we can infer from (14) that:
(15)Fa<ka∑i=1N∫l(z-xip)∥z-xip∥(1-(1-βα∥z-xip∥))∥dz∥=ka∑i=1N∫lβα(z-xip)∥dz∥=βαclNka(zc-zcm).From (4), we know that the friction force acting on the ith robot is Fi,f=-(b/m)xiv, so the total friction force acting on the swarm can be calculated as follows:
(16)Ff=-(Nbm)(z˙cm).
We define ε=(zcm-zc) with ε˙=z˙cm and ε¨=z¨cm. According to (12), the dynamics of the swarm possess a property as follows:
(17)Nmε¨<-Nb(z˙cm)+βαclNka(zc-zcm)⟹ε¨+(bm)ε˙+βαclkaε<0.
With (17) we can conclude Theorem 1 as follows.Theorem 1.
Consider the swarm model whose dynamics of motion has property described as (17), the motion of the center of mass of the swarm (zcm) is toward the center of mass of the shape contour (zc).Proof.
Taken Lyapunov functionVε=(1/2)(mε˙ε˙T+αclkaεεT), its differential coefficient on time t. That is, Vε˙ can be deducted as follows:
(18)V˙ε=mε˙ε¨T+βαclkaεε˙T<-(bm)ε˙ε˙T-βαclkaεε˙T+βαclkaεε˙T⟹V˙ε<-(bm)∥ε˙∥2.
So V˙ε<0, for any ∥ε˙∥≠0, the only invariant point is (ε=ε˙=0), by using Lyapunov’s method extended by Lãsalle and Lefschetz [30], the Theorem 1 is proved to be true.Intuitively, Theorem1 argues that when all the robots are outside the shape, the center of mass of the swarm will move towards the center of mass of the target shape.The characteristic polynomial of system (17) is
(19)λ2+bmλ+βαclka=0,
and it is clear that, in order to archive damped motion which ensures the swarm is a smooth movement, the conditions b>0, ka>0 and b≥2mβαclka must be satisfied.Theorem1 only states the dynamics of the swarm as one object, while the behavior of every single robot remains uncertain. Next the behavior of an individual robot will be investigated.For theith robot, its dynamics of motion can be described as follows:
(20)mx¨ip=Fi,a+Fi,m+Fi,f.
To the Fi,a defined in (8), where (1-n(l,xip))=1, we have
(21)Fi,a<ka∫l(z-xip)∥z-xip∥(1-(1-βα∥z-xip∥))∥dz∥=βαka∫l(z-xip)∥dz∥⟹Fi,a<βαkacl(zc-xip).ForFi,m we define di,j=∥xip-xjp∥, with (11) and the friction force definition, the dynamics of motion of ith robot is described as
(22)mx¨ip<βαkacl(zc-xip)+km∑j=1,j≠iN(xip-xjp)∥xip-xjp∥e-βγ∥xip-xjp∥-bx˙ip.
With definition vi=(xip-zcm), (22) can be rewritten as
(23)m(x¨ip-z¨cm)+m(z¨cm-z¨c)<-βαkacl(xip-zcm)-βαkacl(zcm-zc)-b(x˙ip-z˙cm)-b(z˙cm-z˙c)+km∑j=1,j≠iN(xip-xjp)∥xip-xjp∥e-βγ∥xip-xjp∥⟹mv¨i+bv˙i+βαkaclvi-Fi,m<0.
By definition of δ=min{di,ji,j∈Nandi≠j}, we have
(24)∥Fi,m∥<km∥∑j=1,j≠iN(xip-xjp)δ∥=km(N-1)δ∥xip-zcmi∥,
where
(25)zcmi=∑j=1,j≠iNxjpN-1.Given the definition ofzcm and zcmi,
(26)xip-zcm=∑j=1,j≠iN(xip-xjp)N,xip-zcmi=∑j=1,j≠iN(xip-xjp)N-1⟹∥xip-zcmi∥∥xip-zcm∥=1-1N<1,So from (24) we state that
(27)∥Fi,m∥<km(N-1)δ∥xip-zcm∥.
In order to form the member robots into a coherent swarm, the artificial forces in right hand side of (20) must drive each robot toward the center of mass of the swarm, and this is just what Theorem 2 concludes as follows.Theorem 2.
Consider a roboti staying outside the shape, if ka/km>(N-1)/δcl is satisfied, then its motion is toward the center of the swarm zcm.Proof.
Choosing a Lyapunov function as(28)Vi=12mv˙iv˙iT+12viviT(βαkacl-km(N-1)δ)>0,
through taking derivatives, V˙i is bounded by
(29)V˙i≤-bm∥v˙i∥2+(∥Fi,m∥-km(N-1)δ∥vi∥)∥v˙i∥,
and it is clear that with (27), the second item of the right hand side of (29) is negative, so we have
(30)V˙i≤-bm∥v˙i∥2,
which proves the theorem.Here with Theorems1 and 2 we argue that with the artificial forces defined in Section 2.2, the swarm staying outside the contour can move toward the target shape and at the same time cohere the robots within certain interdistance.


#### 2.3.2. Motion of the Swarm and Its Members inside the Formation Shape

In this section we proof that when a robot is inside a shape contour which is symmetrical over two or more straight lines and if it is controlled byFi,r defined in (9), then the intersection point of those lines will be the equilibrium point where the robot will stay still after a certain time span.The lemma we used is given without proof. Readers who are interested in this can find more detail in [16]. Lemma 3 use odd and even function properties to derive a property of a complex function which is symmetrical over real axis of the complex plane, as described below.Lemma 3.
For a closed contourl(θ) and functions f1(θ)∈ℝ+, f2(θ)∈C for θ∈[0,2π], with the following properties:
(31)l(θ)=l*(2π-θ),f1(θ)=f1(2π-θ),f2(θ)=l(θ)-CR,CR∈ℝ.We defineℑ(·) the imaginary component of a complex number; then the following statement holds:
(32)ℑ(∫02πf1(θ)f2(θ)dθ)=0.As shown in (9), Fi,r=kr∫l((xip-z)/∥xip-z∥)e-βr∥z-xip∥∥dz∥ consists of two major components, (xip-z)/∥xip-z∥ defines the direction of the force, and e-βr∥z-xip∥ determines the magnitude of the force. The expression for Fi,r is the contour integral of
(33)kr∑k=1K(xip-zk)∥xip-zk∥e-βr∥zk-xip∥,wherezk∈l,
for
(34)∀k,whenk→∞,zk-zk-1=zk+1-zk.We definef(z,xip)=(1/∥xip-z∥)e-βr∥z-xip∥. Using polar coordinate representation for complex plane, zk=l(θ) and Fi,r can be rewritten as
(35)Fi,r=kr∫02πf(l(θ),xip)(xip-l(θ))∥l˙(θ)∥dθ.If the contourl(θ) with θ∈[0,2π) is symmetrical over the real axis and the ith robot is staying along on the real axis (i.e., l(θ)=l*(2π-θ) and ℑ(xip)=0); then we have
(36)f1(θ)=f(l(θ),xip)∥l˙(θ)∥=f(l(2π-θ),xip)∥l˙(2π-θ)∥,f2(θ)=(xip-l(θ)).
Thus using Lemma 3, ℑ(Fi,r)=0 is proved, which is used to prove Theorem 4 as described below.Theorem 4.
Given a robot inside a shape contourl(θ) with the following properties:(1)
l(θ)=l*(2π-θ),(2)
ℑ(xip)=0.Then ℑ(Fi,r)=0.The above assertion can also be extended to determine the behavior of the whole swarm when all the robots are inside the shape, through viewing the swarm as one object, the center of mass of the swarm will finally move to the equilibrium point, and the whole swarm will evenly be distributed inside the contour, as described in Theorem5.Theorem 5.
Given a shape contourl(θ) with two or more symmetric axes. Then for a robot i or the center of mass of a swarm located at the intersection of those axes,Fi,r=0.Proof.
Considerl(θ) has N symmetric axes (k1,…,kN) forming σi∈[0,2π) angles to the real axis, from Theorem 4 we state that when a member or the center of mass of a swarm is located on the intersection of those axes, the repulsion force Fi,r is in the form of
(37)Fi,r=μ1eiσ1=⋯=μNeiσN,
where μ1,…,μN∈ℝ, because σ1≠σ2,…,≠σN; this implies μ1=…=μN=0, which means that Fi,r=0.


### 2.4. Discussion on Transitional State

In this section we focus on the transitional state in which a part of the swarm is inside the contour, while the rest of them stay outside. From Theorem2, when δ increase,the condition ka/km>(N-1)/δcl will be satisfied and the attraction force Fi,a acting on members who stay outside the contour will be dominating. Thus, the remaining part can still move toward the target shape. However, when a robot is staying closer but outside the contour and the contour is not large enough to accommodate all the robots; then Fi,m turns larger than Fi,a, which will lead the robot in an unwanted equilibrium state. This problem can be eliminated by carefully tuning ka and km to suit the swarm size or, as described in the next section, to modify Fi,a to get uniform distribute of the forces near by the contour.


## 2.1. The Swarm Model

We assume that (1) the robots are point masses which have no physical dimensions and follow point mass dynamics; (2) all the individuals in the same swarm should be identical in physical properties such as mass and mobility (3) all the robots are capable of instant and error free localization; and (4) within the communication network of the robots, there is no delay in any info transmission.The state vector of a swarm ofN robots is shown as
(1)xi=xip⊗[10]+xiv⊗[01],i=1,…,N,
where ⊗ denotes the Kronecker product. The entries of xip,xiv∈ℝ2 represent the position-like and velocity-like state variables. Thereby, the state vector of the whole swarm can be denoted as x=[x1,…,xN]T and it is determined by
(2)x˙=Ax+Bu,
where
(3)A=IN⊗A^,B=IN⊗B^,
with
(4)A^=[010-bm],B^=[01].In (4), b is the friction coefficient which can ensure the swarm a complete stop when the forces are balanced. m is the mass of a robot.


## 2.2. Force Definition

The control inputu in (2) consists of
(5)u=[u1,…,uN]T,
where arbitrary entry in the vector is described as follows:
(6)ui=Fi,a+Fi,r+Fi,m=Fi∈ℝ2.In our work all the components ofFi are built in form of exponential functions which can be generally represented as follows:
(7)F(k,β)=ke-βx,x∈ℝ+,
where k,β∈ℝ+ are constants. Our proposed forces defined in such a form of function can be restricted in a rational range and the behavior of the swarm can be easily adjusted via selecting the parameters.The basic artificial forces are defined as follows.F
i
,
a is an attraction force on the ith robot from the shape which is denoted as l(8)Fi,a=ka(1-n(l,xip))∫l(z-xip)∥z-xip∥(1-e-βa∥z-xip∥)∥dz∥Fi,r is the repulsion force on the ith robot from the shape l denoted by
(9)Fi,r=krn(l,xip)∫l(xip-z)∥xip-z∥e-βr∥z-xip∥∥dz∥.
In (8) and (9), z∈ℝ2 denotes a point on the shape contour. We define that n(l,xip)=1 when xip is inside the shape, and n(l,xip)=0 when it is outside. The mutual exclusion ensures that Fi,a will vanish only if the robot is inside l, and Fi,r will vanish only if the robot is outside l.F
i
,
m in (10) refers to the resultant repulsion force acting on the ith robot from the remaining swarm robots. That is,
(10)Fi,m=km∑j=1,j≠iN(xip-xjp)∥xip-xjp∥e-βm∥xip-xjp∥.
From (8) to (10), βa,βr, and βm adjust reacting sensitivity, ka,kr, and km determine the magnitude of the force, (z-xip)/∥z-xip∥,(xip-z)/∥xip-z∥,(xip-xjp)/∥xip-xjp∥∈ℝ2 are unit vectors determining the force directions.Generally speaking,Fi,a and Fi,r are the forces navigating the robots towards the desired shape and evenly spreading them inside the shape. Fi,m avoids the intermember collisions.


## 2.3. Analysis of the Swarm Behavior

AsFi,a and Fi,r are mutually exclusive and do not work simultaneously, the swarm behavior and the stability of the controller can be analyzed in each instance separately. Definitions defined in (11) will be employed by the analysis.Consider(11)zcm=∑i=1NxipN,zc=∫lz∥dz∥cl,cl=∫l∥dz∥zcm,zc, and cl represent the center of mass of the swarm, the center of mass of the shape contour, and length of the shape contour.


### 2.3.1. Motion of the Swarm and Its Members outside the Formation Shape

When all the robots are operating outside the target shape, the swarm can be viewed as one object affected by resultant force described as follows:(12)F=Fa+Fm+Ff.Fm is the resultant intermember force and equals to zero; that is,
(13)Fm=∑i=1Nkm∑j=1,j≠iN(xip-xjp)∥xip-xjp∥e-βm∥xip-xjp∥=0.Fa is the attraction force from the target shape
(14)Fa=ka∑i=1N∫l(z-xip)∥z-xip∥(1-e-βα∥z-xip∥)∥dz∥.
With definitions in (11), we can infer from (14) that:
(15)Fa<ka∑i=1N∫l(z-xip)∥z-xip∥(1-(1-βα∥z-xip∥))∥dz∥=ka∑i=1N∫lβα(z-xip)∥dz∥=βαclNka(zc-zcm).From (4), we know that the friction force acting on the ith robot is Fi,f=-(b/m)xiv, so the total friction force acting on the swarm can be calculated as follows:
(16)Ff=-(Nbm)(z˙cm).
We define ε=(zcm-zc) with ε˙=z˙cm and ε¨=z¨cm. According to (12), the dynamics of the swarm possess a property as follows:
(17)Nmε¨<-Nb(z˙cm)+βαclNka(zc-zcm)⟹ε¨+(bm)ε˙+βαclkaε<0.
With (17) we can conclude Theorem 1 as follows.Theorem 1.
Consider the swarm model whose dynamics of motion has property described as (17), the motion of the center of mass of the swarm (zcm) is toward the center of mass of the shape contour (zc).Proof.
Taken Lyapunov functionVε=(1/2)(mε˙ε˙T+αclkaεεT), its differential coefficient on time t. That is, Vε˙ can be deducted as follows:
(18)V˙ε=mε˙ε¨T+βαclkaεε˙T<-(bm)ε˙ε˙T-βαclkaεε˙T+βαclkaεε˙T⟹V˙ε<-(bm)∥ε˙∥2.
So V˙ε<0, for any ∥ε˙∥≠0, the only invariant point is (ε=ε˙=0), by using Lyapunov’s method extended by Lãsalle and Lefschetz [30], the Theorem 1 is proved to be true.Intuitively, Theorem1 argues that when all the robots are outside the shape, the center of mass of the swarm will move towards the center of mass of the target shape.The characteristic polynomial of system (17) is
(19)λ2+bmλ+βαclka=0,
and it is clear that, in order to archive damped motion which ensures the swarm is a smooth movement, the conditions b>0, ka>0 and b≥2mβαclka must be satisfied.Theorem1 only states the dynamics of the swarm as one object, while the behavior of every single robot remains uncertain. Next the behavior of an individual robot will be investigated.For theith robot, its dynamics of motion can be described as follows:
(20)mx¨ip=Fi,a+Fi,m+Fi,f.
To the Fi,a defined in (8), where (1-n(l,xip))=1, we have
(21)Fi,a<ka∫l(z-xip)∥z-xip∥(1-(1-βα∥z-xip∥))∥dz∥=βαka∫l(z-xip)∥dz∥⟹Fi,a<βαkacl(zc-xip).ForFi,m we define di,j=∥xip-xjp∥, with (11) and the friction force definition, the dynamics of motion of ith robot is described as
(22)mx¨ip<βαkacl(zc-xip)+km∑j=1,j≠iN(xip-xjp)∥xip-xjp∥e-βγ∥xip-xjp∥-bx˙ip.
With definition vi=(xip-zcm), (22) can be rewritten as
(23)m(x¨ip-z¨cm)+m(z¨cm-z¨c)<-βαkacl(xip-zcm)-βαkacl(zcm-zc)-b(x˙ip-z˙cm)-b(z˙cm-z˙c)+km∑j=1,j≠iN(xip-xjp)∥xip-xjp∥e-βγ∥xip-xjp∥⟹mv¨i+bv˙i+βαkaclvi-Fi,m<0.
By definition of δ=min{di,ji,j∈Nandi≠j}, we have
(24)∥Fi,m∥<km∥∑j=1,j≠iN(xip-xjp)δ∥=km(N-1)δ∥xip-zcmi∥,
where
(25)zcmi=∑j=1,j≠iNxjpN-1.Given the definition ofzcm and zcmi,
(26)xip-zcm=∑j=1,j≠iN(xip-xjp)N,xip-zcmi=∑j=1,j≠iN(xip-xjp)N-1⟹∥xip-zcmi∥∥xip-zcm∥=1-1N<1,So from (24) we state that
(27)∥Fi,m∥<km(N-1)δ∥xip-zcm∥.
In order to form the member robots into a coherent swarm, the artificial forces in right hand side of (20) must drive each robot toward the center of mass of the swarm, and this is just what Theorem 2 concludes as follows.Theorem 2.
Consider a roboti staying outside the shape, if ka/km>(N-1)/δcl is satisfied, then its motion is toward the center of the swarm zcm.Proof.
Choosing a Lyapunov function as(28)Vi=12mv˙iv˙iT+12viviT(βαkacl-km(N-1)δ)>0,
through taking derivatives, V˙i is bounded by
(29)V˙i≤-bm∥v˙i∥2+(∥Fi,m∥-km(N-1)δ∥vi∥)∥v˙i∥,
and it is clear that with (27), the second item of the right hand side of (29) is negative, so we have
(30)V˙i≤-bm∥v˙i∥2,
which proves the theorem.Here with Theorems1 and 2 we argue that with the artificial forces defined in Section 2.2, the swarm staying outside the contour can move toward the target shape and at the same time cohere the robots within certain interdistance.


### 2.3.2. Motion of the Swarm and Its Members inside the Formation Shape

In this section we proof that when a robot is inside a shape contour which is symmetrical over two or more straight lines and if it is controlled byFi,r defined in (9), then the intersection point of those lines will be the equilibrium point where the robot will stay still after a certain time span.The lemma we used is given without proof. Readers who are interested in this can find more detail in [16]. Lemma 3 use odd and even function properties to derive a property of a complex function which is symmetrical over real axis of the complex plane, as described below.Lemma 3.
For a closed contourl(θ) and functions f1(θ)∈ℝ+, f2(θ)∈C for θ∈[0,2π], with the following properties:
(31)l(θ)=l*(2π-θ),f1(θ)=f1(2π-θ),f2(θ)=l(θ)-CR,CR∈ℝ.We defineℑ(·) the imaginary component of a complex number; then the following statement holds:
(32)ℑ(∫02πf1(θ)f2(θ)dθ)=0.As shown in (9), Fi,r=kr∫l((xip-z)/∥xip-z∥)e-βr∥z-xip∥∥dz∥ consists of two major components, (xip-z)/∥xip-z∥ defines the direction of the force, and e-βr∥z-xip∥ determines the magnitude of the force. The expression for Fi,r is the contour integral of
(33)kr∑k=1K(xip-zk)∥xip-zk∥e-βr∥zk-xip∥,wherezk∈l,
for
(34)∀k,whenk→∞,zk-zk-1=zk+1-zk.We definef(z,xip)=(1/∥xip-z∥)e-βr∥z-xip∥. Using polar coordinate representation for complex plane, zk=l(θ) and Fi,r can be rewritten as
(35)Fi,r=kr∫02πf(l(θ),xip)(xip-l(θ))∥l˙(θ)∥dθ.If the contourl(θ) with θ∈[0,2π) is symmetrical over the real axis and the ith robot is staying along on the real axis (i.e., l(θ)=l*(2π-θ) and ℑ(xip)=0); then we have
(36)f1(θ)=f(l(θ),xip)∥l˙(θ)∥=f(l(2π-θ),xip)∥l˙(2π-θ)∥,f2(θ)=(xip-l(θ)).
Thus using Lemma 3, ℑ(Fi,r)=0 is proved, which is used to prove Theorem 4 as described below.Theorem 4.
Given a robot inside a shape contourl(θ) with the following properties:(1)
l(θ)=l*(2π-θ),(2)
ℑ(xip)=0.Then ℑ(Fi,r)=0.The above assertion can also be extended to determine the behavior of the whole swarm when all the robots are inside the shape, through viewing the swarm as one object, the center of mass of the swarm will finally move to the equilibrium point, and the whole swarm will evenly be distributed inside the contour, as described in Theorem5.Theorem 5.
Given a shape contourl(θ) with two or more symmetric axes. Then for a robot i or the center of mass of a swarm located at the intersection of those axes,Fi,r=0.Proof.
Considerl(θ) has N symmetric axes (k1,…,kN) forming σi∈[0,2π) angles to the real axis, from Theorem 4 we state that when a member or the center of mass of a swarm is located on the intersection of those axes, the repulsion force Fi,r is in the form of
(37)Fi,r=μ1eiσ1=⋯=μNeiσN,
where μ1,…,μN∈ℝ, because σ1≠σ2,…,≠σN; this implies μ1=…=μN=0, which means that Fi,r=0.


## 2.3.1. Motion of the Swarm and Its Members outside the Formation Shape

When all the robots are operating outside the target shape, the swarm can be viewed as one object affected by resultant force described as follows:(12)F=Fa+Fm+Ff.Fm is the resultant intermember force and equals to zero; that is,
(13)Fm=∑i=1Nkm∑j=1,j≠iN(xip-xjp)∥xip-xjp∥e-βm∥xip-xjp∥=0.Fa is the attraction force from the target shape
(14)Fa=ka∑i=1N∫l(z-xip)∥z-xip∥(1-e-βα∥z-xip∥)∥dz∥.
With definitions in (11), we can infer from (14) that:
(15)Fa<ka∑i=1N∫l(z-xip)∥z-xip∥(1-(1-βα∥z-xip∥))∥dz∥=ka∑i=1N∫lβα(z-xip)∥dz∥=βαclNka(zc-zcm).From (4), we know that the friction force acting on the ith robot is Fi,f=-(b/m)xiv, so the total friction force acting on the swarm can be calculated as follows:
(16)Ff=-(Nbm)(z˙cm).
We define ε=(zcm-zc) with ε˙=z˙cm and ε¨=z¨cm. According to (12), the dynamics of the swarm possess a property as follows:
(17)Nmε¨<-Nb(z˙cm)+βαclNka(zc-zcm)⟹ε¨+(bm)ε˙+βαclkaε<0.
With (17) we can conclude Theorem 1 as follows.Theorem 1.
Consider the swarm model whose dynamics of motion has property described as (17), the motion of the center of mass of the swarm (zcm) is toward the center of mass of the shape contour (zc).Proof.
Taken Lyapunov functionVε=(1/2)(mε˙ε˙T+αclkaεεT), its differential coefficient on time t. That is, Vε˙ can be deducted as follows:
(18)V˙ε=mε˙ε¨T+βαclkaεε˙T<-(bm)ε˙ε˙T-βαclkaεε˙T+βαclkaεε˙T⟹V˙ε<-(bm)∥ε˙∥2.
So V˙ε<0, for any ∥ε˙∥≠0, the only invariant point is (ε=ε˙=0), by using Lyapunov’s method extended by Lãsalle and Lefschetz [30], the Theorem 1 is proved to be true.Intuitively, Theorem1 argues that when all the robots are outside the shape, the center of mass of the swarm will move towards the center of mass of the target shape.The characteristic polynomial of system (17) is
(19)λ2+bmλ+βαclka=0,
and it is clear that, in order to archive damped motion which ensures the swarm is a smooth movement, the conditions b>0, ka>0 and b≥2mβαclka must be satisfied.Theorem1 only states the dynamics of the swarm as one object, while the behavior of every single robot remains uncertain. Next the behavior of an individual robot will be investigated.For theith robot, its dynamics of motion can be described as follows:
(20)mx¨ip=Fi,a+Fi,m+Fi,f.
To the Fi,a defined in (8), where (1-n(l,xip))=1, we have
(21)Fi,a<ka∫l(z-xip)∥z-xip∥(1-(1-βα∥z-xip∥))∥dz∥=βαka∫l(z-xip)∥dz∥⟹Fi,a<βαkacl(zc-xip).ForFi,m we define di,j=∥xip-xjp∥, with (11) and the friction force definition, the dynamics of motion of ith robot is described as
(22)mx¨ip<βαkacl(zc-xip)+km∑j=1,j≠iN(xip-xjp)∥xip-xjp∥e-βγ∥xip-xjp∥-bx˙ip.
With definition vi=(xip-zcm), (22) can be rewritten as
(23)m(x¨ip-z¨cm)+m(z¨cm-z¨c)<-βαkacl(xip-zcm)-βαkacl(zcm-zc)-b(x˙ip-z˙cm)-b(z˙cm-z˙c)+km∑j=1,j≠iN(xip-xjp)∥xip-xjp∥e-βγ∥xip-xjp∥⟹mv¨i+bv˙i+βαkaclvi-Fi,m<0.
By definition of δ=min{di,ji,j∈Nandi≠j}, we have
(24)∥Fi,m∥<km∥∑j=1,j≠iN(xip-xjp)δ∥=km(N-1)δ∥xip-zcmi∥,
where
(25)zcmi=∑j=1,j≠iNxjpN-1.Given the definition ofzcm and zcmi,
(26)xip-zcm=∑j=1,j≠iN(xip-xjp)N,xip-zcmi=∑j=1,j≠iN(xip-xjp)N-1⟹∥xip-zcmi∥∥xip-zcm∥=1-1N<1,So from (24) we state that
(27)∥Fi,m∥<km(N-1)δ∥xip-zcm∥.
In order to form the member robots into a coherent swarm, the artificial forces in right hand side of (20) must drive each robot toward the center of mass of the swarm, and this is just what Theorem 2 concludes as follows.Theorem 2.
Consider a roboti staying outside the shape, if ka/km>(N-1)/δcl is satisfied, then its motion is toward the center of the swarm zcm.Proof.
Choosing a Lyapunov function as(28)Vi=12mv˙iv˙iT+12viviT(βαkacl-km(N-1)δ)>0,
through taking derivatives, V˙i is bounded by
(29)V˙i≤-bm∥v˙i∥2+(∥Fi,m∥-km(N-1)δ∥vi∥)∥v˙i∥,
and it is clear that with (27), the second item of the right hand side of (29) is negative, so we have
(30)V˙i≤-bm∥v˙i∥2,
which proves the theorem.Here with Theorems1 and 2 we argue that with the artificial forces defined in Section 2.2, the swarm staying outside the contour can move toward the target shape and at the same time cohere the robots within certain interdistance.


## 2.3.2. Motion of the Swarm and Its Members inside the Formation Shape

In this section we proof that when a robot is inside a shape contour which is symmetrical over two or more straight lines and if it is controlled byFi,r defined in (9), then the intersection point of those lines will be the equilibrium point where the robot will stay still after a certain time span.The lemma we used is given without proof. Readers who are interested in this can find more detail in [16]. Lemma 3 use odd and even function properties to derive a property of a complex function which is symmetrical over real axis of the complex plane, as described below.Lemma 3.
For a closed contourl(θ) and functions f1(θ)∈ℝ+, f2(θ)∈C for θ∈[0,2π], with the following properties:
(31)l(θ)=l*(2π-θ),f1(θ)=f1(2π-θ),f2(θ)=l(θ)-CR,CR∈ℝ.We defineℑ(·) the imaginary component of a complex number; then the following statement holds:
(32)ℑ(∫02πf1(θ)f2(θ)dθ)=0.As shown in (9), Fi,r=kr∫l((xip-z)/∥xip-z∥)e-βr∥z-xip∥∥dz∥ consists of two major components, (xip-z)/∥xip-z∥ defines the direction of the force, and e-βr∥z-xip∥ determines the magnitude of the force. The expression for Fi,r is the contour integral of
(33)kr∑k=1K(xip-zk)∥xip-zk∥e-βr∥zk-xip∥,wherezk∈l,
for
(34)∀k,whenk→∞,zk-zk-1=zk+1-zk.We definef(z,xip)=(1/∥xip-z∥)e-βr∥z-xip∥. Using polar coordinate representation for complex plane, zk=l(θ) and Fi,r can be rewritten as
(35)Fi,r=kr∫02πf(l(θ),xip)(xip-l(θ))∥l˙(θ)∥dθ.If the contourl(θ) with θ∈[0,2π) is symmetrical over the real axis and the ith robot is staying along on the real axis (i.e., l(θ)=l*(2π-θ) and ℑ(xip)=0); then we have
(36)f1(θ)=f(l(θ),xip)∥l˙(θ)∥=f(l(2π-θ),xip)∥l˙(2π-θ)∥,f2(θ)=(xip-l(θ)).
Thus using Lemma 3, ℑ(Fi,r)=0 is proved, which is used to prove Theorem 4 as described below.Theorem 4.
Given a robot inside a shape contourl(θ) with the following properties:(1)
l(θ)=l*(2π-θ),(2)
ℑ(xip)=0.Then ℑ(Fi,r)=0.The above assertion can also be extended to determine the behavior of the whole swarm when all the robots are inside the shape, through viewing the swarm as one object, the center of mass of the swarm will finally move to the equilibrium point, and the whole swarm will evenly be distributed inside the contour, as described in Theorem5.Theorem 5.
Given a shape contourl(θ) with two or more symmetric axes. Then for a robot i or the center of mass of a swarm located at the intersection of those axes,Fi,r=0.Proof.
Considerl(θ) has N symmetric axes (k1,…,kN) forming σi∈[0,2π) angles to the real axis, from Theorem 4 we state that when a member or the center of mass of a swarm is located on the intersection of those axes, the repulsion force Fi,r is in the form of
(37)Fi,r=μ1eiσ1=⋯=μNeiσN,
where μ1,…,μN∈ℝ, because σ1≠σ2,…,≠σN; this implies μ1=…=μN=0, which means that Fi,r=0.


## 2.4. Discussion on Transitional State

In this section we focus on the transitional state in which a part of the swarm is inside the contour, while the rest of them stay outside. From Theorem2, when δ increase,the condition ka/km>(N-1)/δcl will be satisfied and the attraction force Fi,a acting on members who stay outside the contour will be dominating. Thus, the remaining part can still move toward the target shape. However, when a robot is staying closer but outside the contour and the contour is not large enough to accommodate all the robots; then Fi,m turns larger than Fi,a, which will lead the robot in an unwanted equilibrium state. This problem can be eliminated by carefully tuning ka and km to suit the swarm size or, as described in the next section, to modify Fi,a to get uniform distribute of the forces near by the contour.


## 3. Implementation Considerations

When implementing the proposed control algorithm in a real world scenario, the simplifications assumed in Section2 will no longer hold. So in Section 3.1 we discuss certain modifications upon the proposed basic forces, which ensure the robustness of the swarm behavior in the presence of realistic implementation considerations. In Section 3.2 we investigate the rules of selecting proper control parameters so as to suit certain applications. Moreover, we show in Section 3.3 that by certain coordinate transformations the controller can be applied to moving targets formation as well.


### 3.1. Controller Modification for Practical Implementation

#### 3.1.1. Physical Dimensions of Robots

Here the robots are no longer considered as point masses. For general case, a robot with physical dimensions possesses length (lm) and width (wm), where lm>wm (see Figure 1).Figure 1
Car-like robots with turning diameter.The operational diameter of the robot is then defined asdt=τt×lm, where τt>1. τt is the safe factor for collision avoidance. By selecting τt the distribution of the repulsion force can be adjusted to suit the maximum speed of the motion. Thereby the modified intermember repulsion force can be stated as follows:
(38)F~i,m=km∑j=1,j≠iN(xip-xjp)∥xip-xjp∥e-βm(∥xip-xjp∥-dt).The comparison betweenF~i,m and Fi,m is shown in Figure 2(a). Additionally we give F~i,m and Fi,m defined in [24] as counterpart in Figure 2(b). It is shown that the magnitude of F~i,m and Fi,m defined in our work is bounded, which can avoid numerical overflow by selecting proper control parameters.Comparison ofF~i,m and Fi,m.
(a)
(b)


#### 3.1.2. Obstacle Avoidance

Obstacle avoidance is one of the most important aspects in practical implementation of the algorithm [31–37]. In general the repulsion forces from obstacles only effect within a finite distance; that is, the sensing radius Rs of a member and its magnitude should be limited too. So repulsion force acting on ith member from obstacle O is presented as follows:
(39)Fi,o=ko∫lofi,o(z)∥dz∥,(40)fi,o={(xip-z)∥xip-z∥e-βo∥z-xip∥,when(∥z-xip∥)∈(0,Rs],0,when(∥z-xip∥)>Rs,
where ko denotes the weight determining the magnitude of the force. lo is the obstacle’s simply-closed contour and z∈ℝ2 is an arbitrary point on that contour.However, only using (40) to determine the repulsion force may lead to local minima near by the boundary of an obstacle, because Fi,o and Fi,a may get balanced. Figure 3(a) shows that three robots lingered near by the obstacle boundary. The reason is that, as Figure 3(b) shows, when the robots move to the edge of the obstacle, Fi,a (represented by red line) together with Fi,o (represented by blue dot line) drive the robot into an unwanted impasse, where Fi,a was counteracted by Fi,o, so there will be no actuator to navigate the robot heading for the destination.Comparison on original and modifiedFi,o on impasse resolution.
(a)
(b)
(c)
(d)To resolve this problem we decomposefi,o into two components, pointing at directions (xip-z)/∥xip-z∥ and [01-10]((xip-z)/∥xip-z∥), respectively, so fi,o is rewritten as follows (where I2×2 denotes identity matrix):
(41)fi,o={12(I2×2+[01-10])(xip-z)∥xip-z∥e-βo∥z-xip∥,hhhhhhhhhwhen(∥z-xip∥)∈(0,Rs],0,hhhhhhhhhhwhen(∥z-xip∥)>Rs.
The part multiplied by [01-10]((xip-z)/∥xip-z∥) in (41) generates a force pulling robot to move along the boundary and escape them from the impasse. Figures 3(c) and 3(d) are counterparts of the same scene but using (41) to calculate Fi,o. These two figures show that the whole swarm can successfully escape the local minima and get into the shape contour.


#### 3.1.3. Actuator Limitations

A robot has its limitation on acceleration and velocity, so the force definitions must be modified to eliminate unrealistic accelerations. Considering the mass of theith member is m, and its upper threshold of acceleration is am; then the controller is shown as
(42)ui=F~iR,
where
(43)F~iR={Fi,ifFi<m×am,m×am,ifFi≥m×am.
We use velocity limiting function introduced in [24] as,
(44)∥x~iv∥={∥xiv∥,if∥xiv∥<vmax,vmax,if∥xiv∥<vmax,
the term vmax represents maximum velocity that the ith member can achieve. ∥x~iv∥ is the desired speed.


#### 3.1.4. Chattering Effect

A drawback of the basic controller is the discontinuous nature of the basic artificial forces (i.e.,Fi,a and Fi,r defined in Section 2). As shown in Figure 4(a), the forces have a significant variation at the boundary. If the shape area is relatively small, the repulsion force from other robots which are already inside the contour will prevent the others from passing through the edge. To tackle this problem, the force defined in (8) is modified to add a term which can compensate Fi,a when the robot is getting closer to the shape contour. The modified Fi,a is as follows:
(45)Fi,a=(1-n(l,xip))∫l(z-xip)∥z-xip∥×[ka(1-e-βa∥z-xip∥)+kace-βac∥xip-z∥]∥dz∥.Distribution of original and modifiedFi,a and Fi,r nearby the shape contour.
(a)
OriginalFi,a and Fi,r
(b)
ModifiedFi,a and Fi,rIn (45), kac determine the magnitude of the additional force. By tuning parameter βac, the operating range of this term can be limited in a short distance from the contour. Figure 4 shows that compared with original Fi,a (Figure 4(a)), modified Fi,a (Figure 4(b)) has preferable uniformity in either side of the shape contour. For the sake of simplicity, the values of the parameters are set as ka=1,kr=1,βa=1,βac=1, and βr=1.


### 3.2. Adaptation of Control Parameters

The behavior of the forces defined in this paper is mainly determined by the value of the control parameters which can be classified into two types:magnitude factors(ka, kac, kr, km, and ko) and response factors (βa, βac, βr, βm, and βo). The basic rules of determining values of these parameters are summarized in this subsection.


#### 3.2.1. Magnitude Factors

For the determination on magnitude factorska, kac, kr, and ko, an uniform representation is defined as follows:
(46)k*=Fupper∫l∥dz∥=Fuppercl,
where Fupper∈ℝ+ is the total force that a shape or obstacle can generate. From the definitions of Fi,a, Fi,r, and Fo it is obvious that F*≤k*, where the symbol * can be replaced by a, r, and o.Forkm we state that
(47)km=N×Fper,
where Fper∈ℝ+ is the unit repulsion force and N is the count of member in the swarm.With (46) and (47), the proposed forces can be limited by certain upper bound.


#### 3.2.2. Response Factors

The definitions of the artificial forces show that the response factorsβ* can adjust the force’s reacting sensitivity. To set the value we have
(48)β*=1Rs,
where the symbol * can be replaced by a, r,m, o, and Rs∈ℝ+ to represent the constant of the robot’s sensing radius.


### 3.3. Moving Targets Formation

When a target shape is executing maneuver, there is a frame of referencex′o′y′ tightly connecting with it. The direction of the swarm’s velocity coincides with the y-axis and points on the shape contour are therefore fixed in such a frame. At time t, the position-like state vector of the ith member under the stationary (global) frame of reference xoy is xip(t)=[x,y], by adopting displacement and rotation transformation as shown in (49), x~ip(t) under x′o′y′ can be calculated by
(49)x~ip(t)=[xcosθ+ysinθ+Δx-xsinθ+ycosθ+Δy],
where θ denotes the angle of rotation of x′o′y′ on xoy and [Δx,Δy]T is the displacement vector pointing from origin o to o′.Consider that the mode of a 2D vector is invariant under coordinate transformations,Fi,a and Fi,r under frame x′o′y′ can be calculated via replacing xip, z in (8) and (9) with x~ip(t),z~.Proof.
Since(50)[x~ip(t)-z~]T=[(x-zx)cosθ+(y-zy)sinθ-(x-zx)sinθ+(y-zy)cosθ]⟹∥[x~ip(t)-z~]T∥=∥[xip(t)-z]T∥.
So the scalar quantity of Fi,a and Fi,r is invariant under coordinates transformation defined by (49).
Here the forces generated from a moving formation was denoted asF-i,a and F-i,r are rewritten as
(51)F-i,a=ka[cosθ00-sinθ]×[∫lx~ip(t)-z~∥x~ip(t)-z~∥(1-e-βa∥x~ip(t)-z~∥)∥dz~∥],(52)F-i,r=kr[cosθ00-sinθ]∫lx~ip(t)-z~∥x~ip(t)-z~∥e-βr∥z~-x~ip(t)∥∥dz~∥.
By replacing original force definitions presented in (8) and (9) with (51) and (52) respectively, we can analogously analyze the swarm behavior and prove that the relative assertions proposed in Section 2 also hold for F-i,a and F-i,r.


## 3.1. Controller Modification for Practical Implementation

### 3.1.1. Physical Dimensions of Robots

Here the robots are no longer considered as point masses. For general case, a robot with physical dimensions possesses length (lm) and width (wm), where lm>wm (see Figure 1).Figure 1
Car-like robots with turning diameter.The operational diameter of the robot is then defined asdt=τt×lm, where τt>1. τt is the safe factor for collision avoidance. By selecting τt the distribution of the repulsion force can be adjusted to suit the maximum speed of the motion. Thereby the modified intermember repulsion force can be stated as follows:
(38)F~i,m=km∑j=1,j≠iN(xip-xjp)∥xip-xjp∥e-βm(∥xip-xjp∥-dt).The comparison betweenF~i,m and Fi,m is shown in Figure 2(a). Additionally we give F~i,m and Fi,m defined in [24] as counterpart in Figure 2(b). It is shown that the magnitude of F~i,m and Fi,m defined in our work is bounded, which can avoid numerical overflow by selecting proper control parameters.Comparison ofF~i,m and Fi,m.
(a)
(b)


### 3.1.2. Obstacle Avoidance

Obstacle avoidance is one of the most important aspects in practical implementation of the algorithm [31–37]. In general the repulsion forces from obstacles only effect within a finite distance; that is, the sensing radius Rs of a member and its magnitude should be limited too. So repulsion force acting on ith member from obstacle O is presented as follows:
(39)Fi,o=ko∫lofi,o(z)∥dz∥,(40)fi,o={(xip-z)∥xip-z∥e-βo∥z-xip∥,when(∥z-xip∥)∈(0,Rs],0,when(∥z-xip∥)>Rs,
where ko denotes the weight determining the magnitude of the force. lo is the obstacle’s simply-closed contour and z∈ℝ2 is an arbitrary point on that contour.However, only using (40) to determine the repulsion force may lead to local minima near by the boundary of an obstacle, because Fi,o and Fi,a may get balanced. Figure 3(a) shows that three robots lingered near by the obstacle boundary. The reason is that, as Figure 3(b) shows, when the robots move to the edge of the obstacle, Fi,a (represented by red line) together with Fi,o (represented by blue dot line) drive the robot into an unwanted impasse, where Fi,a was counteracted by Fi,o, so there will be no actuator to navigate the robot heading for the destination.Comparison on original and modifiedFi,o on impasse resolution.
(a)
(b)
(c)
(d)To resolve this problem we decomposefi,o into two components, pointing at directions (xip-z)/∥xip-z∥ and [01-10]((xip-z)/∥xip-z∥), respectively, so fi,o is rewritten as follows (where I2×2 denotes identity matrix):
(41)fi,o={12(I2×2+[01-10])(xip-z)∥xip-z∥e-βo∥z-xip∥,hhhhhhhhhwhen(∥z-xip∥)∈(0,Rs],0,hhhhhhhhhhwhen(∥z-xip∥)>Rs.
The part multiplied by [01-10]((xip-z)/∥xip-z∥) in (41) generates a force pulling robot to move along the boundary and escape them from the impasse. Figures 3(c) and 3(d) are counterparts of the same scene but using (41) to calculate Fi,o. These two figures show that the whole swarm can successfully escape the local minima and get into the shape contour.


### 3.1.3. Actuator Limitations

A robot has its limitation on acceleration and velocity, so the force definitions must be modified to eliminate unrealistic accelerations. Considering the mass of theith member is m, and its upper threshold of acceleration is am; then the controller is shown as
(42)ui=F~iR,
where
(43)F~iR={Fi,ifFi<m×am,m×am,ifFi≥m×am.
We use velocity limiting function introduced in [24] as,
(44)∥x~iv∥={∥xiv∥,if∥xiv∥<vmax,vmax,if∥xiv∥<vmax,
the term vmax represents maximum velocity that the ith member can achieve. ∥x~iv∥ is the desired speed.


### 3.1.4. Chattering Effect

A drawback of the basic controller is the discontinuous nature of the basic artificial forces (i.e.,Fi,a and Fi,r defined in Section 2). As shown in Figure 4(a), the forces have a significant variation at the boundary. If the shape area is relatively small, the repulsion force from other robots which are already inside the contour will prevent the others from passing through the edge. To tackle this problem, the force defined in (8) is modified to add a term which can compensate Fi,a when the robot is getting closer to the shape contour. The modified Fi,a is as follows:
(45)Fi,a=(1-n(l,xip))∫l(z-xip)∥z-xip∥×[ka(1-e-βa∥z-xip∥)+kace-βac∥xip-z∥]∥dz∥.Distribution of original and modifiedFi,a and Fi,r nearby the shape contour.
(a)
OriginalFi,a and Fi,r
(b)
ModifiedFi,a and Fi,rIn (45), kac determine the magnitude of the additional force. By tuning parameter βac, the operating range of this term can be limited in a short distance from the contour. Figure 4 shows that compared with original Fi,a (Figure 4(a)), modified Fi,a (Figure 4(b)) has preferable uniformity in either side of the shape contour. For the sake of simplicity, the values of the parameters are set as ka=1,kr=1,βa=1,βac=1, and βr=1.


## 3.1.1. Physical Dimensions of Robots

Here the robots are no longer considered as point masses. For general case, a robot with physical dimensions possesses length (lm) and width (wm), where lm>wm (see Figure 1).Figure 1
Car-like robots with turning diameter.The operational diameter of the robot is then defined asdt=τt×lm, where τt>1. τt is the safe factor for collision avoidance. By selecting τt the distribution of the repulsion force can be adjusted to suit the maximum speed of the motion. Thereby the modified intermember repulsion force can be stated as follows:
(38)F~i,m=km∑j=1,j≠iN(xip-xjp)∥xip-xjp∥e-βm(∥xip-xjp∥-dt).The comparison betweenF~i,m and Fi,m is shown in Figure 2(a). Additionally we give F~i,m and Fi,m defined in [24] as counterpart in Figure 2(b). It is shown that the magnitude of F~i,m and Fi,m defined in our work is bounded, which can avoid numerical overflow by selecting proper control parameters.Comparison ofF~i,m and Fi,m.
(a)
(b)


## 3.1.2. Obstacle Avoidance

Obstacle avoidance is one of the most important aspects in practical implementation of the algorithm [31–37]. In general the repulsion forces from obstacles only effect within a finite distance; that is, the sensing radius Rs of a member and its magnitude should be limited too. So repulsion force acting on ith member from obstacle O is presented as follows:
(39)Fi,o=ko∫lofi,o(z)∥dz∥,(40)fi,o={(xip-z)∥xip-z∥e-βo∥z-xip∥,when(∥z-xip∥)∈(0,Rs],0,when(∥z-xip∥)>Rs,
where ko denotes the weight determining the magnitude of the force. lo is the obstacle’s simply-closed contour and z∈ℝ2 is an arbitrary point on that contour.However, only using (40) to determine the repulsion force may lead to local minima near by the boundary of an obstacle, because Fi,o and Fi,a may get balanced. Figure 3(a) shows that three robots lingered near by the obstacle boundary. The reason is that, as Figure 3(b) shows, when the robots move to the edge of the obstacle, Fi,a (represented by red line) together with Fi,o (represented by blue dot line) drive the robot into an unwanted impasse, where Fi,a was counteracted by Fi,o, so there will be no actuator to navigate the robot heading for the destination.Comparison on original and modifiedFi,o on impasse resolution.
(a)
(b)
(c)
(d)To resolve this problem we decomposefi,o into two components, pointing at directions (xip-z)/∥xip-z∥ and [01-10]((xip-z)/∥xip-z∥), respectively, so fi,o is rewritten as follows (where I2×2 denotes identity matrix):
(41)fi,o={12(I2×2+[01-10])(xip-z)∥xip-z∥e-βo∥z-xip∥,hhhhhhhhhwhen(∥z-xip∥)∈(0,Rs],0,hhhhhhhhhhwhen(∥z-xip∥)>Rs.
The part multiplied by [01-10]((xip-z)/∥xip-z∥) in (41) generates a force pulling robot to move along the boundary and escape them from the impasse. Figures 3(c) and 3(d) are counterparts of the same scene but using (41) to calculate Fi,o. These two figures show that the whole swarm can successfully escape the local minima and get into the shape contour.


## 3.1.3. Actuator Limitations

A robot has its limitation on acceleration and velocity, so the force definitions must be modified to eliminate unrealistic accelerations. Considering the mass of theith member is m, and its upper threshold of acceleration is am; then the controller is shown as
(42)ui=F~iR,
where
(43)F~iR={Fi,ifFi<m×am,m×am,ifFi≥m×am.
We use velocity limiting function introduced in [24] as,
(44)∥x~iv∥={∥xiv∥,if∥xiv∥<vmax,vmax,if∥xiv∥<vmax,
the term vmax represents maximum velocity that the ith member can achieve. ∥x~iv∥ is the desired speed.


## 3.1.4. Chattering Effect

A drawback of the basic controller is the discontinuous nature of the basic artificial forces (i.e.,Fi,a and Fi,r defined in Section 2). As shown in Figure 4(a), the forces have a significant variation at the boundary. If the shape area is relatively small, the repulsion force from other robots which are already inside the contour will prevent the others from passing through the edge. To tackle this problem, the force defined in (8) is modified to add a term which can compensate Fi,a when the robot is getting closer to the shape contour. The modified Fi,a is as follows:
(45)Fi,a=(1-n(l,xip))∫l(z-xip)∥z-xip∥×[ka(1-e-βa∥z-xip∥)+kace-βac∥xip-z∥]∥dz∥.Distribution of original and modifiedFi,a and Fi,r nearby the shape contour.
(a)
OriginalFi,a and Fi,r
(b)
ModifiedFi,a and Fi,rIn (45), kac determine the magnitude of the additional force. By tuning parameter βac, the operating range of this term can be limited in a short distance from the contour. Figure 4 shows that compared with original Fi,a (Figure 4(a)), modified Fi,a (Figure 4(b)) has preferable uniformity in either side of the shape contour. For the sake of simplicity, the values of the parameters are set as ka=1,kr=1,βa=1,βac=1, and βr=1.


## 3.2. Adaptation of Control Parameters

The behavior of the forces defined in this paper is mainly determined by the value of the control parameters which can be classified into two types:magnitude factors(ka, kac, kr, km, and ko) and response factors (βa, βac, βr, βm, and βo). The basic rules of determining values of these parameters are summarized in this subsection.


### 3.2.1. Magnitude Factors

For the determination on magnitude factorska, kac, kr, and ko, an uniform representation is defined as follows:
(46)k*=Fupper∫l∥dz∥=Fuppercl,
where Fupper∈ℝ+ is the total force that a shape or obstacle can generate. From the definitions of Fi,a, Fi,r, and Fo it is obvious that F*≤k*, where the symbol * can be replaced by a, r, and o.Forkm we state that
(47)km=N×Fper,
where Fper∈ℝ+ is the unit repulsion force and N is the count of member in the swarm.With (46) and (47), the proposed forces can be limited by certain upper bound.


### 3.2.2. Response Factors

The definitions of the artificial forces show that the response factorsβ* can adjust the force’s reacting sensitivity. To set the value we have
(48)β*=1Rs,
where the symbol * can be replaced by a, r,m, o, and Rs∈ℝ+ to represent the constant of the robot’s sensing radius.


## 3.2.1. Magnitude Factors

For the determination on magnitude factorska, kac, kr, and ko, an uniform representation is defined as follows:
(46)k*=Fupper∫l∥dz∥=Fuppercl,
where Fupper∈ℝ+ is the total force that a shape or obstacle can generate. From the definitions of Fi,a, Fi,r, and Fo it is obvious that F*≤k*, where the symbol * can be replaced by a, r, and o.Forkm we state that
(47)km=N×Fper,
where Fper∈ℝ+ is the unit repulsion force and N is the count of member in the swarm.With (46) and (47), the proposed forces can be limited by certain upper bound.


## 3.2.2. Response Factors

The definitions of the artificial forces show that the response factorsβ* can adjust the force’s reacting sensitivity. To set the value we have
(48)β*=1Rs,
where the symbol * can be replaced by a, r,m, o, and Rs∈ℝ+ to represent the constant of the robot’s sensing radius.


## 3.3. Moving Targets Formation

When a target shape is executing maneuver, there is a frame of referencex′o′y′ tightly connecting with it. The direction of the swarm’s velocity coincides with the y-axis and points on the shape contour are therefore fixed in such a frame. At time t, the position-like state vector of the ith member under the stationary (global) frame of reference xoy is xip(t)=[x,y], by adopting displacement and rotation transformation as shown in (49), x~ip(t) under x′o′y′ can be calculated by
(49)x~ip(t)=[xcosθ+ysinθ+Δx-xsinθ+ycosθ+Δy],
where θ denotes the angle of rotation of x′o′y′ on xoy and [Δx,Δy]T is the displacement vector pointing from origin o to o′.Consider that the mode of a 2D vector is invariant under coordinate transformations,Fi,a and Fi,r under frame x′o′y′ can be calculated via replacing xip, z in (8) and (9) with x~ip(t),z~.Proof.
Since(50)[x~ip(t)-z~]T=[(x-zx)cosθ+(y-zy)sinθ-(x-zx)sinθ+(y-zy)cosθ]⟹∥[x~ip(t)-z~]T∥=∥[xip(t)-z]T∥.
So the scalar quantity of Fi,a and Fi,r is invariant under coordinates transformation defined by (49).
Here the forces generated from a moving formation was denoted asF-i,a and F-i,r are rewritten as
(51)F-i,a=ka[cosθ00-sinθ]×[∫lx~ip(t)-z~∥x~ip(t)-z~∥(1-e-βa∥x~ip(t)-z~∥)∥dz~∥],(52)F-i,r=kr[cosθ00-sinθ]∫lx~ip(t)-z~∥x~ip(t)-z~∥e-βr∥z~-x~ip(t)∥∥dz~∥.
By replacing original force definitions presented in (8) and (9) with (51) and (52) respectively, we can analogously analyze the swarm behavior and prove that the relative assertions proposed in Section 2 also hold for F-i,a and F-i,r.


## 4. Analysis of the Controller Acting on the Shape Contour

Most of the formation control strategies that are based on artificial potential field only control the overall geometry, while recently some novel strategies have been put forward to control the exact shape of the formation [38–40].When a moving target shape is about to pass through a narrow channel or collide with an obstacle, it is expected that the shape can be autodeformable to suit potential field change and therefore prevent the robots within it from collisions with obstacles. Moreover, in order to accommodate enough space to the whole swarm, it must be ensured that the area of the shape will not change during the deformation phase.To achieve this purpose, in this section we present a controller on the shape contour which is sensitive to the potential change. The controller generates two forces acting on the shape contour: the pressureFC from obstacles and the tension FT generated by the contour itself. We analyze the behavior of this controller via a case in which a robotic swarm is passing through a narrow channel, as shown in Figure 5.Figure 5
The deforming procedure of the shape contour in the case of passing through a narrow channel.We defineR as radius of the smallest enclosing circle of the shape. When the circle is compressed into an ellipse; that is,
(53)X2a2+Y2b2=R2,
where we have
(54)[XY]=[a00b]×[xy],
the area of the resulting ellipse is S=π×abR2. It is clear that if ab=1, the area of the circle will be invariant under the compression. Theorem 6 states that the shape within the circle also keeps its area invariant during the compression.Theorem 6.
Given a shape presented as a convex polygonP with N≥3 vertex, if a compression satisfies condition ab=1 on its smallest enclosing circle, then the area of P is invariant.Proof.
P can be divided into N-2 triangles, for each one of them (denotes as Δ) with vertexes {v1,v2,v3},
(55)SΔc=12∥Xv1Yv21Xv2Yv31Xv3Yv31∥=12∥axv1byv21axv2byv31axv3byv31∥=abSΔ,
whereSΔc andSΔ are the area after and before compression, respectively. If ab=1, then SΔc=SΔ. So
(56)Spc=∑i=1N-2SΔci=ab∑i=1N-2SΔi=abSp=Sp,
which supports the assertion.During the compression phase, the smallest enclosing circle itself will generate a tensile forceFT which tends to pull the shape contour back to its original state, which is represented as
(57)FT=λcΔx,
where Δx denotes the compression ratio, and λc∈ℝ+ the range.We define the width of the channel iswc, the diameter of the smallest enclosing circle is d; then the compression force can be calculated by (58) as
(58)FC={λc×(d-wc)d,ifwc<d,0,ifwc≥d.
Consider state vector
(59)[x1x2]=[1-ax˙1],
then the dynamics of motion of [x1,x2]T will be
(60)[x˙1x˙2]=[01-λc-bc][x1x2]+[01]FC,
where bc=4λc+1 is the friction factor.From (58) and (60), we can get the transfer function of a second-order system as follows:
(61)T(s)=λc((d-wc)/d)s2+bcs+λc=λc((d-wc)/d)s2+s4λc+1+λc,
its damping ratio is ζ=(1/2)4+(1/λc)>1, so it is an over damping system with adjusting time ts=8/4λc+1, and the compression matrix is
(62)[a00b]=[1-x10011-x1].
So an arbitrary point z on the shape contour will be deformed into a new position as z~=[a00b]×z and the attraction and repulsion forces generated by the shape can be recomputed and updated to drive the robots.


## 5. Simulation Results and Discussion

In this section we first test the proposed control algorithm and the swarm behavior by three basic cases: formation convergence (in Section5.1), formation transition (in Section 5.2), and obstacle avoidance (in Section 5.3). Within these cases the basic swarm model proposed in Section 2 and the modified one investigated in Section 3 are both taken into account, which by contrast highlights the improvement of the latter when it is working under certain restrictions in the real world scenario.In Section5.4 we apply the control algorithm to navigate a swarm to trace and finally form certain moving target shapes, which demonstrate the assertion studied in Section 3.3. Additionally, we put a narrow channel between the swarm and the destination. When the swarm is passing through the channel, the shape controller devised in Section 4 can deform the shape to suit the channel and therefore take robots out of the channel.


### 5.1. Formation Convergence

Figure6 shows the motion of a swarm with 30 robots when they are trying to converge into four types of static shape. For this case, we select the parameters as magnitude factors ka=1, kr=2, kf=5, km=15, kac=1, and ko=10; maximal acceleration and velocity of the robot are 7 m/s2 and 4 m/s; reacting range control parameters βa=0.1, βac=0.1, βr=0.1, βm=0.05 and βo=0.05.Formation convergence in different shapes. In the subfigures, red dots represent initial positions and black crosses represent final positions, while the thin lines denote the trajectories. The initial positions are uniformly distributed.
(a)
(b)
(c)
(d)Figures6(a) and 6(b) use the basic attraction force definition as described in (8). It is clear that the robots are lingering back and forth near by the contour. This phenomenon illustrates that with the basic definition of Fi,a and relatively small shape area, some robots usually failed to step into the shape. This is because Fi,a decreases then the resultant repulsion force that generated from the robots in the contour repel them.Figures6(c) and 6(d) use the modified Fi,a defined in (45). The whole swarm can avoid chatter effect and converge into the predefined formation shape. The reason is that the modified Fi,a can keep the uniformity of the force distribution on both side of the boundary, so the attraction force will hold on till the robots get through into the shape; thereafter, Fi,r continuingly navigates them to stay within the shape.


### 5.2. Formation Transition

In real world implementations, formation transitions are very usual. Figure7 shows the simulation results about the behavior of a swarm with N=10 robots. The swarm is subjected to a sudden formation transition. The parameters used here are the same as the ones used in Section 5.1.Simulation cases for shape transition in static and moving situations.
(a)
(b)We test formation transitions in both stationary and moving target shape scenarios. As is seen in Figures7(a) and 7(b) the formation type transits in interval of 20 seconds from triangle via pentagon to square.Figure7(b) demonstrates that the control algorithm for stationary shape is also adaptable in moving formation control. By using theoretical assertions proposed in Section 3.3, the shape can follow arbitrary trajectory and the forces from the shape are calculated by (51) and (52), which is subjected to a relative reference framework moving with the shape.


### 5.3. Obstacle Avoidance

In this section, the velocity and actuator limitations are taken into account. As shown in Figure8(a), there is a swarm of 15 robots in a line formation (represented as red dots) and the target shape (a triangle formation) is located far away from the line. There are several obstacles between the start line and the target shape. The blue dots denotes the paths of the robots and the black crosses are their final positions. The velocity and accelerate are limited to 4 m/s and 7 m/s2 respectively. Ko is set as 100, βo=0.01, and Rs = 10 m.Obstacle avoidance in the complex terrain, using modifiedFi,o.
(a)
(b)Figure8(a) shows that all the robots that successfully escape avoid these obstacles and form the desired formation within 30s. By using the modified Fi,o defined in (39) together with (41), the robot getting closer to the obstacle boundary is dragged by a force parallel the boundary, so it can pass by the obstacles and avoid local minima during the whole process.Figure8(b) shows the change of Fi,a (the red curve) and Fi,r (the green curve) acting on robot ID = 1 when it gets through the formation contour boundary. We can figure out that with the modified Fi,a defined in (45), the force uniformity between Fi,a and Fi,r at time t = 20.9 s is ensured.


### 5.4. Shape Contour Controller

In this part the validity of the contour controller is demonstrated via the case of passing narrow channels. In order to make the swarm a damping system that can make the formation contour deform smoothly, the value of the parameters should beλc=15,bc=4λc+1=7.8102,ζ=(1/2)4+(1/λc)=1.0083>1, and ts=8/4λc+1=1.0243s.Figure9(a) shows the motion of a swarm of 10 robots moving in a triangle formation. When there is no channel to get through, the controller keeps compression force FC=0 and therefore the shape contour is invariant.Simulation cases for moving target shape.
(a)
(b)
(c)
(d)In Figures9(b) and 9(c), a swarm of 15 robots follows a square and a triangle formation respectively. When the swarm reaches the entrance of the channel, the formation, contour begins to suffer pressure FC whose value is determined by (58), which deforms the contour into a compact one and navigates the whole swarm through the channel. After getting out of the channel, the tensile force FT defined in (57) stretches the contour back to its original state.Figure9(d) shows the change of the compression ratios defined in (62). It is clear that the value of a×b (represented as blue stars) always equal 1, which means that the area of the formation shape is invariant. When the swarm is passing the channel, the behavior of the compression matrix which is described in (62) will follow the dynamic model defined in (60).


## 5.1. Formation Convergence

Figure6 shows the motion of a swarm with 30 robots when they are trying to converge into four types of static shape. For this case, we select the parameters as magnitude factors ka=1, kr=2, kf=5, km=15, kac=1, and ko=10; maximal acceleration and velocity of the robot are 7 m/s2 and 4 m/s; reacting range control parameters βa=0.1, βac=0.1, βr=0.1, βm=0.05 and βo=0.05.Formation convergence in different shapes. In the subfigures, red dots represent initial positions and black crosses represent final positions, while the thin lines denote the trajectories. The initial positions are uniformly distributed.
(a)
(b)
(c)
(d)Figures6(a) and 6(b) use the basic attraction force definition as described in (8). It is clear that the robots are lingering back and forth near by the contour. This phenomenon illustrates that with the basic definition of Fi,a and relatively small shape area, some robots usually failed to step into the shape. This is because Fi,a decreases then the resultant repulsion force that generated from the robots in the contour repel them.Figures6(c) and 6(d) use the modified Fi,a defined in (45). The whole swarm can avoid chatter effect and converge into the predefined formation shape. The reason is that the modified Fi,a can keep the uniformity of the force distribution on both side of the boundary, so the attraction force will hold on till the robots get through into the shape; thereafter, Fi,r continuingly navigates them to stay within the shape.


## 5.2. Formation Transition

In real world implementations, formation transitions are very usual. Figure7 shows the simulation results about the behavior of a swarm with N=10 robots. The swarm is subjected to a sudden formation transition. The parameters used here are the same as the ones used in Section 5.1.Simulation cases for shape transition in static and moving situations.
(a)
(b)We test formation transitions in both stationary and moving target shape scenarios. As is seen in Figures7(a) and 7(b) the formation type transits in interval of 20 seconds from triangle via pentagon to square.Figure7(b) demonstrates that the control algorithm for stationary shape is also adaptable in moving formation control. By using theoretical assertions proposed in Section 3.3, the shape can follow arbitrary trajectory and the forces from the shape are calculated by (51) and (52), which is subjected to a relative reference framework moving with the shape.


## 5.3. Obstacle Avoidance

In this section, the velocity and actuator limitations are taken into account. As shown in Figure8(a), there is a swarm of 15 robots in a line formation (represented as red dots) and the target shape (a triangle formation) is located far away from the line. There are several obstacles between the start line and the target shape. The blue dots denotes the paths of the robots and the black crosses are their final positions. The velocity and accelerate are limited to 4 m/s and 7 m/s2 respectively. Ko is set as 100, βo=0.01, and Rs = 10 m.Obstacle avoidance in the complex terrain, using modifiedFi,o.
(a)
(b)Figure8(a) shows that all the robots that successfully escape avoid these obstacles and form the desired formation within 30s. By using the modified Fi,o defined in (39) together with (41), the robot getting closer to the obstacle boundary is dragged by a force parallel the boundary, so it can pass by the obstacles and avoid local minima during the whole process.Figure8(b) shows the change of Fi,a (the red curve) and Fi,r (the green curve) acting on robot ID = 1 when it gets through the formation contour boundary. We can figure out that with the modified Fi,a defined in (45), the force uniformity between Fi,a and Fi,r at time t = 20.9 s is ensured.


## 5.4. Shape Contour Controller

In this part the validity of the contour controller is demonstrated via the case of passing narrow channels. In order to make the swarm a damping system that can make the formation contour deform smoothly, the value of the parameters should beλc=15,bc=4λc+1=7.8102,ζ=(1/2)4+(1/λc)=1.0083>1, and ts=8/4λc+1=1.0243s.Figure9(a) shows the motion of a swarm of 10 robots moving in a triangle formation. When there is no channel to get through, the controller keeps compression force FC=0 and therefore the shape contour is invariant.Simulation cases for moving target shape.
(a)
(b)
(c)
(d)In Figures9(b) and 9(c), a swarm of 15 robots follows a square and a triangle formation respectively. When the swarm reaches the entrance of the channel, the formation, contour begins to suffer pressure FC whose value is determined by (58), which deforms the contour into a compact one and navigates the whole swarm through the channel. After getting out of the channel, the tensile force FT defined in (57) stretches the contour back to its original state.Figure9(d) shows the change of the compression ratios defined in (62). It is clear that the value of a×b (represented as blue stars) always equal 1, which means that the area of the formation shape is invariant. When the swarm is passing the channel, the behavior of the compression matrix which is described in (62) will follow the dynamic model defined in (60).


## 6. Conclusions

This paper presented a potential field-based approach for formation control of robotic swarms. We defined artificial forces in the form of exponential functions; therefore, the magnitude of the resultant force is constrained within reasonable range. The behavior of the swarm along with single robot was both analyzed. Realistic implementation considerations and adaptation of the control parameters have been investigated to enhance the robustness of the control algorithm. We additionally built a controller acting on the shape contour, making it autodeformable to prevent the member robots from collisions. Simulation results validate the efficiency of the proposed algorithm.In this paper the potential field is generated by several wavefront expansion procedures starting at the contour of the formation shape or edges of obstacles. By following the flow of the negated gradient from the target shape, a trajectory is obtained to navigate each member of the swarm. Using such kind of resultant potential field is the fundamental reason that produces local minima near by the obstacle boundary [41]. To reduce the risk of such an impasse and to enlarge the maneuvering space of the robot, we highlight our future research on finding novel algorithms to generate potential field that is more flexible and less likely to produce local minima. One of the most promising trends is to make use of topological properties of the underlying environments. For instance, we are now working on the construction of sparse but adequate roadmaps such as Generalized Voronoi Diagrams (GVDs) and Equidistance Maps (EM). These spatial representation can be adopted to generate potential fields avoiding most local minima and providing reduced search space for navigation tasks.



---

*Source: 194280-2013-12-19.xml*