- About this Journal ·
- Abstracting and Indexing ·
- Aims and Scope ·
- Article Processing Charges ·
- Articles in Press ·
- Author Guidelines ·
- Bibliographic Information ·
- Contact Information ·
- Editorial Board ·
- Editorial Workflow ·
- Free eTOC Alerts ·
- Publication Ethics ·
- Submit a Manuscript ·
- Subscription Information ·
- Table of Contents

ISRN Robotics

Volume 2013 (2013), Article ID 387465, 13 pages

http://dx.doi.org/10.5402/2013/387465

## Flocking for Multiple Ellipsoidal Agents with Limited Communication Ranges

Department of Mechanical Engineering, Curtin University of Technology, Perth, WA 6845, Australia

Received 24 April 2012; Accepted 20 June 2012

Academic Editors: G.-C. Luh, K. A. Mcisaac, and F. Torres

Copyright © 2013 K. D. Do. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

#### Abstract

This paper contributes a design of distributed controllers for flocking of mobile agents with an ellipsoidal shape and a limited communication range. A separation condition for ellipsoidal agents is first derived. Smooth step functions are then introduced. These functions and the separation condition between the ellipsoidal agents are embedded in novel pairwise potential functions to design flocking control algorithms. The proposed flocking design results in (1) smooth controllers despite of the agents’ limited communication ranges, (2) no collisions between any agents, (3) asymptotic convergence of each agent’s generalized velocity to a desired velocity, and (4) boundedness of the flock size, defined as the sum of all distances between the agents, by a constant.

#### 1. Introduction

Flocking, referred to as a collective motion of a large number of self-propelled entities, has attracted a lot of attention of researchers in biology, physics, and computer science [1–4]. Engineering applications of flocking include search, rescue, coverage, surveillance, sensor networks, and cooperative transportation [5–14].

In 1987, Reynolds [2] introduced three rules of flocking: (1) separation: avoid collision with nearby flock-mates; (2) alignment: attempt to match velocity with nearby flock-mates; (3) cohesion: attempt to stay close to nearby flock-mates. Since then, there has been a number of modifications and extensions of the above three rules and additional rules to result in many algorithms to realize these rules. The graph theory and the Lyapunov direct method were used to solve consensus problems in [15–17]. Local artificial potentials between neighboring agents were used to deal with separation (collision avoidance) and cohesion problems in [12, 13, 18–23]. The leader-follower approach to a target tracking problem was used in [24, 25]. Other related work includes geometric formation optimization [26, 27], pattern formation [28], and task allocation [29]. In all the above cited references, the agents are considered as a single point, a circular disk, or a sphere.

In practice, many agents have a nonspherical, especially long and narrow, shape. If these agents are fitted to spheres, there is a problem of the large conservative volume. To illustrate this problem, we look at an example of fitting a cylindrical agent with a radius of and a length of to an ellipsoid with semiaxes of , , and , and a sphere with a radius of as shown Figure 1. By shrinking the space along the direction of the major axis of the ellipsoid, we can find , , and . Therefore, the conservative volume, , defined as the difference between the volumes enclosed by the sphere and the ellipsoid, is given by . This means that the conservative volume is always nonnegative and is proportional to cubic of the half-length over the radius of an agent.

A spherical approximation of the shape of long and narrow agents can adversely affect performance of a flocking algorithm. An example is the case where it is a must to flock a group of long and narrow agents through a long and narrow passageway. In some cases, a spherical approximation of the agents's shape can result in failure of a flocking algorithm. As an illustration, we consider two cylindrical agents with a length of and , and a radius of and . Assuming that and are much less than and , respectively, that is, the two agents have a long and narrow shape. We now require these two agents to flock in a way that they do not collide with each other and the distance between them is such that with being a feasible positive constant. Clearly, a spherical approximation of the agents' shape is not applicable in this case for a flocking algorithm. On the other hand, an ellipsoidal approximation can be applicable. In addition, an ellipsoidal approximation of the agents' shape for collision avoidance between the agents in a flocking algorithm covers a spherical approximation of the agents' shape by setting the semiaxes of the ellipsoid equal, but not vice versa. The above discussion indicates that it is much more efficient to use an ellipsoidal approximation of the agents with a long and narrow shape for collision avoidance in designing flocking algorithms.

Despite of the above advantages of an ellipsoidal approximation of the agents' shape, flocking for ellipsoidal agents has not been addressed in the literature except for a recent paper [30] on coordination control of multiple ellipsoidal agents. This is partially due to difficulties in determining a separation condition between two ellipsoids. There have been two main methods to determine a separation condition between ellipsoids. The first method in [31, 32] consists of determining the intersection of the ellipsoids with the plane containing the line joining their centers and rotating the plane. The distance of closest approach [33] of the two ellipses formed by the intersection is a periodic function of the plane orientation, of which the maximum value corresponds to the closest distance between the two ellipsoids. The second method [34] is based on the discriminant of their characteristic polynomial. Both methods are too complicated for an application in flock control. If these methods are applied for collision avoidance, the condition, for which the minimum distance between two disks or the discriminant of their characteristic polynomial is positive, is extremely complicated to be embedded in a proper potential function for designing a flocking algorithm. In [35], a design of distributed controllers for flocking of mobile agents with an elliptical shape and with limited communication ranges was addressed. As it will be seen later, the design of a flocking algorithm in two dimensional space (i.e., elliptical agents are considered) is much harder than that in three-dimensional space (i.e., ellipsoidal agents are considered).

The aforementioned observations motivate contributions of this paper on a design of flocking algorithms for mobile agents with an ellipsoidal shape and limited communication ranges. The paper's contributions include (1) a new condition for separation between two ellipsoids, see Section 2.1; (2) smooth step functions; (3) a new pairwise potential function for two ellipsoidal agents, see Section ; (4) a derivation of flocking algorithms based on the pairwise potential functions, see Section 4.4.

#### 2. Preliminaries

##### 2.1. Separation Condition Between Two Ellipsoids

This section presents a condition for separation of two ellipsoids applicable for collision avoidance in the flock control design later. As such, we consider two ellipsoids and shown in Figure 2. In this figure, is the earth-fixed frame, is the body-fixed frame attached to ellipsoid , denotes the position of the center , and denotes the orientation (roll, pitch and yaw angles) of the ellipsoid . Moreover, denote the semiaxes of the ellipsoids . These notations are similar to the ellipsoid .

Lemma 1. *Consider two ellipsoids and , which have semi-axes of and , and orientation vectors and , and are centered at and , respectively, see Figure 2. Define the transformed distance between the ellipsoids and as
**
where
**
with being a identity matrix, and
**
The matrix represents the three-dimensional rotational matrix with respect to the vector . The matrix is given by
**
where
**
with for and being the element of the matrix with
**
The variable is the largest root (the right most root) of the following equation:
**
where denotes the transpose of .**The vector and the matrix are defined accordingly. The two ellipsoids are externally separated, that is, the ellipsoids are outside of each other and do not contact with each other like Figure 2, if
*

*Remark 2. *The transformed distance is symmetric, that is, . Moreover, is a smooth function of , , , and . Alternatively, is a smooth function of , , and .

*Proof. *see Appendix A.

##### 2.2. Smooth Step Function

This section gives a definition of the smooth step function followed by a construction of this function. The smooth step function is to be embedded in a pairwise potential function to avoid discontinuities in the control law due to the agents' communication limitation ranges in solving the collision avoidance problem.

*Definition 3. *A scalar function is said to be a smooth step function if it possesses the following properties:
where , , and are constants such that , and is a positive constant.

Lemma 4. *Let the scalar function be defined as
**
where
**
with and being constants such that , and being a positive constant. Then the function is a smooth step function. *

*Proof (see [30]). *An alternative “symmetric” (i.e., ) smooth step function is available in [14] but it requires a numerical integration. The introduction of the positive constant in the smooth step function in Lemma 4 is to shift the location at which attains its extremum value. An illustration of a smooth step function () is given in Figure 3.

##### 2.3. Barbalat-Like Lemma

The following Barbalat-like lemma is to be used in stability analysis of the closed-loop system.

Lemma 5. *Assume that a nonnegative scalar differentiable function satisfies the following conditions:**
where and are positive constants, then . *

*Proof (see [7]). *Lemma 5 differs from Barbalat's lemma found in [36]. While Barbalat's lemma assumes that is uniformly continuous, Lemma 5 assumes that is bounded by . Lemma 5 is useful in proving convergence of when it is difficult to prove uniform continuity of .

#### 3. Problem Statement

##### 3.1. Agent Dynamics

As mentioned before, this paper mainly focuses on difficulties caused by the ellipsoidal shape of the agents in designing flocking algorithms, we therefore assume that each ellipsoidal agent has the following dynamics: where is the set of all agents in the group, and are the control input vectors of the agent . It is recalled that with being the position coordinates of the center of the agent and with being the orientation angles of the agent , see Figure 2. For agents with higher order dynamics, the backstepping technique [37] can be used because we will design the control input vectors and such that they are smooth.

##### 3.2. Flock Control Objective

In order to design a flocking algorithm for a group of ellipsoidal agents, there is a need to specify a common goal for the group, some communication between the agents, and initial position and orientation of the agents. We therefore impose the following assumption on the flocking rendezvous trajectory, communication, and initial conditions between the agents.

*Assumption 1. *(1) The agents and have spherical communication spaces, which are centered at the points and , and have radii of and . The radii and are sufficiently large in the sense that
where is the greatest lower bound of when the agents and are within their communication ranges, that is,
for all and .

(2) The agents and can exchange their trajectories, and if these agents are in their communication spaces.

(3) At the initial time , all the agents in the group are sufficiently far away from each other in the sense that the following condition holds
where is given in (1) evaluated at and , and we have abused the notation of as for simplicity of presentation.

(4) The flocking rendezvous position and orientation trajectory, and , for the flock to follow has bounded derivatives and , and is available for all the agents.

*Remark 6. *(1) In item (1), the condition (14) holds if there exists a positive constant such that , for all and .

(2) Items (1) and (2) in Assumption 1 specify the way each agent communicates with other agents in the group within its communication range. In other words, the agents in the group are connected if they are inside their communication ranges.

(3) Item (3) in Assumption 1 implies from Lemma 1 that at the initial time there is no collision between any agents in the group.

(4) Items (1), (2), and (3) in Assumption 1 do not guarantee overall connectivity among all the agents in the group in general. Under item (4) in Assumption 1, we do not require overall connectivity among all the agents to design a flocking algorithm.

(5) Item (4) in Assumption 1 means that all the agents are aware of the flocking rendezvous trajectory. This item together with items (1) and (2) in Assumption 1 were also required in [13] to design a nonfragmentation flocking algorithm for *point* agents based on an attractive/repulsive potential field. In [13] Olfati-Saber also showed that under items (1) and (2) if all the agents are not aware of the flocking rendezvous trajectory, the flocking algorithm works only for a very restricted set of initial states and a small number of agents. In [21], a further analysis of the flocking algorithm proposed in [13] was carried out for the case where only several agents in a group are aware of the flocking rendezvous trajectory. It was shown in [21] that the agents, which are not aware of the flocking rendezvous trajectory and stay disconnected from the other agents in the group sufficiently long, would stay disconnected from the agents, which are aware of the flocking rendezvous trajectory, that is, the flocking algorithm leads to fragmentation. This represents a real situation. For example, the chance for a bird that has gone away from its flock a sufficiently long time coming back to the flock is very low. Hence, this paper imposes item (4) in Assumption 1 to design a flocking algorithm for elliptical agents. It is possible to use the analysis technique in [21] to analyze the flocking algorithm to be proposed later in this paper for ellipsoidal agents when only several agents are aware of the flocking rendezvous trajectory. This is because the flocking algorithm to be designed in this paper is also based on an attractive/repulsive potential field. However, since this paper focuses on solving difficulties due to an ellipsoidal shape of the agents for collision avoidance in a flocking algorithm, all the agents are assumed to be aware of the flocking rendezvous trajectory.

*Flock Control Objective*. Under Assumption 1, for each agent design the smooth control input vectors and to achieve a desired flocking including: (1) no collisions between any agents; (2) asymptotic convergence of each agent's generalized velocity to a desired velocity; (3) boundedness of the flock size by a constant when the time tends to infinity.

#### 4. Flock Control Design

##### 4.1. Potential Function

###### 4.1.1. Pairwise Potential Function

This section defines and constructs pairwise potential functions that will be used in a Lyapunov function for the flock control design.

*Definition 7. *Let be a scalar function of the transformed distance given in (1) between the ellipsoidal agents and . The function is said to be a pairwise potential function if it has the following properties:
where , , and is a positive constant. The positive constant is referred to as the desired transformed distance between the agents and , and satisfies the condition
with defined in (15). The constant is the least upper bound of the transformed distance when the agents and are within their communication ranges, that is,

*Remark 8. *Property (1) implies that the function is constant when the agents and are outside of their communication ranges. Property (2) implies that the function is positive definite when the agents and are inside of their communication ranges. By Lemma 1, Property (3) means that the function is equal to infinity when a collision between the agents and occurs. Property (4) allows us to use control design and stability analysis methods found in [36] for continuous systems instead of techniques for switched and discontinuous systems found in [38] to handle the collision avoidance problem under the agents' limited communication ranges. Property (5) makes it effective to use a gradient-based method for the flock control design.

Lemma 9. *Let the scalar function be defined as**
where the positive constants and satisfy the condition
**
and is a positive constant. The positive constant is chosen such that
**
where
**
The function with stood for is a smooth step function defined in Definition 3.**Then the function is a pairwise potential function. *

*Proof (see Appendix B). *A pairwise potential function with , , , , and is plotted in Figure 4.

###### 4.1.2. Potential Function

Having constructed the pairwise potential function for the agents and , the potential function for all the agents in the group is the sum of all the pairwise potential functions, that is, where is given in (20).

##### 4.2. Derivative of Potential Function

To prepare for the flock control design later, we calculating the derivative of by differentiating both sides of (24) to obtain It is noted that is a smooth function of , , , and , see Remark 2. However, there is a difficulty in determining an explicit dependence of on , , , and via the matrix , see (1) and (2), because cannot be solved explicitly. To avoid this difficulty, we treat as a smooth function of , , , and .

We first calculate the first time derivative of . From (7), we have It is noted that is always nonzero, see A.10. Hence, the first time derivative of is where From definition of in (2), we have where and , and we have added and subtracted to the first line of (29) to result in the second line. Now substituting into (29) gives where the matrices , , and are defined by Similarly, we have

Substituting (30) and (32) into (27) results in the following: where

Substituting (33) into (25) gives

*Remark 10. *The transformed distance depends not only on the relative distance vector and the relative orientation vector but also on the individual orientation vectors and of the ellipsoidal agents and . This dependence creates a difficulty in designing flocking control algorithms using a gradient-based approach since it is hard to write the derivative of the potential function as a summation of the product of each individual agent's potential gradient and its state derivative. To overcome this difficulty, we have carefully calculated the derivative of the transformed distance by adding and subtracting the term to the first line of (29). As a result, the expression of has been obtained in a feasible form, see (35), for the flocking control design later.

The expression of in (35) deserves some discussion. If we define , where is the potential function for each agent . We then have , where the term can be regarded as the gradient of with respect to the relative distance, which is rotated by the orientation vector , from the agent to the rendezvous trajectory . The term can be considered as the gradient of with respect to .

##### 4.3. Lyapunov Function

Since the derivative of the potential function is the summation of the term instead of , and the term instead of , it is not possible to use a Lyapunov function candidate as a summation of the potential function and the square of all errors and for the flock control design.

To overcome the aforementioned impossibilities, we will construct a Lyapunov function candidate as a sum of the potential function in (24) and the square of errors and . The vector is considered as the virtual rendezvous orientation vector to be designed such that . As such, the Lyapunov function candidate for the flock control design in the next section is constructed as follows: where and are positive constants. Differentiating both sides of (36) along the solutions of (35) and recalling from (13) that and results in the folowing: where we added and subtracted to the right hand side of the equation (35) before substituting this equation into the derivative of . In (37), we have defined

##### 4.4. Control Law

We first deal with the terms inside the square bracket in the right hand side of (37). As such, to avoid a large control effort when an agent in the group is close to the agent due to Property (3) of the function , see (17), for collision avoidance, we design a control law for and as follows: where and are positive constants. The vector denotes a vector of bounded and differentiable functions of elements of in the sense that with the element of , that is, . The function is a scalar, differentiable and bounded function, and satisfies for all , where are positive constants. Some functions that satisfy the above properties are and .

We now deal with the term in the right hand side of (37). This term seems to be troublesome because is nonzero in general since we are considering a time-varying rendezvous trajectory. To get around this problem, we will design an update law such that holds for all time. Moreover, it is desired to have the virtual rendezvous orientation vector asymptotically approached the desired rendezvous orientation vector . As such, we utilize the smooth step function to design an update law as follows: where is a positive constant, and . The function is a smooth step function with the constants , , and chosen as where is chosen as in (21), and is given in (19). Using properties of the smooth step function, the choice of the constants , , , and in (21) and (43) results in and . These equalities imply that (41) holds as long as , which is to be guaranteed by our control design. Moreover, the choice of the constants and in (43) ensures that the function approaches 1 whenever approaches a value larger than . The inequality and the limit will be guaranteed by our designed control input vectors and in (39). This will be shown in the proof of the main result.

*Remark 11. *(1) The control vectors and in (39) of the agent are smooth and depend on only its own state and the rendezvous trajectory, and the states of other agents in the communication range of the agent due to Property (1) of the pairwise potential function in (17).

(2) The update law in (42) ensures that when the collision avoidance is active, the virtual rendezvous orientation vector is not updated. This implies that the control vectors and give priority to the collision avoidance mission or the rendezvous orientation tracking mission whenever which mission is more important.

Substituting the control vectors and in (39) and the update law in (42) into (37) results in
where
On the other hand, substituting the control vectors and in (39) and the update law in (42) into (13) results in the closed-loop system:
for all . We now present the main result of our paper in the following theorem.

Theorem 12. *Under Assumption 1, the smooth control vectors and in (39) and the update law in (42) for the agent solve the flocking control objective. In particular, the following results hold** (1) There are no collisions between any agents and the closed-loop system (46) is forward complete; ** (2) The relative distance between each agent and the flocking rendezvous trajectory is bounded, that is, for all with a constant depending on the initial conditions; ** (3) The generalized velocity of each agent asymptotically tends to the generalized flocking rendezvous velocity, that is,
**
where is given in (42). ** (4) The flock size is bounded by a positive constant as time tends to infinity, that is,
**
with where is a positive constant. *

*Proof. *See Appendix C.

#### 5. Simulation Results

In this section, we provide a numerical simulation to illustrate the effectiveness of the proposed flocking control design stated in Theorem 12. We use ellipsoidal agents with the geometric parameters as and for all . The initial position and orientation of these agents are chosen as follows: and . All the agents have the same communication range of . The control design parameters are chosen as follows: , , , , , , , , , , . The function is chosen as . The flocking rendezvous trajectory is chosen as with . This choice implies that the flocking rendezvous trajectory is a angled straight line. A calculation shows that the above initial conditions and the above choice of control design parameters satisfy all the conditions (14), (16), (18), (21), (22).

Simulation results are plotted in Figures 5 and 6. In Figure 5, several snapshots of the position and orientation of all agents are plotted. The representative is plotted in the first subfigure of Figure 6. The control inputs and are plotted in the second and third subfigures of Figure 6. It is clearly seen from Figures 5 and 6 that there is no collision between any agents as indicated by for all . Moreover, all the agents manage to track the generalized flocking rendezvous trajectory . The mismatched velocity can be seen from the second and third subfigures of Figure 6.

#### 6. Conclusions

Flocking of mobile agents with an ellipsoidal shape and limited communication ranges was studied. The flock control design is based on a separation condition for ellipsoidal agents, smooth step functions, and novel pairwise potential functions. The proposed flock algorithms achieved desired flocking behaviors including smooth controllers despite of agents' limited communication ranges, no collisions between any agents, asymptotic convergence of each agent's velocity to a desired velocity, and boundedness of the flock size by a constant. The keys to success of our proposed flocking algorithm include the symmetric transformed distance between two ellipsoids, smooth cut-off pairwise potential function , and a careful derivation of the derivative of the potential function . An extension of the proposed flock control design and those controllers designed for single underactuated underwater vehicles in [39] to provide a flock control system for multiple underactuated underwater vehicles is under consideration.

#### Appendix

#### A. Proof of Lemma 1

From Figure 2, the boundaries of the ellipsoids and (equations of the points and ) coordinated in the frame attached to the ellipsoid can be described by where , , , and are defined in (3) and (6) and with and are auxiliary angles and and are vectors denoting position of the points and , respectively. The ideas to prove Lemma 1 consists of two steps: (1) transforming the ellipsoids and to a unit sphere and an ellipsoid; (2) calculating the distance between the transformed sphere and the transformed ellipsoid.

##### A.1. Transformation

We transform the ellipsoids and to a unit sphere and an ellipsoid by the following coordinate transformation: With the above coordinate transformation, the ellipsoids (A.1) are transformed to a unit sphere and an ellipsoid as follows: Now, the ellipsoid has become the unit sphere centered at the point whose coordinates are described by the first equation in (A.3). The ellipsoid has become another ellipsoid centered at the origin of the frame, that is, the point .

For convenience of calculating the distance between the unit sphere and the ellipsoid , we will rewrite the ellipsoid in an implicit form instead of parametric form given in the second equation of (A.3). By squaring both sides of each row of then adding the results together, we have , where is defined in (4). Hence, the unit sphere and the ellipsoid defined in (A.3) can be rewritten as

##### A.2. Distance

We now calculate the distance from the center of the unit sphere described by the first equation in (A.4), that is, from the point to the ellipsoid described by the second equation in (A.4). A necessary condition for a point to be the closest point to the point is that is perpendicular to the tangent plane to the ellipsoid at . Since the surface gradient with is normal to the ellipsoid's surface, the algebraic condition for the closest point is For the point outside the ellipsoid , there is only one point on the ellipsoid whose normal points toward the point . However, there can be as many as five other points whose surface normals point directly away from . The point on the ellipsoid whose normal points toward the point corresponds to the largest root of (A.5). Moreover, must satisfy the ellipsoid equation, that is, the second equation of (A.4).

From (A.5), we have which is substituted into the second equation in (A.4) results in (7).

Now the distance from the point to the closest point on the ellipsoid described by the second equation in (A.4) is given by where is the solution of (A.5) and the second equation of (A.4) with being the largest root. Substituting in (A.6) and in (2) into (A.7) results in the following: where is given in (2).

It is noted that after is found, we can determine the intersection point with coordinates on the unit sphere between the line from the point to the point with coordinates and the unit sphere . Once we obtain the coordinates and with respect to the closest distance between the unit sphere and the transformed ellipsoid , the corresponding coordinates and with respect to the shortest distance between the original ellipsoids and on the original ellipsoids and can be directly determined from (A.2). The actual distance between the original ellipsoids and is . For a flocking control application, the transformed distance is sufficient because from the transformation (A.2) we can see that implies that and vice versa.

Similarly, we transform the two ellipsoids and to a unit sphere and an ellipsoid . The distance from the center of the unit sphere , whose coordinates are , to the closest point on the ellipsoid (which is transformed from the ellipsoid ) is Therefore, two ellipsoids and are separated if either or . Moreover, implies and vice versa. Hence it is sufficient that the two ellipsoids are separated if the condition (8) holds. The reason why we use the distance in (1) instead of or is to create a symmetrical , see Remark 2. This is crucial for the success of our flocking design.

##### A.3. Solution of (7)

We first show that (7) has a unique root on the domain of interest. Let us define be the largest root of the equation . This is a cubic equation and can be solved for its roots explicitly. We now observe that for any such that , the following inequalities and limits hold because the matrix is symmetric and positive definite with its elements given in (5). Properties of in (A.10) imply that the function is strictly decreasing from to on the domain . Therefore, (7) has a unique root on the domain of interest. Moreover, this root is also the largest root of (7).

Given an initial value , where is a positive constant such that , a numerical procedure using the Newton method to calculate the largest root is given as follows [40]: where and with given in (7). The algorithm (A.11) provides a quadratic convergence of to the largest root of (7), since is nonzero and is bounded in the domain of interest, see Theorem 1.1 in [40] for a proof. Indeed, after the largest root is found, is obtained from (A.6). Proof of Lemma 1 is completed.

#### B. Proof of Lemma 9

We first show that there exists a positive constant such that the condition (22) holds. To do so, we partition the interval into two intervals and with being such that It is trivial to show that there exists such that (B.1) holds.

For all , we rewrite (23) as Since and for all , we choose the constant such that The above choice of makes the condition (22) hold for all .

For all , we rewrite (23) as

Since and for all , we can choose the constant such that

The above choice of makes condition (22) hold for all . Since and satisfy condition (21), and , we have is bounded by some constant for all . This implies that the value of satisfying (B.5) is finite.

Therefore, the positive constant that satisfies both conditions (B.3) and (B.5) makes condition (22) holds for all .

To prove Lemma 9, we show that the pairwise function defined in (20) satisfies all properties listed in (17). Proof of Properties (1)–(4) is trivial using properties of the smooth function listed in (9). We focus on proving Property (5).

Since the function is smooth, Property (5) holds if The above conditions mean that the smooth function is decreasing for all , is increasing for all , and is constant for all .

For all , we have from (23) that where we have used and for all because and satisfy condition (21). Therefore . For , clearly since , see (21). For all , we have already proved that . For all , we have because and satisfy condition (21). Hence, from (20) we have , which implies that for all . Proof of Lemma 9 is completed.

#### C. Proof of Theorem 12

##### C.1. Proof of No Collisions and Complete Forwardness of the Closed Loop System

It is seen from (44) that . Integrating from to and using the definition of in (36) with in (24) and in (20) result in , where , and is with replaced by , for all . From the condition specified in item (4) of Assumption 1, and Property (3) of , we have is bounded by a positive constant depending on the initial conditions. Boundedness of implies that must be also bounded. As a result, must be smaller than some positive constant depending on the initial conditions for all . From properties of , see (17), , for all and , must be larger than 0 for all . This in turn implies from Lemma 1 that there are no collisions between any agents for all . Boundedness of also implies that of and for all . Since we have already proved that , the update law in (42) implies that is also bounded. Therefore, the closed-loop system (46) is forward complete. Moreover, from we have where denotes the maximum eigenvalue of . Hence we have proved the first two results listed in Theorem 12.

##### C.2. Mismatched Velocity Analysis

We first use Lemma 5 to find the equilibrium set, which the trajectories of the closed loop system (46) converge to. Integrating both sides of (44) yields , where is given in (45). Indeed, the function is scalar, nonnegative, and differentiable. Now differentiating along the solutions of the closed loop system (46) and using the properties of the function given in (17) and the function in (40) readily show that with being a positive constant. Therefore, Lemma 5 results in , which implies that . Hence, from the expression of in (45) we have . Hence the position and orientation trajectory of the agent `almost globally' converges to an (moving with ) equilibrium set, , asymptotically. In the equilibrium set , we have and for all . The term “almost globally” refers to the fact that the agents start from a set, in which the condition (16) holds. Now substituting the limit into the time limit both sides of the closed-loop system (46) to gives (47). Moreover, it is seen from the update law (42) that when the transformed distance is larger than (noting that , see (43) and (21)), we have and .

##### C.3. Flock Size

Let , for all , be the equilibrium state of the agent , that is, where is the equilibrium set as defined above. In the set , we have and for all . Hence, from the expression of and in (38), we have where , , and are , , and with replaced by for all . From (C.1), we have where for all .

We make the following observations. All the terms and are vector functions of , and bounded functions ( and ) of elements of , , and only for all , see (28) and (34) for the expression of and with a note that are replaced by for all . Moreover, from (42), we can see that tends to a value depending on and only.

The above observations imply from (C.2) that and must be bounded and depend on bounded functions ( and ) of elements of only with . On the other hand, the flock size is a function which depends on , and bounded functions ( and ) of elements of , , and only for all . Therefore in the equilibrium set , the flock size, being with replaced by , is a function that depends bounded functions ( and ) of elements of only with . Moreover, the flock size is bounded whenever its arguments and bounded functions ( and ) of elements of , , and are bounded.

Hence, in the equilibrium set