Download as pdf or txt
Download as pdf or txt
You are on page 1of 6

Proceedings of the 2006 American Control Conference WeB19.

5
Minneapolis, Minnesota, USA, June 14-16, 2006

Formation Control for a Cooperative Multi-Agent System using


Decentralized Navigation Functions
Maria Carmela De Gennaro and Ali Jadbabaie

Abstract— We propose a decentralized cooperative controller The strategy implemented in this paper is based on the
for a group of mobile agents. The control design is based on the use of navigation functions. These functions were initially
navigation function formalism. The aim of the group control law designed [15] in order to steer a single point-mass robot from
is to generate a pattern or formation in a given workspace while
avoiding obstacles and collisions. The desired goal is specified in almost all initial positions toward the desired final position
terms of distances among the agents. We show that it is always in a bounded workspace, while avoiding obstacles. The
possible to design a control law as the gradient of a suitably- navigation function itself is composed of two subfunctions,
defined navigation function whose minimum corresponds to the one that attracts the robot to the goal, the other that repels
desired configuration. Furthermore in certain cases, such as the robot from obstacles. Moreover, it has some parameters
when the topology of the interconnection is an acyclic graph,
this minimum is unique. Some simulations are shown to test that can be tuned.
the strategy. Early implementations of navigation functions to control
groups of robots were centralized. Each robot maintained its
I. INTRODUCTION own copy of the global navigation function. In this frame-
work each robot required full knowledge of the environment
Cooperative control and multi-agent robotics is an active
and of the state of the global system.
research area both in control theory and robotics. Problems
In the recent literature there have been attempts to ap-
such as flocking, consensus, coverage and pattern formation
ply the same idea to “navigate” one or more robots in a
are some of the important problems that have been studied
workspace, by using a decentralized approach. Each work
over the past few years. The goal of these problems is to
makes a step toward the final complete decentralization of
develop distributed protocols and control laws that allow the
the problem.
reaching of complicated global goals [1]–[10].
In [16] the proposed navigation function is decentralized
In this paper, we study the problem of pattern formation
in the sense that it is different for each agent: it contains only
among a group of planar agents. The formation is defined
the information about the distances between this agent and
as a configuration in a bounded workspace, where each
all the other agents and obstacles. The goal of each agent
agent is at a desired distance between its neighbors ( i.e.
in the group is to reach a specific point in the workspace,
the agents immediately nearest to it). The desired goal is
and the information about the other agents and obstacles is
specified in terms of relative distances, so the formation can
used only for avoiding them; there is not a cooperative task
be achieved in any part of the workspace, and it can have any
to achieve. In [17] a limited sensing region is considered for
orientation. The connection among the agents is dependent
each agent, but still without defining any common goal.
on their mutual distances, so it evolves over time, affecting
In [18]- [19] a limited sensing region is defined for the
the eventual solution of the problem. In the workspace there
obstacle avoidance, and also a common task is defined for
are also obstacles that have to be avoided by the agents.
the agents. In fact each agent has to reach a desired formation
Formation control for a group of agents is a challenging with the others, and the formation is specified in terms of
problem that has been studied in the last few years. The relative positions and orientations. The connection among the
definition of formation is specified in many different ways, agents is considered fixed and independent of the distances
as for example the rigid formation [11], or a desired figure in among them.
the plane [12]. Also the problem of collision among agents In this paper the last step toward the decentralization is
and with some obstacles has been studied; several solutions presented. For each agent we propose a navigation function
have been provided in a cooperative framework. In [13] the based on the distances with all the other agents and obstacles.
collision problem is solved for a group of agents moving Two regions are defined around each agent: the connection
in the plane, with the use of gyroscopic forces; in [14] an region and the collision region, closer to the agent. In the
optimization problem is solved for a group of UAVs that connection region, the goal function drives the agent in
search for targets in a common area while avoiding other order to reach the desired distances with the other connected
hazardous areas. agents. In the collision region, the collision function avoids
Maria Carmela De Gennaro is a PhD Student at the Università del the collision between the controlled agent and the other
Sannio, Dipartimento di Ingegneria, piazza Roma 21, Benevento, Italy. agents and obstacles.
Email:degennaro@unisannio.it We describe the structure of the navigation function,
Ali Jadbabaie is with the Department of Electrical and Systems Engi-
neering, University of Pennsylvania, Philadelphia, PA 19104, USA. Email: compute the equilibria that can be reached, and analyze the
jadbabai@seas.upenn.edu stability properties of these equilibria. We show how the con-

1-4244-0210-7/06/$20.00 ©2006 IEEE 1346


nections among agents influence the equilibria determined by
the navigation function.
Our analysis assumes that the group remains connected
all time. This is not necessarily guaranteed by the naviga-
tion function, but it is important to reach the desired final
configuration in the workspace.
The paper is organized in as follows. In Section II we
describe the workspace, agents and obstacles. Also, for each
agent we define the connectivity and collision regions. In
Section III we describe the expression on the decentralized
navigation function. In Section IV we analyze the equilibria Fig. 1. Neighborhood and collision region for the i-th agent.
of the navigation function. Finally, in Section V we show
some simulations to test the effectiveness of the proposed
function. 1 to the (i, j) element of B if edge j is incoming to vertex
i, −1 if edge j is outgoing from vertex i, and 0 otherwise
II. P ROBLEM F ORMULATION
[21].
The multi-agent system considered is a group of N mobile
agents in R2 , each with a first order dynamics: III. D ECENTRALIZED NAVIGATION F UNCTION
q˙i = ui , i = 1, ..., N (1) The goal for the multi-agent system is to reach a desired
formation in the workspace, specified in terms of desired
where qi and ui are respectively the state and the control mutual distances among the connected agents. To solve this
input of the agent i. The workspace F is assumed circular problem, a local navigation function is defined for each
and bounded, with radius Rw , and the agents are assumed agent i [15]:
to be point masses. In the workspace there are M obstacles,
γi (q)
modeled as fixed points p1 ,...,pM . The assumption that both ϕi (q) = (4)
agents and obstacles are points is not restrictive, because it (γi (q)k + βi (q))1/k
was shown in [20] that a large class of shapes can be mapped where:
to single points by suitable coordinate transformations. • γi (q) : F → R+ , the goal function, has only one
Each agent has a limited communication capability- that is, minimum, reached when the i-th agent is at the desired
it can only communicate with agents within its neighborhood distances with its neighbors;
region. The neighborhood region of agent i is a circle • βi (q) : F → [0, 1] is the obstacle function, and vanishes
of radius Ri (communication radius) around agent i, such when the i-th agent collides with an obstacle or with
that all the other agents inside this region are considered another agent;
“neighbors”. The set of the i-th agent’s neighbors is given • k is a positive tuning parameter.
by :
The navigation function is used to control each agent in order
Ni  {j = i : rij  = qi − qj  ≤ Ri }. (2)
to reach the desired final destination and avoid the obstacles.
Moreover, for each agent we define a collision region, i.e. In fact the control action of the i-th agent is:
a circle of radius δi < Ri around the agent, such that any
ui = −α∇qi ϕi (q), (5)
agent or obstacle inside that radius is considered an obstacle.
The set of obstacles of agent i is defined as: where α is a positive scaling factor. Now we describe the
 expression of the goal and collision function.
Ci  {j = i : rij  ≤ δi } {k = 1, .., M : qi − pk  ≤ δi }.
(3) A. γi (q): The Goal Function
In the following we assume that all the agents have
the same communication radius, Ri = R, and the same The goal function γi is defined as the sum of pairwise
collision radius δi = δ, for all i. Fig. 1 shows the i-th agent goal functions γij , for all the agents j different from i:
neighborhood and collision regions. 
N
This multi-agent system can be represented by an undi- γi (q) = γij (qi , qj ). (6)
rected graph G = (V, E) where V is the set of nodes j=1,j=i
(agents) and E is the set of edges (connections (i, j)). We
γij (qi , qj ) is dependent on the norm of the distance rij 
call graph G the connectivity graph of the system. Since
and on the desired final distance cij :
the connections depend on the distances between agents, the ⎧ zij 2
graph G varies over time. The connection between agents ⎪
⎪ ( ) rij  ≤ cij ;
can be also represented by an incidence matrix B, whose ⎨ cij az2
γij =
ij
3 +cz 2 +dz +e cij < rij  ≤ R;
rows and columns are indexed by the vertices and edges of ⎪

bzij ij ij

G respectively. Given an arbitrary orientation for the graph, ⎩ a(R−cij )2


rij  > R,
b(R−cij )3 +c(R−cij )2 +d(R−cij )+e
the incidence matrix B is constructed by assigning the value (7)

1347
where cij > δ, and zij = rij −cij . The function γij (qi , qj ) (ril  = 0), and its maximum equals to 1 at ril  = δ, as
reaches its unique minimum when rij  = cij ; otherwise it shown in Fig. 4. The coefficients of the polynomials depend
is positive and maximum (equal to 1) when the agents are on δ, and they are chosen in order to make βil a C 2 function
not connected (rij  > R) or when they collide (rij  = 0), on F.
as shown in Fig. 2. The constants a, b, c, d, e are chosen
to ensure the continuity of γij and its first and second
derivatives in the points cij and R. The function γij is twice
differentiable ∈ C 2 function on F, as shown in Fig. 3.

Fig. 4. Shape of the collision function βil (ril ), with δ = 5.

The function βiw (qi ) is the obstacle function between the


workspace boundary and i, and it is defined in a similar way:
Fig. 2.Shape of the goal function γij (rij ), with cij = 20 and
R = 50. ⎧

⎪ 1 qi  ≥ Rw − δ;


⎨ pI (qi ) Rw − δ < qi  ≤ Rw − 3δ/4;
βiw (qi ) = pII (qi ) Rw − 3δ/4 < qi  ≤ Rw − δ/4;



⎪ pIII (qi ) Rw − δ/4 < qi  ≤ Rw ;

0 qi  > Rw .
(10)
Function βiw reaches its unique minimum at the collision
with the workspace (qi  = Rw ), and the maximum equal
to 1 at qi  ≤ Rw − δ, as shown in Fig. 5. The coefficients
of the polynomials depend on δ and Rw , and they are chosen
in order to make βiw a C 2 function on F.

Fig. 3. First (up) and Second (down) derivative of the goal function
γij respect to rij .
Fig. 5. Shape of the collision function βiw (qi ), with Rw = 50
and δ = 5.

B. βi (q): The Obstacle Function


The function ϕi : F → [0, 1], is a C 2 function on F, and it
The obstacle function βi (q) is the product of pairwise
is admissible on F, i.e. it is uniformly maximum on obstacles
obstacle functions:
 and workspace boundary. In order to see if it is a navigation
βi (q) = βil (qi , ql )βiw (qi ). (8) function [15], we have to prove that:
l∈Ci • it is polar at the desired formation, i.e. it is minimum

where βil is the obstacle function between agent i and agent only if the agent i is at the desired distance among its
or obstacle l, and βiw is the obstacle function between agent neighbors;
i and the boundary. The function βil is given by: • and it is a Morse function in F, i.e. its critical points
are non-degenerate.
⎧ We analyze these two properties in the following session.

⎪ p1 (ril ) ril  < δ/4;

p2 (ril ) δ/4 ≤ ril  < 3δ/4; IV. C RITICAL POINTS OF THE NAVIGATION FUNCTION
βil (qi , ql ) = (9)

⎪ p3 (ril ) 3δ/4 ≤ ril  < δ;
⎩ In this paragraph we analyze the critical points of the nav-
1 ril  ≥ δ,
igation function previously defined. The navigation function
where p1 , p2 and p3 are third order polynomials in ril . The is used to control each agent to reach desired distances with
function βil (qi , ql ) reaches its unique minimum at collision its neighbors, but it does not guarantee the maintenance of

1348
the connection among the controlled agent and its neighbors. For agent i, the equilibrium condition is:
For this reason, we assume that a minimum connection 
level will be always present in the global system, without ∇qi γi = 0 ⇔ ∇qi γij = 0. (17)
specifying how it is maintained. Under this assumption, we j∈Ni

want to see how the navigation function drives each agent Now, given the equivalence ∇qi γij = −∇qj γij = ∇rij γij ,
toward its goal. we can rewrite (17) as:
The critical points of the navigation function (4), are
studied by analyzing the gradient of the function ϕi :  
N
∇qi γij = 0 ⇔ bij ∇rij γij = 0, (18)
1
∇qi ϕi = [kβi ∇qi γi − γi ∇qi βi ], (11) j∈Ni j=1
k(γik + βi )1/k
where bij is the entry (i, j) of the matrix B. By writing the
where the gradients of the functions γi and βi are:
equilibrium expression for all the agents, we obtain:

N ⎡ ⎤
∇qi γi = ∇qi γij ; (12) ∇r12 γ12
⎢ ... ⎥
j=1 ⎢ ⎥
⎢ ∇r1N γ1N ⎥
 βi ⎢ ⎥
∇qi βi = ∇qi βil ⎢ ∇r23 γ23 ⎥
βil
. (13) B∇  B ⎢ ⎢
⎥ = 0.
⎥ (19)
l∈Ci w ⎢ ... ⎥
⎢ ∇r2N γ2N ⎥
The critical points of ϕi are obtained when: ⎢ ⎥
⎣ ... ⎦
∇qi ϕi = 0 ⇔ kβi ∇qi γi = γi ∇qi βi . (14) ∇rN −1,N γN −1,N

This condition is true in two different cases that we analyze The undesired equilibrium is a solution of the algebraic
below. system (19) where the unknowns are the gradients ∇rij γij
Case1) : ∇qi γi = 0 and ∇qi βi = 0 for all the connected pairs of agents (i, j). The number of
From ∇qi βi = 0 we know that the i-th agent is far from solutions of the system depends on the rank of B.
the workspace boundary and the obstacles. If ∇qi γij = 0 Now we can show the following Proposition.
for all connected pairs of (i, j), the i-th agent is at the Proposition 2 If the connectivity graph G is a tree, then
desired distances among the neighbors. This is the desired at the equilibrium the distances between the connected pairs
equilibrium, and we can prove that this equilibrium is a of agents are the desired values.
minimum, by evaluating the Hessian of ϕi , as shown in the Proof. If the connectivity graph is a tree, the number of
following proposition. unknown gradients ∇rij γij is N − 1, and B ∈ RN (N −1) . It
Proposition 1 The navigation function has a non- was shown in [24] that the null space of B coincides with
degenerate minimum at the desired formation. the vector space spanned by the cycle vectors of the graph.
Proof. The Hessian of ϕi is: In the case of a tree, there are no cycles in the graph; hence,
1 we can say that the null space of B is empty. B is full rank,
∇2qi ϕi = {(γik + βi )[k∇qi βi (∇qi γi )T and the solution of the system (19) is ∇rij γij = 0. This
k(γik + βi )1/k+2
means that in the end if agents are connected and form a
−∇qi γi (∇qi βi )T + kβi ∇2qi γi − γi ∇2qi βi ] tree, then they are at their desired distances.


1 The above proposition suggests that one possible approach
− + 1 [kβi ∇qi γi − γi ∇qi βi ][kγik−1 ∇qi γi + ∇qi βi ]T }
k to avoid the undesired equilibria is to control the system to
always maintain a tree connection. A more general approach
At the desired equilibrium, the Hessian becomes:
should consider the dependence of the desired formation on
kβi ∇2qi γi − γi ∇2qi βi the connection of the system.
∇2qi ϕi = (15)
k(γik + βi )1/k+1 Case2) ∇qi γi = 0, ∇qi βi = 0, and kβi ∇qi γi = γi ∇qi βi
The first condition says that the i-th agent does not reach
where  1 the desired configuration; the second says that the agent is
∇2qi γi = 2I , ∇2qi βi = 0, (16)
c2ij near to one obstacle. The equilibrium reached is not the
j∈Ni
desired one, but it is possible to tune the parameter k in order
and I is the identity matrix in R2X2 . The Hessian ∇2qi ϕi > 0, to push this undesired equilibrium close to the obstacle. It is
so the equilibrium point is a minimum. also possible to guarantee that this kind of equilibrium is not
If ∇qi γi = 0 but there exists a pair (i, j) such that a local minimum, but only a saddle point. Two Propositions
∇qi γij = 0, then agent i will not be at the desired distance exploit these characteristics of the navigation function.
from its neighbors. This type of equilibrium is dependent on Proposition 3 The critical points analyzed above are in
the connectivity graph of the system: in fact, we can rewrite the interior of the workspace F.
the equilibrium condition in terms of the incidence matrix B Proposition 4 It is always possible to find a lower bound
[22]- [23]. for the parameter k, such that:

1349
the collision region near the boundary, but then it enters the
same region to reach the desired distances with the others.
Fig. 13 shows the distances among the agents.
VI. C ONCLUSIONS
A decentralized navigation function is proposed to drive
each agent of a group toward a desired final configuration
which is expressed in terms of distances between the con-
nected agents. The formation can be reached anywhere in
the space and with any orientation. The navigation function
assures to avoid collision between the controlled agent and
the other agents and obstacles. The connection among the
agents is dependent on their mutual distance. The proposed
function has all the characteristics of a navigation function,
but it introduces some equilibria that cannot be avoided
by tuning parameters. These equilibria are related to the
Fig. 6. Motion of the agents on the plane and convergence to the connection among the agents. Future work include the study
desired formation. of techniques that allow the system to avoid the undesired
equilibria.
R EFERENCES
• the critical points of the navigation function, different
from the desired equilibrium, are near to one of the [1] J. P. Desai, J. P. Ostrowski, and V. Kumar, “Modeling and control of
formations of nonholonomic mobile robots,” IEEE Trans. on Robotics
obstacles; and Automation, vol. 17 no.6, pp. 905908, December 2001.
• the critical points found near the obstacles are not local [2] W. Ren and R. Beard, “Trajectory tracking for unmanned air vehicles
minima and not degenerate (ϕi is a Morse function). with velocity and heading rate constraints,” IEEE Trans. on Control
System Technology, vol. 12 no.5, September 2004.
The propositions can be easily proved for the navigation [3] D. B. Edwards, T. Bean, D. Odell, and M. Anderson, “A leader-
function introduced here, and they give a lower bound to follower algorithm for multiple auv formations,” Proc. of 2004
IEEE/OES Autonomous Underwater Vehicles, Sebasco Estates, Maine,
the parameter k. For proofs, the interested reader is referred June 2004.
to [19]. [4] Y. Liu and K. M. Passino, “Stable social foraging swarms in a noisy
environment,” IEEE Trans. on Automatic Control, vol. 49, no. 4,
V. S IMULATION RESULTS January 2004.
[5] W. M. Spears, D. F. Spears, J. C. Hamann, and R. Heil, “Distributed,
In this section we numerically verify how the de- physics-based control of swarms of vehicles,” Autonomous Robots 17,
signed navigation function works. The workspace has radius 137-162, 2004.
[6] A. Jadbabaie, J. Lin, and A. S. Morse, “Coordination of groups of
Rw = 60. The multi-agent system considered is composed mobile autonomous agents using nearest neighbor rules,” IEEE Trans.
by three agents, and one obstacle is fixed in the origin of on Automatic Control, vol. 48, no. 6, pp. 988–1001, June 2003.
the workspace. We will see how there can be an undesired [7] N. L. P. Ogren, E. Fiorelli, “Cooperative control of mobile sensing
networks: Adaptive gradient climbing in a distributed environment,”
equilibrium also in this case with few agents. The collision IEEE Trans. on Automatic Control, vol. 49(8), pp. 1292–1302, August
radius is δ = 5, and the connection radius is R = 40. The 2004.
constants of the control action are α = 1 and k = 1. In [8] J. Cortes, S. Martinez, T. Karatas, and F. Bullo, “Coverage control for
mobile sensing networks,” IEEE Trans. on Robotics and Automation,
the following Figures the initial positions of the agents are vol. 20, no. 2, pp. 243–255, February 2004.
represented with ‘∗’ and the final positions with ‘♦’, the re- [9] R. O. Saber and R. M. Murray, “Flocking in multiagent dynamic
gions around the obstacle and the workspace are represented systems: Algorithms and theory,” IEEE Trans. on Automatic Control,
vol. 51, March 2006 (in press).
with dashed lines. In all the following examples, the desired [10] E. Justh and P. Krishnaprasad, “Equilibria and steering laws for planar
configuration is given by distances equal to c = 15 for all formations,” Systems and Control letters, vol. 52, no. 1, pp. 25–38,
the connected pairs of agents. May 2004.
In the first example, shown in Fig. 6, the agents 1 and 3 are
initially not connected but during the motion they connect
and in the end they reach the desired distance, as shown in
Fig. 7. In the second example, shown in Fig. 8, an undesired
equilibrium is reached. It is due to the connections graph, that
presents a cycle. We see in Fig. 9 that the final distances are
different from the desired ones. In the third example, the
graph of connections is always a tree. In Fig. 10 we see that
agents 1 and 3 are always disconnected over time. Under
this condition, the desired distances among the connected
Fig. 7. Distances among the agents for the first example: the agents
agents are reached, as we see in Fig. 11. Fig. 12 shows an reach the desired distances, all equal to c.
example near the boundary of the workspace. Agent 2 exits

1350
Fig. 8. Motion of the agents on the plane and convergence to a
local minimum. Fig. 10. Motion of the agents when the graph of connection is a
tree. Agent 2 is connected with 1 and 3.

Fig. 9. Distances among agents in the case of local minimum.

[11] R. O. Saber, W. B. Dunbar, and R. M. Murray, “Cooperative control


of multi-vehicle systems using cost graphs and optimization,” Proc. of Fig. 11. Distances among the agents when the graph of connection
the American Control Conference, Denver, Colorado, June 2003. is a tree. The desired distances among connected agents 1 − 2 and
[12] T. Balch and R. Arkin, “Behavior-based formation control for multi- 2 − 3 are reached.
robot teams,” IEEE Trans. on Robotics and Automation, vol. 14, no.
6.
[13] D. E. Chang, S. C. Shadden, J. E. Marsden, and R. O. Saber, “Collision
avoidance for multiple agent systems,” Proc. of the 42nd IEEE
Conference on Decision and Control, Maui, Hawaii, USA, December
2003.
[14] R. W. Beard and T. W. McLain, “Multiple uav cooperative search un-
der collision avoidance and limited range communication constraints,”
Proc. of the 42nd IEEE Conference on Decision and Control, Maui,
Hawaii, USA, December 2003.
[15] E. Rimon and D. E. Koditschek, “Exact robot navigation using arti-
ficial potential functions,” IEEE Trans. on Robotics and Automation,
vol. 8, no. 5, pp. 501-518, 1992.
[16] D. V. Dimarogonas, M. M. Zavlanos, S. G. Loizou, and K. J.
Kyriakopoulos, “Decentralized motion control of multiple holonomic
agents under input constraints,” Proc. of the 42nd IEEE Conference
on Decision and Control, Maui, Hawaii USA, December 2003.
[17] D. V. Dimarogonas and K. J. Kyriakopoulos, “Decentralized stabi-
lization and collision avoidance of multiple air vehicles with limited
sensing capabilities,” Proc. of the 2005 American Control Conference,
Portland, Oregon, USA, 2005. Fig. 12. Motion of the agents near the boundary and convergence
[18] H. G. Tanner and A. Kumar, “Formation stabilization of multiple to the desired configuration.
agents using decentralized navigation functions,” Robotics: Science
and Systems, Boston, 2005.
[19] ——, “Towards decentralization of multi-robot navigation functions,”
Proc. of the 2005 IEEE Conference on Robotics and Automation, April
2005.
[20] H. G. Tanner, S. G. Loizou, and K. J. Kyriakopoulos, “Nonholonomic
navigation and control of cooperating mobile manipulators,” IEEE
Trans. on Robotics and Automation, vol. 19, no. 1, pp.53-64, February
2003.
[21] C. Godsil and G. Royle, Algebraic Graph Theory. Springer, 2001.
[22] H. G. Tanner, A. Jadbabaie, and G. Pappas, “Flocking in fixed and
switching networks,” Submitted to IEEE Trans. on Automatic Control.
[23] M. C. D. Gennaro, L. Iannelli, and F. Vasca, “Formation control and
collision avoidance in mobile agent systems,” Proc. of the IEEE 13rd
Mediterranean Conference on Control and Automation, Lymassol,
Cyprus, June 2005.
[24] S. Guattery and G. L. Miller, “Graph embeddings and laplacian
eigenvalues,” SIAM J. Matrix Anal. Appl., vol. 21, no. 3, pp. 703-723, Fig. 13. Distances among the agents near to the workspace.
2000.

1351

You might also like