Skip to content

Formation Control of Mobile Agents With Motion Constraints [1] ​

1 Problem Setup ​

For a given motion coordination task, let e(p) be the coordination error vector of appropriate dimensions so that e(p)=0 when the coordination task is achieved. Let V(e) be a continuously differentiable Lyapunov function satisfying V(e)⩾0 for all e and V(e)=0⇔e=0. The corresponding gradient control law is

(1.1)p˙i=−∇piV:=fi(e,p),i∈V.

Note that V˙(e)=∑i∈V−fi⊤fi⩽0 under the action of the gradient control law. The gradient control is distributed if fi(e,p) merely depends on the positions of agent i and its neighbors. The error dynamics of (1.1) is

(1.2)e˙=∂e∂pf(e,p)

where f=[f1⊤,…,fn⊤]⊤∈Rdn. Let Ω(r)={e:V(e)⩽r} where r⩾0 be the level set. The gradient control (1.1) is convergent if there exists r0>0 such that the trajectory of (1.2) converges to e=0 for any initial error e0∈Ω(r0). In this case, Ω(r0) is called the attraction region.

The design of the gradient control law in (1.1) does not consider any motion constraints. When applied in practice, real agents may not be able to follow the gradient flow fi exactly due to certain motion constraints such as nonholonomic dynamics and velocity saturation. As a result, the convergence of the entire coordination system may not be guaranteed.

Here we consider general coordination control tasks that satisfy the following mild assumption. Let ∥⋅∥ denote the Euclidian norm of a vector or the spectral norm of a matrix.

Assumption 1

For a given coordination task, functions V(e) and e(p) satisfy the following conditions.

  1. Ω(r) is compact for any r⩾0.
  2. There exists r0>0 such that e=0⇔f=0 in Ω(r0).
  3. ∥∂e(p)/∂p∥ and ∥f(e,p)∥ are bounded for bounded ∥e∥.
  4. f(e,p) is continuous in e and uniformly continuous[1] in p.

Assumption 3 implies that e=0 is asymptotically stable and Ω(r0) is the attraction region according to the invariance principle. The attraction region may be the entire space or a sufficiently small neighborhood of e=0. If the attraction region is the entire space, then the coordination system is globally stable; otherwise, the system is locally stable.

Assumption 3 is satisfied by a wide range of coordination control laws such as the distance-based formation control law and bearing-based formation control as shown below. In these examples, the underlying graphs are assumed to be bidirectional and connected. If the graph is not bidirectional, the control laws may still work, but they may not be gradient control laws. For the sake of simplicity, suppose the weight for each edge to be 1 and let m=|E|/2 denote the number of undirected edges.

Example 1: Distance-Based Formation Control ​

The objective of distance-based formation control is to steer a group of agents from some initial positions to a desired geometric pattern defined by constant interneighbor distances {dij}(i,j)∈E. Consider the Lyapunov function

V=18∑i∈V∑j∈Ni(‖pi−pj‖2−dij2)2.

Then, V=0 if and only if the interneighbor distances satisfy the constraints. The gradient control law

(1.3)pi˙=fi=∑j∈Ni(‖pi−pj‖2−dij2)(pj−pi)

is the distance-based formation control law. We next show that all the conditions in Assumption 3 are satisfied. Consider any oriented graph and define the error state as ek=‖qk‖2−dk2 where qk=pi−pj and dk=dij with k=1,…,m. Let e=[e1,…,em]⊤∈Rm and q=[q1⊤,…,qm⊤]⊤∈Rdm. We have q=(H⊗I)p where H∈Rm×n is the incidence matrix of the oriented graph, ⊗ denotes the Kronecker product, and I is the identity matrix with appropriate dimensions. Then, V(e)=14∑k=1m‖ek‖2, ∂e/∂p=2diag(q1⊤,…,qm⊤)(H⊗I) is bounded when e is bounded, f is uniformly continuous in both e and p, and ‖fi‖ is bounded when ∥e∥ is bounded. Let R∈Rm×dn be the rigidity matrix of the network. Then, R=diag(q1⊤,…,qm⊤)(H⊗I) and p˙=f=−R⊤e. A sufficient (but not necessary) condition for R to have full row rank is that the network is minimally infinitesimally rigid. Under this condition, f=0⇔e=0 holds in a sufficiently small neighborhood of e=0 TODO [20], [21].

2 Nonholonomic Constraints ​

In this section, we modify the gradient control law in (1.1) to handle the nonholonomic constraint such that the velocity direction of each agent must align with its heading vector.

A. Modified Gradient Control Law ​

Let hi(t)∈Rd be the unit-length heading vector of agent i. The proposed modified gradient control law is

p˙i=hihi⊤fi(2.1)h˙i=wi×hi,i∈V

where × denotes the cross product and wi∈R3 is the angular velocity to be designed. In this control law, since hihi⊤ is an orthogonal projection matrix, the velocity p˙i is the orthogonal projection of fi onto hi. As a result, the velocity is aligned with the heading vector hi and the nonholonomic constraint is satisfied. The magnitude of hi is invariant since wi×hi is always orthogonal to hi.

Our objective is to design wi so that the entire multiagent system remains convergent in the sense that V→0. To this end, design

(2.2)wi=hi×fi

The geometric interpretation of (2.2) is that wi attempts to rotate hi to align with fi (see Figure 2.1 for an illustration). Denote [⋅]×as the skew-symmetric matrix of a vector. For any x=[x1,x2,x3]⊤∈R3

[x]×:=[0−x3x2x30−x1−x2x10]

Then, we have x×y=[x]×y for any x,y∈R3. Substituting (2.2) into (2.1) gives

h˙i=−[hi]×wi=−[hi]×2fi=(I−hihi⊤)fi

where the last equability follows from the fact that −[x]×2=I−xx⊤ for any unit vector x∈R3. Then, the modified gradient control law (2.1) becomes

(2.3)p˙i=hihi⊤fih˙i=(I−hihi⊤)fi,i∈V

Note that I−hihi⊤ is an orthogonal projection matrix that projects any vector onto the orthogonal complement of hi. Although derived in R3, control law (2.3) is also valid in R2 because the case of R2 can be viewed as a special case of R3 by treating the plane spanned by hi and fi as the X−Y plane in R3.

Law
Figure 2.1: Illustration of the modified gradient control law in (2.3)[1].

The convergence of (2.3) is analyzed as follows.

Theorem 1 (Modified Gradient Control Law)

Under Assumption 1, the modified gradient coordination control law (2.3) is convergent with the same attraction region as (1.1).

Proof:

Details of Proof

The error dynamics corresponding to (2.3) is e˙=(∂e/∂p)Mf where M=diag(h1h1⊤,…,hnhn⊤)∈R(dn)×(dn). The time derivative of V is

V˙=−∑i∈Vfi⊤p˙i=−∑i∈Vfi⊤hihi⊤fi≤0.

It follows that Ω(V(e0))⊆Ω(r0) is positively invariant for any e0∈Ω(r0). Let M={e:V˙(e)=0}. Then, the system trajectory starting from any point in Ω(V(e0)) converges to the largest invariant set in M∩Ω(V(e0)) by the invariance principle. For any point in M, we have hi⊤fi=0 for all i, which indicates either fi=0 for all i or hi⊥fi but fi≠0 for certain i. In the first case, it follows that e=0 by condition 2) in Assumption 1. As a result, the error converges to zero and the theorem is proved. The second case is impossible. To see that assume hi⊥fi but fi≠0. Then, p˙i=hihi⊤fi=0 for all i, which indicates that all the agents are stationary. As a result, fi is time invariant for all i. However, it follows from hi⊥fi that h˙i=(I−hihi⊤)fi=fi≠0. As a result, hi is rotating. It is impossible to maintain hi⊥fi if fi is time invariant while hi is rotating. Hence, the system trajectory will escape from M.

Theorem 1 indicates that if Ω(r0) is the attraction region of the gradient system (1.1), then it remains an attraction region for the modified gradient system (2.3). As a result, if the original gradient control is globally (respectively, locally) stable, then the modified one is also globally (respectively, locally) stable. The initial values of the heading vectors {hi(0)}i∈V do not affect the convergence. The final values {hi(∞)}i∈V are not specified.

B. Application to Unicycle Models ​

Considering that unicycle models have been widely considered in multiagent coordination control, we apply (2.3) to derive the specific control law for unicycle agents moving in the plane. It is, however, worth noting that (2.3) is applicable to agents moving in both two and three dimensions.

Let pi=[xi,yi]⊤∈R2 and θi∈R be the position coordinate and heading angle of agent i, respectively. The motion of agent i is governed by the unicycle model

(2.4)x˙i=vicos⁡θiy˙i=visin⁡θiθ˙i=wi

where vi∈R and wi∈R are the linear and angular velocities. We propose the following control law for the unicycle model

(2.5)vi=[cos⁡θi,sin⁡θi]fiwi=[−sin⁡θi,cos⁡θi]fi

The convergence of the control law is proved below.

Theorem 2 (Control Law for Unicycle Agents)

Under Assumption 1, control law (2.5) designed for the unicycle model in (2.4) is convergent with the same attraction region as (1.1).

Proof:

Details of Proof

Let hi=[cos⁡θi,sin⁡θi]⊤ and hi⊥=[−sin⁡θi,cos⁡θi]⊤. Note that hi⊥hi⊥. Substituting control law (2.5) into the unicycle model yields p˙i=hihi⊤fi and h˙i=hi⊥(hi⊥)⊤fi. Since hi⊥(hi⊥)⊤=I−hihi⊤, the closed-loop system has the same expression as (2.3). The convergence property then follows from Theorem 1.

The geometric interpretation of the control law in (2.5) is illustrated in Figure 2.2. The initial values of the heading angles {θi(0)}i∈V do not affect the convergence. The final values {θi(∞)}i∈V are not specified. We next apply (2.5) to derive a displacement-based formation control law for unicycles.

Law
Figure 2.2: Geometric interpretation of the control law in (2.5). Note that p _i is the orthogonal projection of f_i onto h_i and \dot{h}_i is the orthogonal projection of f_i onto h_i^⊥. The angular velocity aims to turn h_i to align with f_i[1].

Example 2 (Displacement-Based Formation Control of Unicycles) ​

Consider the displacement-based formation control law p˙i=fi=∑j∈Ni(pj−pi−pj∗+pi∗). Substituting fi into (2.5) yields

(2.6)vi=[cos⁡θi,sin⁡θi]∑j∈Ni(pj−pi−pj∗+pi∗)wi=[−sin⁡θi,cos⁡θi]∑j∈Ni(pj−pi−pj∗+pi∗)

Another well-known formation control law for unicycles proposed in [1, eq. (1.1)] is

(2.7)vi=[cos⁡θi,sin⁡θi]∑j∈Ni(pj−pi−pj∗+pi∗)wi=cos⁡t

The two control laws in (2.6) and (2.7) have the same linear velocity. They, however, have different angular velocities. The angular velocity in (2.7) wi=cos⁡t will cause periodical rotation of the unicycle. When compared, the control law in (2.6) is more reasonable in the sense that it avoids unnecessary periodical rotations by turning the heading vector to align with the gradient flow.

Example 3: Displacement-Based Formation Control ​

The objective of displacement-based formation control is to steer the agents from some initial positions to converge to a desired geometric pattern defined by constant relative positions {pi∗−pj∗}(i,j)∈E. This formation control problem degenerates to the rendezvous problem when pi∗=pj∗ for all i,j∈V. Consider the Lyapunov function

V=14∑i∈V∑j∈Ni‖(pi−pj)−(pi∗−pj∗)‖2.

The target formation is achieved if and only if V=0 since the graph is bidirectional and connected. The gradient control law

pi˙=fi=∑j∈Ni[(pj−pi)−(pj∗−pi∗)]

is the displacement-based formation control law. Consider any oriented graph and define the error state as ek=pi−pj−(pi∗−pj∗) with k=1,…,m and e=(H⊗I)(p−p∗). Then, V(e)=1/2∑i=1m‖ek‖2,∂e/∂p=H⊗I is constant, f is continuous in e, and ∥f∥ is bounded when ∥e∥ is bounded. Since V=1/2(p−p∗)⊤(L⊗I)(p−p∗) and p˙=f=−(L⊗I)(p−p∗), we have f=0⇔V=0⇔e=0 and the attraction region Ω(r0) is the entire space Rdm. Therefore, all the conditions in Assumption 1 are satisfied.

Example 4: Bearing-Based Formation Control ​

The objective of bearing-based formation control is to steer the agents from some initial positions to converge to a desired geometric pattern defined by constant interneighbor bearings {gij∗}(i,j)∈E. Consider the Lyapunov function

V=14∑i∈V∑j∈Ni‖pgij∗(pi−pj)‖2

where pgij∗=I−gij∗(gij∗)⊤. The gradient control law

pi˙=fi=∑j∈Nipgij∗(pj−pi)

is the bearing-based formation control law. For any oriented graph, define the error state as ek=pgij∗(pi−pj) with k=1,…,m. Then, V(e)=1/2∑k=1m‖ek‖2,∂e/∂p=diag(pg1∗,…,pgm∗)(H⊗I) is constant, f is uniformly continuous in e, and ∥f∥ is bounded when ∥e∥ is bounded. Let LB∈Rdn×dn be the bearing Laplacian. Then, V=1/2p⊤LBp and p˙=f=−LBp. As a result, f=0⇔V=0⇔e=0 and the attraction region Ω(r0) is the entire space Rdm. Therefore, all the conditions in Assumption 1 are satisfied.

References ​

  1. Shiyu Zhao, D. V. Dimarogonas, Zhiyong Sun, and D. Bauso, A General Approach to Coordination Control of Mobile Agents With Motion Constraints, IEEE Transactions on Automatic Control, vol. 63, no. 5, pp. 1509–1516, May 2018: Section II & III, Appendix.

  1. A function f(x) is uniformly continuous in x if for any ε>0 there exists δ> 0 such that ‖f(x1)−f(x2)‖<ε for every pair of x1 and x2 satisfying ∥x1−x2∥<δ. A sufficient (yet not necessary) condition for uniform continuity is that if a function is differentiable and its derivative is bounded, then the function is uniformly continuous. This sufficient condition will be frequently used in the proof of Theorem 3. ↩︎

Released under the MIT License.