Sie sind auf Seite 1von 15

1268 IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. 23, NO.

4, JULY 2015

Flocking, Formation Control, and Path Following


for a Group of Mobile Robots
Luis Ariel Valbuena Reyes and Herbert G. Tanner, Senior Member, IEEE

Abstract— This paper presents a multifunctional control law by single autonomous robotic vehicles—like searching for
for a group of mobile robots. The controller concurrently plane wreckage and black boxes—scaling up to small groups
integrates flocking, formation control, and path following, as makes sense in terms of satisfying the objectives of the mission
basic components in a navigation framework for mobile sensor
networks tasked with searching and harvesting information. The and managing its cost.
convergence of the closed loop system is ensured using Ryan’s The choice of the coverage pattern, on the other hand,
invariance principle; the particular tool being necessary due to is mainly empirical. From Fig. 1(b), it appears that AUV
the use of a nonsmooth artificial potential field for formation practitioners prefer a heuristic lawn-mower’s problem solu-
control. Simulations and experiments corroborate the theoretical
convergence results.
tion [1]—which is in general NP-hard [2]—for their mission
planning. In the particular case of the AUV participating in the
Index Terms— Flocking, formation control, path following. mission of Fig. 1, path planning is done by defining waypoints.
I. I NTRODUCTION Irrespectively of how the pattern to be followed is generated,
if multiple vehicles are to be used in a mission, planning
I N THE spring of 2011 an autonomous underwater vehicle
(AUV) from the Coastal Sediments, Hydrodynamics, and
Engineering Lab of the University of Delaware conducted
is simpler if the collection of vehicles moves as a coherent
stable formation, compared with having each vehicle assigned
sea bed surveys for habitat mapping in the Conch Reef, its own individual lot (fewer waypoints). Thus, formation
Florida. The vehicle used an on-board camera to create a control algorithms that enable groups of autonomous vehicles
mosaic of the ocean floor, for the purpose of—among other to follow designated paths can be useful in mission planning
science objectives—characterizing coral growth. Fig. 1 shows and execution, both in the particular motivating application,
a Google Earth view of the location of that dive, and a more as well as in a variety of other problem domains where robots
detailed aspect of the path that the underwater vehicle followed are used for search and mapping: space exploration, search and
during this 4-h survey. From the perspective of this paper, what rescue, environmental monitoring, surveillance, and so on.
is interesting in this figure is: 1) the scale of the overall area This paper aims at addressing this need. It presents a control
coverage achieved with a single AUV and 2) the particular architecture that coordinates a group of vehicles to fall into
pattern that oceanographers use to map the ocean floor using formation of specified shape, flock, and follow a predefined
robotic vehicles. path, all at the same time through coexisting controllers that
Area coverage depends on many parameters—for example, are implemented by concurrently evolving software processes.
field of sensor view and vehicle speed—but with operational While centralized in principle, the architecture can be imple-
limitations on sensors and speed, battery life is the main mented in a decentralized way, depending on the nature of the
constraint. The number of vehicles deployed therefore matters. graph that captures the communication topology between the
As this number increases, either the size of the surveyed area vehicles.
increases or the time to mission completion decreases. For the The controllers reported in this paper consider the
particular application, mission time is also of essence, because nonholonomic constraints that vehicles can be subject
the the surface vessel and associated personnel necessary to to, based on standard input–output feedback linearization
transport and deploy the robotic vehicle itself come with techniques [3], [4]. The theoretical convergence analysis of
significant financial overhead. For a 50-ft surface support the formation controller builds on results from nonsmooth
vessel, it makes little difference if one or ten robots are being analysis, since the potential function used for formation con-
deployed. For certain applications, therefore, currently served trol is nondifferentiable. In this context, one of this paper’s
technical contributions is the first formal proof of stability
Manuscript received November 22, 2013; revised June 4, 2014 and for a combined flocking and a provably convergent formation
August 23, 2014; accepted October 8, 2014. Date of publication November 20,
2014; date of current version June 12, 2015. Manuscript received in final form
controller for second-order discontinuous dynamical systems.
October 8, 2014. Recommended by Associate Editor A. G. Aghdam. The path-following controller sits at a higher level, and drives
L. A. Valbuena Reyes is with the Department of Mechanical Engineering, the whole group, without switching, along paths composed of
University of New Mexico, Albuquerque, NM 87131 USA (e-mail:
lavalbuenar@unm.edu).
straight line segments and Bézier curves, taking advantage of
H. G. Tanner is with the Department of Mechanical Engineering, University the stability properties provided by the flocking and formation
of Delaware, Newark, DE 19716 USA (e-mail: btanner@udel.edu). controllers. The three controllers are integrated seamlessly and
Color versions of one or more of the figures in this paper are available
online at http://ieeexplore.ieee.org.
work concurrently in a way that no leaders (actual or artificial)
Digital Object Identifier 10.1109/TCST.2014.2363132 need to be used.

1063-6536 © 2014 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission.
See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
REYES AND TANNER: FLOCKING, FORMATION CONTROL, AND PATH FOLLOWING 1269

Fig. 1. Views of coverage of a marine survey mission using an AUV in Conch Reef, FL. X marks the location of the initial robot deployment. (a) Area
covered. (b) Pattern followed. Courtesy of Dr. Art Trembanis.

Individually, the problems of formation control, path specifications involve velocity directives. Yet, there may not
following, and flocking have been studied extensively. We can necessarily be a need to match a particular speed reference,
also find work addressing instances that combine two of like in the motivating underwater survey application mentioned
the three. In formation control, there is a multitude of earlier.
different working assumptions about the capabilities of the Although some links between provably convergent forma-
agents, the range of the sensors, and the information struc- tion control and flocking have been identified [33], the two
ture used to embed the formation specification. For instance, behaviors have not been integrated into a single control design.
in [4]–[8], it is not entirely clear if particular cases such as Among the different flocking control approaches that exist,
nondegenerate equilibrium formations can be addressed. Other there are some [34], [35] that do not offer a formal proof that
approaches [4], [5], [9]–[11] avoid switching or deliberatively formation stabilization will indeed occur. Out of many others
smoothen it. In a significant amount of work on formation that do [36]–[39] few consider switching [40] or nonholonomic
control [4], [5], [8], [9], [11]–[20], vehicles are assumed constraints [41]–[43]. And although switching and kinematic
holonomic or their final orientation is ignored. The implication constraints may not constitute insurmountable obstacles in
of this is that if the group attempts to move as a rigid body implementing flocking controllers, these controllers in general
from the final configuration, the formation will temporarily cannot guarantee that any desired and oriented shape will be
dissolve. achieved [18], [24].
Not all nonholonomic formation controllers explicitly guar- In terms of cooperative path following, part of the
antee collision avoidance but some do [21]–[23]. At steady existing work involves control specifications that include
state, control designs in the aforementioned work may in prin- velocity [32], [44]–[46], and thus falls into the same cate-
ciple allow the group to move as a cohesive unit along a given gory as those formation controllers that are based on vir-
direction, although the time-varying nature of the formation’s tual structures and virtual leaders. Other approaches do
destination points can introduce steady-state errors. When not [47], [48], but may not always be accompanied
formation controllers for nonholonomic vehicles are explicitly with convergence proofs [49], [50]. What is interesting
designed so that the formation is steered along a desired path in path-following approaches based on vector fields in
or trajectory, two general approaches are followed. Either particular [48], [51], [52] is that the method may not be
a specific point on the formation—this could be an actual limited to paths of a certain geometry [46], [47]. This vector-
leading vehicle, a virtual vehicle, or an arbitrary reference field approach resorts to a switching mechanism when it comes
point, such as the centroid [24]—is made to track a designated to selecting a field specific to the closest path segment, to
trajectory [7], [25]–[30], or the path specification is broken avoid sinks, dead zones, and singularities. Switching also
down to individual reference trajectories in the spirit of virtual appears in solutions that involve triangular decompositions
structures [1], [18], [31], [32]. In some sense, these two of a polygonal corridor around the desired path [53]–[56]
alternatives represent the two ends of the spectrum, the former although this switching is limited to the corridor’s boundaries.
giving some vehicles authority over the rest imposing a hier- Related approaches [51] alleviate the switching problem but
archy, and the latter implementing a flat organization where they do not appear to be applicable to paths that are not closed
everyone has their own motion specification. These motion curves.
1270 IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. 23, NO. 4, JULY 2015

At this time, there exists enough control technology know- can lead to different input–output feedback linearized repre-
how to offer a multitude of solutions to the problem of driving sentations.
a formation of nonholonomic vehicles along given geometric Let d0 be the distance between two robot centers at
paths. Strictly on an application front, therefore, this paper’s which the robots come in contact with each other. Then to
contribution is in the context of specialized methodological avoid collisions between the robots, one must ensure that
improvements. However, the true value of the reported analysis x 2i − x 2 j  ≥ d0 for all i = j as i and j range in {1, . . . , N}.
is on the theoretical side, because it shows that provably Stack now all robot outputs in the form of a combined vector
convergent flocking, formation control, and path following can   
x  x 1 x 2 ; x 1  [x 11 . . . x 1i . . . x 1N ]
be integrated in a single control architecture, and that all the
component behaviors can coexist, run at the same time, and x 2  [x 21 . . . x 2i . . . x 2N ].
be active concurrently without adversely interfering with each
The objective is to design a control input u global for the
other. The component behaviors exhibit a synergy that has not
combined system
been observed before: flocking, formation, and path following
controllers work together by reducing near-collision instances, ẋ 2 = x 1 ẋ 1 = u global
destabilizing the singularities of the formation controller, and
enhancing the cohesion of the group. What is more, the such that the N vehicles fall into a specified formation without
combination increases robustness even if one of the three colliding, and continue moving together as a rigid body
controller components goes offline at steady state, the other following a prescribed path while maintaining the formation
two can be sufficient in keeping the system within its control they have fallen into.
specification. Let the desired formation for this group of robots be
This paper is organized as follows. Section II describes described in terms of their feedback linearized coordinates x
formally the problem addressed in this paper. Section III by means of a labeled directed graph called the formation
describes the development of the first component of the graph G = {V, E, C}.
control architecture, which is the formation controller, while Definition 1 [60]: G = {V, E, C} is a labeled directed graph
Section IV is devoted to path following. Then, Section V consisted of the following.
shows how formation control and flocking can be integrated. 1) A set of vertices V = {v 1 , . . . , v N }, with each vertex
In Section VI, simulation and experimental results from the associated to one robot in the group.
implementation of this architecture on a group of wheeled 2) A set of edges E = {(i, j ) : {1, . . . , N} × {1, . . . , N}}
mobile robots are reported. Section VII summarizes this paper. containing ordered pairs of nodes that denote the exis-
To make this paper more accessible, some of the more tence of pairwise position specifications between robots.
technical discussions have been collected in Appendixes A–D. 3) A set of labels C = [ci j ] for (i, j ) ∈ E, which explicitly
express quantitatively the relative position specification
for each pair of robots.
II. P ROBLEM S TATEMENT
The formation graph G = {V, E, C} expresses the pairwise
Consider a group of N robots moving in an obstacle-free relative position requirements between the robots in the set E
environment. Denoting x i and yi the position coordinates of and codifies these requirements in an array C of desired
robot i ∈ {1, . . . , N}, and ϕi its orientation, we assume that relative position vectors qd .
its kinematics is adequately captured by the equations of the Assume the formation graph G is connected, and consider
unicycle the incidence matrix1 B of the complete graph associated with
ẋ i = v i cos ϕi (1a) the nodes of G, as heads and tails of the edges are marked
with 1 and −1, respectively, we can multiply the concatenated
ẏi = v i sin ϕi (1b) vector of robots position x 2 to get relative positioning [40]
ϕ̇i = ωi . (1c)
q = (B ⊗ I2 ) x 2 (3)
Given a small parameter L > 0, this kinematics can be input–
output feedback linearized [3] using as output the vector where I2 is the 2-D identity matrix, and ⊗ denotes the
  Kronecker matrix product. Thus, q is the stack vector of all
x i + L cos ϕi relative position vectors between the robots in the group. Since
x 2i 
yi + L sin ϕi the formation graph G is connected, not all the elements of q
leading to a feedback linearized dynamical system of a double need to be actively controlled; it suffices to concentrate on
integrator a subset of the elements of q that correspond to edges in a
spanning tree of G. For once, the relative position vectors
ẋ 2i = x 1i
  associated with edges in a spanning tree of G are fixed, all
i the remaining position vectors are uniquely determined.
ẋ 1i = (2)
i Let us thus assume that G is a spanning tree, and that the
and with x 1i driven by i and i that are the transformed stack vector c formed by the elements of array C (basically
inputs of the feedback-linearized system. The double integra- 1 The incidence matrix B of a directed graph is a m ×n matrix with m = |V |
tor form (2) is possible for unicycle-type kinematics. Other and n = |E| such that bi j = 1 if edge j arrive to node i, bi j = −1 if edge j
kinematic representations for wheeled mobile robots [57]–[59] leaves node i, and bi j = 0 if node i is not associated with edge j.
REYES AND TANNER: FLOCKING, FORMATION CONTROL, AND PATH FOLLOWING 1271

converting the array into a vector), after possibly some renum- in the regions where ϕ(q) is differentiable—the general
bering of nodes, is treatment for both differentiable and nonsmooth cases is in
     Section V—then the desired formation is guaranteed to be
c = qd1 qd2 . . . qd(N−1) .
reached asymptotically [60]. Dynamics (2) is, however, of
Then, the problem addressed in this paper can be formulated second order. The nontrivial extension of this control strategy
as follows. from first to second order systems, and its integration with
Problem Statement 1: For a group of N points in R2 with flocking controllers is postponed until Section V.
double integrator dynamics (2) the states of which are stacked
in a vector x, we seek a global control law that makes all these
IV. F ORMATION PATH F OLLOWING
moving points fall into a formation codified in vector c, while
ensuring that for all i = j and t > 0, x 1i (t) − x 1 j (t) ≥ d0 , We make use of windowing functions [61, Ch. 7] to avoid
that the formation shape is maintained, and that the group kinematic singularities and additional switching. The latter
moves along a prescribed path composed by straight line could be otherwise be introduced by path following approaches
segments and Bézier curves. rooted in artificial potential fields constructed based on geo-
metric primitives, such as straight lines and curved segments.
For the case of straight line reference paths—for extensions
III. F ORMATION C ONTROLLER D ESIGN to Bézier curves see Appendix C—and with an appropriate
The solution to formation control given in this paper selection of tuning parameters a0 and r0 , we can define the
follows the lines of a particular multiagent navigation function windowing functions as follows [Fig. 2(a)]:
approach [60], which applies to coordinating a group of N 1
disc-shaped robots with first-order dynamics into an arbitrary wa (s) = [tanh(a0 s) − tanh(a0 (s − 
v ))]
2
geometric formation. If we define γ (q) to be a positive definite 1
function that encodes the proximity of the system to its w R (qs ) = [tanh(a0 (qs + r0 )) − tanh(a0 (qs − r0 ))]
2
desired configuration, and let β(q) be another scalar positive π
θ (qs ) = e−a0 qs .
2
semidefinite function that vanishes only when any robots come 2
in contact with each other. Then, the multiagent navigation
Function wa (s) is a windowing function acting along a path
function takes the form
parameterized by s ∈ R. The function is essentially the length
γ (q) of the projection on the path, of the vector P from the initial
ϕ(q) = . (4)
β(q) path point P0 to the spatial position of interest p [Fig. 2(a)].
Taking κ to be a positive tuning parameter, and recalling Vector v extends from the initial point P0 to the final point
that c is the desired formation specification encoded in the P1 on the reference path, and v̂ is the unit vector along the
definition of the formation graph (Definition 1), we can express direction of v. All these vectors are on the plane of motion,
function γ (q) in the form however, they are considered embedded in R3 because of our
 need to take cross products. Windowing function w R (qs ) acts
γ (q) = γdκ (q), with γd (q)  q − c2 . (5) in a direction perpendicular to the path at distance qs from
(i, j )∈E it, and θ (qs ) is a function that will regulate the constructed
Similarly, once we introduce tuning parameters r , μ, and a that vector field’s orientation depending on the distance from the
relate to the center distance between the disc-shaped robots reference path.
at which collision occurs, and determine the derivative of Vector m  that appears in Fig. 2(a) is defined as m  =
function β at that location, we can express β analytically. In v̂ × (v̂ × P),  and a rotation matrix M is constructed as
doing so we use qi to denote the i th element of the stack follows:
vector q ⎡ ⎤
1 0 0
β(d) = log(μ− ae−(−r+d+d
2 )2
), for d(q) = min(qi ). (6) M = ⎣ 0 cos θ − sin θ ⎦. (7)
0 sin θ cos θ
The term min(qi ) identifies the distance between those two
The windowing functions allow a smooth blending of vector
robots that are closer to each other, and allows function β
fields designed for different segments of the desired path
to encode proximity to collision without multiplying pair-
(Fig. 3). Fig. 3(a)–(c) shows a pulse and tooth-shaped signal
wise proximity metrics. Avoiding the introduction of such
and their corresponding windowing functions. The windowing
a product enables a complete proof of the properties of the
functions essentially select a region of interest out of the
critical points of function ϕ [60]; the price for this is that
whole domain of the signal, and attenuate it smoothly at
now the potential function that coordinates the robots into
the boundaries. Fig. 3(c) shows the results of filtering these
formation is nondifferentiable. Tools from nonsmooth analysis
signals through their windowing functions and superimposing
that can be brought to bear for this case are reviewed briefly
the outputs.
in Appendix A.
Through the use of appropriate windowing functions,
If the dynamics of q, the latter defined in (3), become of
we produce a single, smooth vector field u p capable of steering
the form
the system (2) along the entire reference path. The input given
q̇ = −∇ϕ(q) to the system for path following consists of two components
1272 IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. 23, NO. 4, JULY 2015

Fig. 2. (a) Definition of windowing function parameters in the case of straight line segment reference paths. (b) Vector field to drive the formation along
a desired path. The blue solid line is the path composed by straight line segments and the red solid lines are the Bézier line segments.

Fig. 3. Use of windowing functions to merge signals without introducing discontinuities. The purpose of windowing functions in signal processing is to
mask the discontinuity in frequency both at the beginning and end of the recorded signal; on this paper, windowing functions are used to merge straight line
segments with Bézier curves so a smooth path is constructed without using switching approaches. (a) and (b) Windowing function displayed in magenta and
red, respectively, multiplies the original signals in blue and green to obtain the processed signal by adding up the latter products, as displayed in (c). Note
that the windowing function tends to zero at the end points of the signal attenuating the effect of the discontinuity.

that are superimposed. If we assume that the desired path is Theorem 1: Assume that the geometric center of the
composed of n straight line segments, and m Bézier curve formation, pcm has dynamics of the form
segments, we can think of the control input component u p

n
as formed by superposing the straight line path segment ṗcm = u s,i
reference signal u s and a Bézier curve segment reference i=1
signal u b 
Mi m
u s,i = wai ( P · v̂) w Ri (qs ) . (9)
Mi m


n 
m
us + ub = u s,i + u b, j . Then, in set D = { pcm ∈ R3 : 0 ≤ v · pcm ≤ 1}, (2) converges
i=1 j =1 to set A = {k v : 0 ≤ k ≤ 1} for some fixed v.
We can then show (Appendix C) that Bézier curves can
Then, we force the formation’s geometric center to track the be diffeomorphically mapped to straight line segments, and
superposition of these reference signals using thus the vector field that is developed for convergence to line
segments can be adapted through the push back map to allow
u p = u s + u b − ṗcm . (8) convergence to curved reference paths.
Assuming that robots fall into formation and maintain it,
The following theorem establishes convergence of a refer- one would only need to steer the geometric center of this
ence point in the (assumed rigid) formation along straight line formation, denoted pcm along the designated path. This is done
segments [Fig. 2(a)]. The proof can be found in Appendix B by applying in (2) an input component u p , uniformly to all
and centers around an application of the invariance principle. vehicles.
REYES AND TANNER: FLOCKING, FORMATION CONTROL, AND PATH FOLLOWING 1273

V. F LOCKING W ITH F ORMATION C ONTROL


This section presents the extension of the formation control
approach outlined in Section III to the case of the
second-order dynamics (2), also ensuring that the formation
flocks, i.e., synchronizes its individual vehicle velocity vectors,
as it achieves the desired shape. Flocking provides damp-
ing and facilitates asymptotic stability for formation control,
while the formation stabilization pushes the limit sets of the
dynamics to regions of the state space where velocities are
synchronized. How this synergy is achieved is shown in the
proof of the following theorem, found in Appendix D.
Recall the vehicle dynamics as expressed in (2), with
q̇ and q being the relative velocity and position stack vectors,
respectively, living in a set
Q = R N(N−1) × R N(N−1)\{(q̇, q) : x 2,i − x 2, j  < d0
∀(i, j ) ∈ N × N}. (10) Fig. 4. Corobot. Differential robot manufactured by CoroWare. The metallic
frame is custom made by us for the purpose of data collection.
Letting Ln denote the generalized gradient vector field [62],
we make the following statement. uniformly. As a result, the dynamics of the geomet-
Theorem 2: Consider a group of N robots with dynamics ric center becomes p̈cm = u s + u c − ṗcm + 1u f ,
as (2). If the control input in (2) is chosen as where 1 is the N(N − 1)-dimensional vector of ones.
Theorem 2 implies that q equilibrates autonomously
u global = inv(B ⊗ I2 ) u f (11) where u f = 0. As the q-dynamics approaches these
where inv(·) denotes generalized right inverse and equilibria asymptotically, u f → 0. The effect of u f on
γ (q) the dynamics of pcm thus becomes that of a vanishing
u f = −Ln(∇(ϕ(q))) − q̇, ϕ(q) = perturbation on a system exponentially converging to
β(d(q))
u s + u c ; the latter is constant in the limit. 
d(q) = min{x 2,i − x 2, j } (12)
i, j

with −q̇ as the flocking signal, then collisions between robots VI. I NTEGRATION , T ESTING , AND
are avoided, all robot velocity vectors become asymptotically P ERFORMANCE E VALUATION
the same, and the robots’ relative position stack vector q The methodology developed applies to mobile robots with
converges to a desired constant vector defined by the formation unicycle kinematics; however, we were only able to test it
graph specifications. on skid-steering platforms, for which the unicycle model
Now since (2), augmented with the orientation dynamics is an approximation. In our experimental assessment of the
(1c), is diffeomorphic to (1a), any convergent trajectory of reported controllers, we use a type of mobile robot which
the former is mapped to a convergent trajectory of the latter. is a skid-steering differentially driven platform, localized by
To account for the introduction of parameter L involved in a motion capture system (Fig. 4). Each robot has a Mini-
the mapping of the state of (1a) to that of (2), one can ITX Motherboard with VIA C7 1.5-GHz Processor, 1 GB
conservatively set d0 to twice the sum of the robot’s radius of RAM memory, a wireless communication card and a hard
plus L. disc of 60 GB that allow each robot to run Ubuntu Maverick
Lemma 1: Control laws (8) and (12) are noninteracting Meerkat. Our client programs make the robots move by
asymptotically. communicating with PLAYER 3.02. Although (1a) does not
Proof: The proof is split in two parts. First, it is shown strictly describes kinematics of skid-steering vehicles [58], it
that (8) does not affect the q dynamics when q̈ is driven by u f may still be considered a good approximation, especially when
in (12), thanks to the properties of the incidence matrix B. the origin of the body frame lies very close to the axis of the
Then, Theorem 2 allows us to conclude that (12) does not instantaneous radius of curvature.
affect (8) in the limit.
1) Equation (8) Does Not Affect (12): Observe that (8)
A. Integration
belongs to the null space of B ⊗ I2 , whereas q evolves
in the range of B ⊗ I2 . As a result the dynamics of q Letting u p be the path-following control signal, u f the for-
is oblivious to control input (8). Specifically, when the mation control signal, and −q̇ the flocking signal from the con-
ẋ 1,i , which has as an additive term the uniform input sensus controller, we can piece together the system input as:
to all vehicles u p , maps through B ⊗ I2 to yield q̈, the u global = u p + inv(B ⊗ I2 )(−Ln(∇(ϕ(q))) − q̇). (13)
term u p maps to 0, and therefore does not affect the
dynamics of q. All controllers work concurrently: their input signals are
2) Equation (12) Does Not Affect (8) Asymptotically: The superimposed, and key to being able to mesh seamlessly with
term (8) is a control input that applies to all vehicles each other is that the path-following signal, being uniform
1274 IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. 23, NO. 4, JULY 2015

Fig. 5. Simulation results for a group of five robots falling into formation and following the desired path. (a) t = 0. (b) t = 250. (c) t = 300. (d) t = 350.
(e) t = 480. (f) t = 550. (g) t = 650. (h) t = 720. (i) t = 1000.

over all vehicles, has no effect on flocking and formation right have to switch positions. As observed in the snapshot of
controllers that work on relative positions (and velocities). Fig. 5(h), the robot paths cross without them colliding with
Transformation (3) works like a noise cancellation circuit each other. After the configuration indicated by the snapshot
based on operational amplifiers [63] it rejects the common in Fig. 5(g), we can verify that robots have achieved the
component. formation specification and move as a rigid body along the
desired path.
The time history of the key terms in the different control
B. Simulation signals that are superimposed to produce the final control law
To test the closed-loop system in simulation, we used the is shown in Fig. 6. The first part of this figure, Fig. 6(a)
path of Fig. 2(b). The results of this simulation are shown shows the time history of the numerator γ of ϕ(q), which
in Fig. 5. Initially the five robots are scattered around the is a metric of the difference between the current configuration
workspace. The formation specification calls for the robots to of the group of robots and the desired formation specification.
be in a diamond formation, with one of the robots enclosed in The square markers in the trajectory of γ signify the time
the middle. To reach this desired formation, the robots on the instances where γ passes over a nonsmooth cusp. Fig. 6(b)
REYES AND TANNER: FLOCKING, FORMATION CONTROL, AND PATH FOLLOWING 1275

Fig. 6. (a) Evolution of formation control among the group of robots. (b) Evolution of path-following control of the group of robot’s center of mass.
(c) Evolution of flocking control.

Fig. 7. (a) Two robots in the experiment. (b) Mosaic created by a robot taking pictures while executing a meandering maneuver. Courtesy of Prasanna
Kannappan.

shows how the distance between the center of mass of the The desired shape for the group of robots is a line formation,
group of robots and the reference path decreases with time. motivated by the need to cover as much ground as possible
Here, color coding in the segments of this trajectory refers in each straight path segment of the meander. Thus, the
to transitions between Bézier path segments (red/lighter) and line formation follows the path while keeping the robots
straight lines (blue/darker). After the robots have traversed aligned perpendicular to the desired path. It is important that
the second Bézier curve and attained the desired formation the formation is kept compact with fairly tight tolerances,
(at about t = 675 simulation seconds), this distance is otherwise there can be gaps left between the images that
practically zero. Fig. 6(c) shows the time evolution of the neighboring robots take, compromising coverage and making
velocity differences between the members of the flock. For mosaicking difficult.
this particular simulation, the desired formation was attained Our control laws require position feedback that is provided
at around t = 675 simulation seconds, the flocking behavior by our motion capture system at a rate of 100 Hz. Fig. 8
manifested itself at around t = 800 simulation seconds, and shows the paths of the two robots while executing the required
accurate path following was practically exhibited just after the maneuver. The desired (oriented) path is shown in Fig. 8(i).
350th simulation second. Each robot is color coded in the figure, and is surrounded
by a matching (in color) circle that represents its personal
space (of radius d0 ). The actual robot shape is outlined by a
C. Experimental Results polygon that shows where the main body part of the robot
The objective of the experimental tests we conducted was is, and where the booms holding its down-facing cameras are
to map a designated area in a fashion similar to that indicated pointing.
in Fig. 1(b): steer robots along a meandering path, but instead In Fig. 8(a), the red (lighter) robot starts on the right of
of having one, as in the case of the mission in Fig. 1(b), have the blue (darker) robot and needs to move to the left to
a line formation of robots—in this case, there are just two fall into formation with the blue (darker) robot. Fig. 8(a)
robots [Fig. 7(a)], due to space and motion capture envelope shows the paths of the two robots as they maneuver into
limitations. The robots are using two webcams each, and formation. After the initial maneuvering of Fig. 8(a), we see in
take successive pictures of the floor, which they subsequently Fig. 8(b) that the desired formation shape has been achieved,
combine into a mosaic like the one shown in Fig. 7(b). although the final orientation is not conducive to the robots
1276 IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. 23, NO. 4, JULY 2015

Fig. 8. Progression of the experimental trial with the two robots following a meandering curve. Thick dots mark the vehicles’ initial positions, and the
short trail behind each robot shows the recent portion of the path it has traversed so far. (a)–(i) Show different successive snapshots of the evolution of the
formation maneuver.

moving together as a rigid body. It is there that the path VII. C ONCLUSION
following and flocking controller signals take the initiative to A homogeneous group of mobile robotic sensor platforms
steer the pair south and along the first segment of the desired can be effectively coordinated to perform maneuvers required
path, as shown in Fig. 8(c). At the end of that segment, the for search, coverage, and mapping missions, as if they were
formation changes orientation and turns right as it follows a single, much larger, rigid structure. Composing such a
a Beziér curve that links that first line segment to the one structure out of identical modular components, has advantages
on the right of the leftmost vertical segment. In Fig. 8(d), related to cost and robustness, since reconfiguration through
we see the group climbing north that straight line segment, relatively small software adjustments allows the deployment
before turning sharply left to follow the leftmost straight of such a group even when a few of its members become
line segment south. The formation completes this maneuver inoperable. The particular motion control methodology out-
in Fig. 8(e) and (f), before turning left again to follow the lined in this paper brings together three distinct controlled
last portion of the desired path heading north, as shown mobility behaviors, namely, formation control, path following,
in Fig. 8(g) and (h). and flocking, into a single framework where all of them act
REYES AND TANNER: FLOCKING, FORMATION CONTROL, AND PATH FOLLOWING 1277

concurrently but in concert with each other. The mobility in finite-dimensional spaces, the generalized gradient, defined
behaviors integrated here draw from existing work, but in over a ball ε B centered at x, can take the form
order for the confluence of control action described above to  
/ S ∪f .
∂ f (x) = co lim ∇ f (x i ) : x i ∈
occur, several specialized innovations had to be implemented i→∞
in the constituent technologies. The overall architecture has The generalized gradient ∂ f (x) is the convex hull of all points
proven effective both in numerical simulations as well as in of the form lim ∇ f i , where {x i } is any sequence that converges
experimental implementation on a small group of wheeled to x while avoiding S ∪  f .
mobile robots. While the gradient is a vector, the generalized gradient is a
convex set. A set C is convex if the line segment between any
A PPENDIX A two points in C lies in C, it means that for any c1 and c2 ∈ C
N ONSMOOTH A NALYSIS and any 0 ≤ θ ≤ 1, we have θ c1 + (1 − θ )c2 ∈ C [66].
A. Generalized Directional Derivatives and Gradients For the distance function, in particular, there are interesting
properties that its generalized gradient enjoys. One of them is
Take a function f : Rn × R → Rn , and consider the vector the following [65, Th. 2.5.6].
differential equation Theorem 3 [65]: Let x belong to cl(ϒ). Then, ∂dϒ (x)
ẋ = f (x, t). (14) equals the convex hull of the origin and the set {w =
lim(wi /wi ) : wi ⊥ϒ at x i → x, wi → 0}.
Take co denotes the convex hull2 and let N and N f be any
sets of zero i.e., μN = 0. The operator μ is the Lebesgue B. Ryan’s Invariance Principle
measure3 and N f is a set in which f (x, t) is not defined [64].
Ryan’s invariance theorem allows us to conclude the weak
When the right-hand side of (14) is discontinuous, the
convergence of the solutions of a differential inclusion to a
solution can be expressed in the form of a differential inclusion
set [67]. To this end, consider the nonautonomous initial-value
ẋ(t) ∈ F(t, x(t)) problem
F(t, x(t)) = co{lim f (x i )|x i → x, x i ∈
/ N f ∪ N}. (15) ẋ(t) ∈ F(t, x(t)), x(t) ∈ G, x(t0 ) = x 0 (17)
A Filippov solution of (14) on [0, t1 ] ⊂ R is an absolutely where G ⊂ RN . We need the following definitions.
continuous map x : [0, t1 ] → Rn that satisfies (15) for almost Definition 3 [67]: A solution x of the differential inclu-
all t ∈ [0, t1 ] [62]. sion (17) is said to be maximal, if it does not have a proper
Definition 2 [65]: Let f be Lipschitz near a given point x right extension, which is also a solution of (17).
in X ⊂ Rn , y be any other point near x, v an arbitrary vector, Definition 4 [67]: Every solution of (17) can be extended
and t a positive scalar. The generalized directional derivative to a maximal solution.
of f at x in the direction of v, denoted f °(x, v), is defined as Definition 5 [67]: A solution x ∈ AC([t0 , ω; G]) of (17) is
f (y + tv) − f (y) precompact if it is maximal and the closure cl(x([t0 , ω))) of
f °(x, v) = lim sup . (16) its trajectory is a compact subset of G.
y→x t
t ↓0 Definition 6 [68]: Let x(t) be a bounded solution of (17).
If x t defined by x t (0) = x(t + 0) has no positive limit points
The generalized directional derivative expresses the rate of on the boundary of X, then x(t) is precompact.
change of a nonsmooth function at a point of nondifferentia- Theorem 4 [67]: Let V : G → R be locally Lipschitz.
bility. The generalized gradient is the analog of the regular Define
gradient for the case where functions are not differentiable.
Let X ∗ be the dual space of X, where the open unit ball u : G → R, z → u(z)  max{V °(z, φ) | φ ∈ X (z)}.
is denoted B∗ and for the norm ζ ∗ we write ζ ∗ 
Suppose that U ⊂ G is nonempty and that u(z) ≤ 0 for all
sup{ζ, v : v ∈ X, v ≤ 1}. The generalized gradient of
z ∈ U . If x is a precompact solution of (17) with trajectory
f at x, denoted ∂ f (x), is the subset of X ∗ given by
in U , then, for some constant c ∈ V (cl(U )∩ G), x approaches
{ζ ∈ X ∗ : f °(x, v) ≥ ζ, ξ  for all v in X}. the largest weakly invariant set in  ∩ V −1 (c), where  =
{z ∈ cl(U ) ∩ G | u(z) ≥ 0}.
If we allow set  f to contain all point in x + ε B for which
f is not differentiable, and S be any set of measure zero, then A PPENDIX B
2 The convex hull co of a set C is the set of all convex combinations of P ROOF OF T HEOREM 1: C ONVERGENCE
points in C TO S TRAIGHT-L INE S EGMENTS
⎧ ⎫ Without loss of generality take the x̂-axis of the refer-
⎨ 
k ⎬
conv(C) = θ1 c1 + · · · + θk ck | ci ∈ C, θi ≥ 0, i = 1, . . . , k, θi = 1 . ence frame along the reference path A [Fig. 2(a)]—this is a
⎩ ⎭
i=1 translation–rotation of the original problem where we put the
origin at P0 and v = P1 − P0 .
3 It is a standard way to assign a measure to a subset contained in a
Letting I be the (2 × 2) identity matrix, write
n-dimensional Euclidean space; if n = i, with i = 1, 2, 3, the Lebesgue
measure correspond to length, area, and volume, respectively.  = (v̂ v̂  − I ) P.
 = v̂ × (v̂ × P)
m 
1278 IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. 23, NO. 4, JULY 2015

Consider a weak Lyapunov candidate function (for planar


motion)
 
 = 1  P
V ( P)  2 = 1 p 2x + p2y .
2 2
Taking the derivative of this function with respect to time along
(9) yields

 = wa ( P · v̂) w R (qs ) [M(v̂ v̂  − I ) P]
V̇ ( P)   P.
 (18)
M(v̂ v̂  − I ) P 
The numerator of the scalar factor is composed of window-
ing functions that take values between zero and one, and the
denominator merely scales the vector on the right to unitary
length. Therefore, the sign of the right-hand side of (18) is
determined by
[M(v̂ v̂  − I ) P ] P = [M((v̂ v̂ ) P − P )] P
Fig. 9. Mapping to simplify the analysis for Bézier line segments.
[69] and since v̂ = [1 0 0] and P = [ px p y 0], we have
(v̂ v̂ ) P − P = [0 − p y 0]. Recalling the expression (7) of like the expressions of the Bézier curve and the roots of some
the rotation matrix M, we have polynomials involved in the required derivations. We denote
⎡ ⎤ the initial frame as Ir and the frame of analysis as Ia , indicated
0
   = ⎣− p y cos θ ⎦ in Fig. 9.
M((v̂ v̂ ) P − P)
− p y sin θ Let atan2d (·, ·) be a customized arc tangent function
defined as
and computing its inner product with P ⎧    
⎡ ⎤ ⎪
⎪ arccos √ 2x 2 arcsin √ 2y 2
px ⎪
⎪ x +y
 x +y
, x = 0, y = 0

⎪  y 2
[0 − p y cos θ − p y sin θ ] · ⎣ p y ⎦ = − p2y cos θ ⎪

⎪ arctan x


0 ⎪π/2,
⎨ x = 0, y > 0
 ≤ 0, since |θ | < π/2.4 Note
from which it follows that V̇ ( P) atan2d (y, x) = −π/2, x = 0, y < 0


 is radially unbounded and continuous, the
now that as V ( P) ⎪


⎪ π, y = 0, x < 0
set ⎪


⎪ 0, y = 0, x > 0


 ≤ c}, c ⊂ D
c = {( px , p y ) : V ( P) ⎩0, x = 0, y = 0.
is a compact, positively invariant set. If we define E  and define ϑ = atan2d (r P2y − r P0y , r P2x − r P0x ). Then, a
 = 0}, and evaluate vector field (9)
{( px , p y ) ∈ c : V̇ ( P) point from frame Ir translated to frame Ia as follows:
there, we see that E is an invariant set. The set E is essentially  
the line that passes from points P0 and P1 [Fig. 2(a)]. From cos ϑ sin ϑ
r
p = ( p − r P0 ).
[70, Th. 4.4], it follows that every trajectory starting in c a − sin ϑ cos ϑ r
approaches E as t → ∞.
The diffeomorphism sending (a x, a y) to (z 1 , z 2 ) accord-
A PPENDIX C ing to
C ONVERGENCE TO B ÉZIER S EGMENTS    
z1 d0 d1 x − a rmin x
For the convergence analysis, we show there is a diffeo- = 2 a (19)
z2 d a y − a rmin y
morphism that can map the curved Bézier line into a straight
line. In principle, the pull-back map of this diffeomorphism transforms the Bézier curve of Fig. 9 into a straight line
can translate the straight line controller so that it is used for interval P0 , P2 . The point a rmin is located at the intersection of
convergence to Bézier curves. A diffeomorphism is merely a the normals to the Beziér at points a P0 and a P2 on the plane
coordinate transformation; it does not affect the convergence of motion (Fig. 9). The other parameters involved in this (ray)
properties of a vector field. The structure of the two controllers scaling are expressed (with reference again to Fig. 9) as
is the same, it is merely the scaling that changes; vector m  
always points toward the reference curve along the normal d2 = rmin x2 + rmin x2
vector to the curve. α = |atan2d (a rmin y , a rmin x )|
First, we start by translating and rotating the locus of the ζ = |atan2d (a y − a rmin y , a x − a rmin x )|
Bézier curve defined by points a P0 , a P1 , and a P2 , to simplify sin α
d0 = d2
4 This follows from the construction of the vector field: points enabled by the sin ζ
windowing functions are assigned a vector that is initially normal to vector P, 
before rotated based on θ (qs ), as shown in Fig. 2(a). d = (a x − a rmin x )2 + (a y − a rmin y )2 .
REYES AND TANNER: FLOCKING, FORMATION CONTROL, AND PATH FOLLOWING 1279

If we denote ts ∈ [0, 1], the admissible solution of the


polynomial in parameter t

− [2(a x − a rminx ) a P1y − 2(a y − a rminy ) a P1x


+ a P2x (a y − a rminy )]t 2
+ [2(a x − a rminx ) a P1y − 2(a y − a rminy ) a P1x ]t
+ a rminx (a y − a rminy ) − a rminy (a x − a rminx ) = 0

and define a Bxs  2 ts (1 − ts ) a P1x + a P2x ts2 , a B ys  2 ts (1 − Fig. 10. Sketch for V °(x, ζ ). V °(x, ζ ) has three important regions,
ts ) a P1y . Then, we define the remaining parameter d1 as V °(x, ζ ) ≥ 0, V °(x, ζ ) ≤ 0, and V °(x, ζ ) = 0.

d1 = (a Bxs − a rmin x )2 + (a B ys − a rmin y )2 . Expanding the generalized directional derivative gives a
long expression
A PPENDIX D V °(x, ζ )
   
x 1T κ ∂β
P ROOF OF T HEOREM 2 κ−1
= max − 2 κβ(γd ) ∇(γd ) − γd
T
ζ − x 1 22
The equilibria of the system appear at configurations, where β ∂d 
   
x 1T κ−1 κ ∂β 
x 1 = 0, ∂ ϕ(x 2 ) = 0 + 2 κβ(γd ) ∇(γd ) −γd
T
ξ  ζ, ξ ∈ ∂d
β ∂d
and ∂ denotes generalized gradient (Appendix A). Thus, the
which eventually simplifies to
system is at equilibrium when all robots are either at their
desired relative configurations, or at a saddle point of ϕ. V °(x, ζ )
  κ  !
The set of the latter can be shown to consist of isolated γd ∂β 
configurations that are unstable [60], and the attraction region = max − x 1 22 + x 1  ζ − ξ   ζ, ξ ∈ ∂d .
β 2 ∂d
of these unstable equilibria is of measure zero. For this reason,
the only practically attainable equilibrium is x 1 = 0 and The maximum value for the norm ζ − ξ  is achieved when
x 2 = c. Our weak Lyapunov function candidate is defined the unit vectors ζ and ξ , which are members of ∂d, are along
as different, orthogonal coordinate directions. If K ζ is an upper
bound on ∂β/∂d [60], it then follows that:
1
V (x 1 , x 2 ) = x 1 22 + ϕ(x 2 ) √ Kζ
2 V °(x, ζ ) ≤ −x 1 22 + 2 x 1 ϕ. (21)
β
which is positive definite because ϕ(x 2 ) is positive definite
with respect to x 2 .5 At configurations where the minimum Now depending on whether ϕ is differentiable at the given
relative distance function d(x 2 ) is nondifferentiable, ẋ belongs configuration x 2 , we consider two cases.
to a Filippov set [64] 1) Case I: Suppose ϕ is differentiable at x 2 ; then ζ = ξ ,
V °(x, ζ ) = V̇ (x), and consequently
ẋ ∈ F(x). (20)
V̇ (x 1 , x 2 ) = −x 1 2 ≤ 0.
Specifically, first compute
    Since V (x 1 , x 2 ) is radially unbounded, the set
1 κ−1 κ ∂β
∂ϕ(x 2 ) = 2 κβ(γd ) ∇(γd ) − γd λ , λ ∈ ∂d  = {(x 1 , x 2 ) ∈ Rn N(N−1) |V (x 1 , x 2 ) ≤ V (x 1 (0), x 2 (0))}
β ∂d
and then write the differential inclusion as is a positive invariant set that is closed by continuity and
    bounded due to radial unboundedness of V . Therefore,
ẋ 1 −∂ϕ(x 2) − x 1 solutions that start in  cannot escape , which implies
∈ = F(x).
ẋ 2 x1 that robots cannot collide since collision configurations
Once you express the generalized gradient of V in the form send V → ∞.
  Let c be a constant vector and define E ⊂  as follows:
x1
∂ V (x) = E = {(x 1 , x 2 ) ∈ Rn N(N−1) | V̇ (x 1 , x 2 ) = 0}
∂ϕ(x 2 )
⇐⇒ E = {(x 1 , x 2 ) ∈ Rn N(N−1) | x 1 = 0, x 2 = c}.
then you can find the generalized derivative of V along a
vector in F(x) as [65, Proposition 2.1.2] The dynamics on E is

V °(x, ξ ) = max{ p · ξ, p ∈ ∂ V (x), ξ ∈ F(x)}. 0 = ẋ 1 = −∇(ϕ(c)) − x 1

5 ϕ might depend on a subset of the components of x but because of the and the biggest invariant set M ⊂ E is thus (x 1 , x 2 ) =
2
N − 1 connectivity (graph) constraints between the agents, fixing the specific (0, c). The trivial solution is the only one which can
components determines all the elements in x2 . stay in E.
1280 IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. 23, NO. 4, JULY 2015

Invoking LaSalle’s principle [70] we conclude that


every solution starting in  will approach M as t → ∞,
and by [70, Corollary 4.1] we see that trajectories
asymptotically converge to (0, c).
2) Case II: Suppose now that ϕ is nondifferentiable at
x 2 , i.e., ζ = ξ . Then, there are regions of the state
space where V °(x, ζ ) is positive (Fig. 10). However,
the solutions for (11) still have to be bounded: if they
were not, then, for every constant C ≥ 0, there would
be some t ≥ 0 such that V (x(t)) > C. There
 would be
initial conditions x(0) where V ° x(0), ζ ≥ 0, implying
ϕ
x 1  < ξ − ζ K ζ . (22)
β
Fig. 11. Filippov set along /{x|x1 = 0, ϕ(c) = 0}.
This happens in the region on the upper left-hand side
in both parts of Fig. 10. If x were to grow without
bound, then its trajectory x(t) would eventually hit the note that since λ ∈ ∂d(x 2 ), and the latter is the convex
boundary of the workspace, the latter marked by those hull of some unit vectors ei , the former can be written as
points where ϕ blows up. It is ensured [60] that −∇ϕ λ = i ai ei , where i ai = 1; thus λ cannot be zero. On the
is unbounded, there, pointing in the direction, which x 2 other hand, the only place where both x 1 and γd are zero, and
decreases. Thus, x 2 cannot grow unbounded. If x 2 is therefore F(x) = 0, is only at x 1 = ϕ(c) = 0, by construction
to remain bounded, then the only option left for V (x) of ϕ(x 2 ). For ϕ(x 2 ) to vanish one needs either x 2 = 0, or
to increase is if x 1 increases; but that contradicts (22). ∂β/∂d = 0, the latter implying that agents are so far away
Therefore, neither x 1 nor x 2 can grow without bound. from each other that there is no interaction between them;
Since x(t) is a bounded solution, and it has no positive this happens when d → ∞, as (6) suggests.
limit point on the boundary of the workspace [60], then Since F(x) contains a tangent direction to the set
x(t) must be precompact [68, Lemma 4.8]. /{x|x 1 = 0, ϕ(c) = 0}, the set /{x|x 1 = 0, ϕ(c) = 0}
In this case, define [67, Th. 2.11] cannot be weakly invariant; rather, there is a solution that
ν : G → R , x → ν(x)  max{V °(x, ζ ) | ζ ∈ F(x)} escapes any bounded proper subset of /{x|x 1 = 0, ϕ(c) =
√ Kζ 0}. Let d (x) = inf{x − σ  | σ ∈ }. The tangent cone T
≤ −x 1 2 + 2 x 1 ϕ. to cl() at a point x is then
β
Letting μ be the navigation function constant parameter, T (x) = {ζ : d°(x, ζ ) = 0}.
it follows that is a nonempty set U ⊂ Q where ν(x) ≤ 0.
Such a set can be defined as Algebraically, the fact that some v ∈ F(x) belongs to this
 ! tangent cone can be expressed as
ϕ
U = x 1  ≥ ξ − ζ K ζ . (23)
log(μ) ∃ v ∈ F(x) : max{ζ, v | ζ ∈ d (x)}
To complete this proof, let cl denotes closure and define = 0 ⇐⇒ ∃ v ∈ F(x) | ζ, v ≤ 0. (24)
  {x ∈ cl(U ) ∩ Q | ν(x) ≥ 0}. Note that computing d (x) requires knowledge of the point
σ in the closure of  that is closest to x, which is in general
Then invoke Ryan’s integral invariance principle—Theorem 4,
unknown. Theorem 3 provides an alternative expression for
quoted in Appendix A—to conclude that x(t) converges to
the normal of , which we will be using presently.
largest weakly invariant set within
Note, however, that the direction of inequality (24) is
 ∩ V −1 (c). determined by direction of ζ and v, and not their magnitude.
It will prove convenient to scale both factors in ζ, v by x 1 .
It can actually be shown that once on  ∩ V −1 (c), the
Then for an arbitrary element v ∈ F(x), the first factor would
trajectories of (11) remain tangent to , and the vector field
appear as
is nonvanishing anywhere except for (x 1 , x 2 ) = (0, c), i.e.,
{x|x 1 = 0, ϕ(c) = 0}. What this implies is that the largest v
weakly invariant set in  ∩ V −1 (c) is (x 1 , x 2 ) = (0, c). x 1 
⎡    ⎤
The Filippov set (20) along /{x|x 1 = 0, ϕ(c) = 0} 1 κ−1 β x1

⎢ βx 1  2κ(γ ) (x −c)− √ x  a ξ −
x 1 ⎥
d 2 1 i i
(Fig. 11) is given by
⎡     ⎤ =⎢⎣
2 i ⎥.

x1
1 κ−1 κ ∂β
− κβ(γd ) ∇(γd ) − γd λ − x1 ⎦ x 1 
F(x) = ⎣ β 2 ∂d
x1 On the other hand, since
and we can verify that 0 ∈ / F(x), so there can be no   2
!
= x = (x 1 , x 2 ) : (x)  x 1 2 − 2 K ζ2 ϕ(x 2 )2 = 0
equilibrium anywhere but at (x 1 , x 2 ) = (0, c). To see that, β
REYES AND TANNER: FLOCKING, FORMATION CONTROL, AND PATH FOLLOWING 1281

then for x ∈ , by Theorem 3 the scaled second factor would [9] R. Olfati-Saber and R. M. Murray, “Distributed cooperative control of
be of the form multiple vehicle formations using structural potential functions,” in Proc.
⎡ x1 ⎤ IFAC World Congr., pp. 346–352, 2002.
[10] P. Ögren and N. E. Leonard, “Obstacle avoidance in formation,” in Proc.
2
ζ ∂(x) ⎢ x 1  ⎥ IEEE Int. Conf. Robot. Autom., vol. 2. Sep. 2003, pp. 2492–2497.
= =⎢
⎣−2 x 1  
 ⎥ . [11] H. G. Tanner and A. Kumar, “Towards decentralization of multi-robot
x 1  x 1  ai ξi ⎦ navigation functions,” in Proc. IEEE Int. Conf. Robot. Autom., Apr. 2005,
β Kζ pp. 4132–4137.
i
[12] M. M. Zavlanos and K. J. Kyriakopoulos, “Decentralized motion control
Therefore, vector ζ in (24), being in ∂d (x) will be parallel of multiple mobile agents,” in Proc. 11th Medit. Conf. Control Autom.,
2003, pp. 1–6.
to ∂(x)/x 1 . The scaled inner product of (24) is now
[13] D. V. Dimarogonas and K. J. Kyriakopoulos, “A feedback stabilization
expanded as and collision avoidance scheme for multiple independent nonholonomic
$ %   non-point agents,” in Proc. IEEE Int. Symp. Medit. Conf. Control Autom.
ζ v 4κ(γdκ−1 )  2   Intell. Control, Jun. 2005, pp. 820–825.
, =− x · (x 2 −c)− x · a ξ
i i [14] D. V. Dimarogonas, K. J. Kyriakopoulos, and D. Theodorakatos, “Totally
x 1  x 1  βx 1 2 1 Kξ β 1 distributed motion control of sphere world multi-agent systems using
i
√   decentralized navigation functions,” in Proc. IEEE Int. Conf. Robot.
2 
+ x · ai ξi − 2. (25) Autom., May 2006, pp. 2430–2435.
x 1  1 [15] M. C. De Gennaro and A. Jadbabaie, “Formation control for a coop-
i erative multi-agent system using decentralized navigation functions,” in
Proc. Amer. Control Conf., Jun. 2006, pp. 1346–1351.
Note now that we just need a single element v in F(x) to
[16] T. H. Summers, C. Yu, B. D. O. Anderson, and S. Dasgupta, “Formation
guarantee (24). Recall that F(x) is a subset of T (x) and write shape control: Global asymptotic stability of a four-agent formation,” in
When (x 1 , x 2 ) → (0, c) ⇒ γd → 0 and with an Proc. 48th IEEE Conf. Decision Control, Dec. 2009, pp. 3002–3007.
appropriately large exponent κ (γ κ−1 still dominates over κ) [17] K.-K. Oh and H.-S. Ahn, “Distance-based sequential formation control
of mobile agents by using motion primitives,” in Proc. IEEE Int. Symp.
we can make the first two terms of (25) arbitrarily small. Thus Intell. Control, Sep. 2010, pp. 1464–1469.
$ % √   [18] Y. Cao and W. Ren, “Distributed coordinated tracking with reduced
ζ v 2  interaction via a variable structure approach,” IEEE Trans. Autom.
, → x1 · ai ξi − 2
x 1  x 1  x 1  Control, vol. 57, no. 1, pp. 33–48, Jan. 2012.
i [19] S. Coogan and M. Arcak, “Formation control with size scaling using
relative displacement feedback,” in Proc. Amer. Control Conf., Jun. 2012,
from below as (x 1 , x 2 ) → (0, c). For that limit we can write pp. 3877–3882.
√   [20] B. D. O. Anderson, C. Yu, S. Dashgupta, and A. S. Morse, “Control
2  √ of a three-coleader formation in the plane,” Syst. Control Lett., vol. 56,
x1 · ai ξi − 2 ≤ 2 − 2 < 0
x 1  nos. 9–10, pp. 573–578, 2007.
i [21] S. G. Loizou and K. J. Kyriakopoulos, “Navigation of multiple kine-
& matically constrained robots,” IEEE Trans. Robot., vol. 24, no. 1,
because ξi is a unit vector and i ai = 1. Thus, not only pp. 221–231, Feb. 2008.
do trajectories that once they hit  ∩ V −1 (c) stay in that set [22] H. G. Tanner, S. G. Loizou, and K. J. Kyriakopoulos, “Nonholonomic
exist, but these trajectories will have to evolve until they reach navigation and control of cooperating mobile manipulators,” IEEE Trans.
Robot. Autom., vol. 19, no. 1, pp. 53–64, Feb. 2003.
(x 1 , x 2 ) → (0, c). By continuity of the right-hand side of (25) [23] S. G. Loizou and K. J. Kyriakopoulos, “Closed loop navigation for
and , the largest invariant set in , where  = 0 can only multiple non-holonomic vehicles,” in Proc. IEEE Int. Conf. Robot.
be where x 1 = 0 and ϕ(c) = 0. Autom., Sep. 2003, pp. 4240–4245.
[24] H. Su, X. Wang, and Z. Lin, “Flocking of multi-agents with a virtual
leader,” IEEE Trans. Autom. Control, vol. 54, no. 2, pp. 293–307,
R EFERENCES Feb. 2009.
[25] J. P. Desai, J. P. Ostrowski, and V. Kumar, “Modeling and control of
[1] D. B. Edwards, T. A. Bean, D. L. Odell, and M. J. Anderson, “A leader- formations of nonholonomic mobile robots,” IEEE Trans. Robot. Autom.,
follower algorithm for multiple AUV formations,” in Proc. IEEE/OES vol. 17, no. 6, pp. 905–908, Dec. 2001.
Auto. Underwater Veh. Conf., Jun. 2004, pp. 40–46. [26] R. Vidal, O. Shakernia, and S. Sastry, “Formation control of nonholo-
[2] E. M. Arkin, S. P. Fekete, and J. S. Mitchell, “Approximation algorithms nomic mobile robots with omnidirectional visual servoing and motion
for lawn mowing and milling,” Comput. Geometry, vol. 17, nos. 1–2, segmentation,” in Proc. IEEE Int. Conf. Robot. Autom., Taipei, Taiwan,
pp. 25–50, 2000. Sep. 2003, pp. 584–589.
[3] Y. Yamamoto and X. Yun, “Coordinating locomotion and manipulation [27] W. Dong, “Flocking of multiple mobile robots based on backstepping,”
of a mobile manipulator,” IEEE Trans. Autom. Control, vol. 39, no. 6, IEEE Trans. Syst., Man, Cybern. B, Cybern., vol. 41, no. 2, pp. 414–424,
pp. 1326–1332, Jun. 1994. Apr. 2011.
[4] J. R. T. Lawton, R. W. Beard, and B. J. Young, “A decentralized [28] F. Xie and R. Fierro, “Stabilization of nonholonomic robot formations:
approach to formation maneuvers,” IEEE Trans. Robot. Autom., vol. 19, A first-state contractive model predictive control approach,” J. Comput.
no. 6, pp. 933–941, Dec. 2003. Inf. Technol., vol. 17, no. 1, pp. 37–50, Mar. 2009.
[5] R. W. Beard, J. Lawton, and F. Y. Hadaegh, “A feedback architecture [29] L. Consolini, F. Morbidi, D. Prattichizzo, and M. Tosques, “Leader–
for formation control,” in Proc. Amer. Control Conf., vol. 6. Jun. 2000, follower formation control of nonholonomic mobile robots with input
pp. 4087–4091. constraints,” Automatica, vol. 44, no. 5, pp. 1343–1349, 2008.
[6] P. Ögren, E. Fiorelli, and N. E. Leonard, “Cooperative control of [30] G. L. Mariottini, F. Morbidi, D. Prattichizzo, G. J. Pappas, and
mobile sensor networks: Adaptive gradient climbing in a distrib- K. Daniilidis, “Leader-follower formations: Uncalibrated vision-based
uted environment,” IEEE Trans. Autom. Control, vol. 49, no. 8, localization and control,” in Proc. IEEE Int. Conf. Robot. Autom., Rome,
pp. 1292–1302, Aug. 2004. Italy, Apr. 2007, pp. 2403–2408.
[7] S. Mastellone, D. M. Stipanović, C. R. Graunke, K. A. Intlekofer, and [31] T. H. A. van der Broek, N. van de Wouw, and H. Nijmeijer, “Formation
M. W. Spong, “Formation control and collision avoidance for multi- control of unicycle mobile robots: A virtual structure approach,” in
agent non-holonomic systems: Theory and experiments,” Int. J. Robot. Proc. 48th IEEE Conf. Decision Control, Sanghai, China, Dec. 2009,
Res., vol. 13, no. 1, pp. 107–126, 2008. pp. 8328–8333.
[8] D. M. Stipanović, P. F. Hokayem, M. W. Spong, and D. D. Sïljak, [32] J. Ghommam, H. Mehrjerdi, M. Saad, and F. Mnif, “Formation path
“Cooperative avoidance control for multiagent systems,” Trans. ASME following control of unicycle-type mobile robots,” Robot. Auton. Syst.,
J. Dyn. Syst., Meas., Control, vol. 129, no. 5, pp. 699–707, 2007. vol. 58, no. 5, pp. 727–736, 2010.
1282 IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. 23, NO. 4, JULY 2015

[33] D. V. Dimarogonas and K. J. Kyriakopoulos, “A connection between [56] V. Kallem, A. T. Komoroski, and V. Kumar, “Sequential composition
formation control and flocking behavior in nonholonomic multiagent for navigating a nonholonomic cart in the presence of obstacles,” IEEE
systems,” in Proc. IEEE Int. Conf. Robot. Autom., Orlando, FL, USA, Trans. Robot., vol. 27, no. 6, pp. 1152–1159, Dec. 2011.
May 2006, pp. 940–945. [57] L. Carcciolo, A. De Luca, and S. Iannitti, “Trajectory tracking control
[34] T. Balch and R. C. Arkin, “Behavior-based formation control for of a four-wheel differentially driven mobile robot,” in Proc. IEEE Int.
multirobot teams,” IEEE Trans. Robot. Autom., vol. 14, no. 6, Conf. Robot. Autom., May 1999, pp. 2632–2638.
pp. 926–939, Dec. 1998. [58] K. Kozłowski and D. Pazderski, “Modeling and control of a 4-wheel
[35] D. Di Paola, R. de Asmundis, A. Gasparri, and A. Rizzo, “Decentralized skid-steering mobile robot,” Int. J. Appl. Math. Comput. Sci., vol. 14,
topology control for robotic networks with limited field of view sensors,” no. 4, pp. 477–496, 2004.
in Proc. Amer. Control Conf., Jun. 2012, pp. 3167–3172. [59] G. Campion, G. Bastin, and B. Dandrea-Novel, “Structural properties
[36] F. Cucker and S. Smale, “On the mathematics of emergence,” Jpn. and classification of kinematic and dynamic models of wheeled mobile
J. Math., vol. 2, no. 1, pp. 197–227, Mar. 2007. robots,” IEEE Trans. Robot. Autom., vol. 12, no. 1, pp. 47–62, Feb. 1996.
[37] C. Yoshioka and T. Namerikawa, “Formation control of nonholonomic [60] H. G. Tanner and A. Boddu, “Multiagent navigation functions revisited,”
multi-vehicle systems based on virtual structure,” in Proc. 17th World IEEE Trans. Robot., vol. 28, no. 6, pp. 1346–1359, Dec. 2012.
Congr. Int. Fed. Autom. Control, 2008, pp. 5149–5154. [61] A. V. Oppenheim, R. W. Schafer, and J. R. Buch, Discrete-Time Signal
[38] R. Olfati-Saber, “Flocking for multi-agent dynamic systems: Algorithms Processing. Englewood Cliffs, NJ, USA: Prentice-Hall, 1998.
and theory,” IEEE Trans. Autom. Control, vol. 51, no. 3, pp. 401–420, [62] J. Cortes, “Discontinuous dynamical systems: A tutorial on solutions,
Mar. 2006. nonsmooth analysis, and stability,” IEEE Control Syst. Mag., vol. 28,
[39] M. M. Zavlanos, H. G. Tanner, A. Jadbabaie, and G. J. Pappas, “Hybrid no. 3, pp. 36–73, Jun. 2008.
control for connectivity preserving flocking,” IEEE Trans. Autom. Con- [63] J. Fraden, HandBook of Modern Sensors. New York, NY, USA:
trol, vol. 54, no. 12, pp. 2869–2875, Dec. 2009. Springer-Verlag, 2004.
[40] H. G. Tanner, A. Jadbabaie, and G. J. Pappas, “Flocking in fixed [64] D. Shevitz and B. Paden, “Lyapunov stability theory of nonsmooth
and switching networks,” IEEE Trans. Autom. Control, vol. 52, no. 5, systems,” IEEE Trans. Autom. Control, vol. 39, no. 9, pp. 1910–1914,
pp. 863–867, May 2007. Sep. 1994.
[41] S. A. P. Quintero, G. E. Collins, and J. P. Hespanha, “Flocking with [65] F. H. Clarke, Optimization and Nonsmooth Analysis. Philadelphia, PA,
fixed-wing UAVs for distributed sensing: A stochastic optimal control USA: SIAM, 1990.
approach,” in Proc. Amer. Control Conf., Jun. 2013, pp. 2025–2031. [66] S. Boyd and L. Vandenberghe, Convex Optimization. Cambridge, U.K.:
[42] W. J. Dong, Y. Guo, and J. A. Farrell, “Formation control of nonholo- Cambridge Univ. Press, 2004.
nomic mobile robots,” in Proc. Amer. Control Conf., Minneapolis, MN, [67] E. P. Ryan, “An integral invariance principle for differential inclusions
USA, 2006, pp. 5602–5607. with applications in adaptive control,” SIAM J. Control Optim., vol. 36,
[43] N. Moshtagh, A. Jadbabaie, and K. Daniilidis, “Distributed geodesic no. 3, pp. 960–980, 1998.
control laws for flocking of nonholonomic agents,” in Proc. 44th IEEE [68] J. P. LaSalle, The Stability of Dynamical Systems. Philadelphia, PA,
Conf. Decision Control, Seville, Spain, Dec. 2005, pp. 2835–2840. USA: SIAM, 1976.
[44] Y. Lan, G. Yan, and Z. Lin, “Synthesis of distributed control of [69] L.-W. Tsai, Robot Analysis. New York, NY, USA: Wiley, 1998.
coordinated path following based on hybrid approach,” IEEE Trans. [70] H. K. Khalil, Nonlinear Systems. Upper Saddle River, NJ, USA:
Autom. Control, vol. 56, no. 5, pp. 1170–1175, May 2011. Prentice-Hall, 2002.
[45] R. Chabcheloo, A. P. Aguiar, A. Pascoal, C. Silvestre, I. Caminer, and
J. Hespanha, “Coordinated path-following in the presence of communi-
cation losses and time delays,” SIAM J. Control Optim., vol. 48, no. 1,
pp. 234–265, 2009.
[46] E. Børhaug, A. Pavlov, E. Panteley, and K. Y. Pettersen, “Straight
line path following for formations of underactuated marine surface
vessels,” IEEE Trans. Control Syst. Technol., vol. 19, no. 3, pp. 493–506, Luis Ariel Valbuena Reyes received the bachelor’s
May 2011. degree in mechatronics engineering from the
[47] O. Sørdalen and C. C. de Wit, “Exponential control law for a mobile Universidad Nacional de Colombia, Bogotá,
robot: Extension to path following,” IEEE Trans. Robot. Autom., vol. 9, Colombia, in 2008, and the master’s degree in
no. 6, pp. 837–842, Dec. 1993. mechanical engineering from the University of
[48] D. R. Nelson, D. B. Barber, T. W. McLain, and R. W. Beard, “Vector Delaware, Newark, DE, USA.
field path following for miniature air vehicles,” IEEE Trans. Robot., He is currently conducting graduate studies
vol. 23, no. 3, pp. 519–529, Jun. 2007. with the University of New Mexico, Albuquerque,
[49] E. W. Frew, D. A. Lawrence, C. Dixon, J. Elston, and W. J. Pisano, NM, USA.
“Lyapunov guidance vector fields for unmanned aircraft applications,”
in Proc. Amer. Control Conf., 2007, pp. 371–376.
[50] H. G. Tanner and D. K. Christodoulakis, “Decentralized cooperative
control of heterogeneous vehicle groups,” Robot. Auton. Syst., vol. 55,
no. 11, pp. 811–823, Nov. 2007.
[51] V. M. Concalves, L. C. A. Pimenta, C. A. Maia, B. C. O. Dutra,
and G. A. S. Pereira, “Vector fields for robot navigation along time-
varying curves in n-dimensions,” IEEE Trans. Robot., vol. 26, no. 4,
pp. 647–659, Aug. 2010. Herbert G. Tanner (SM’08) received the
[52] M.-Y. Cheng and Y.-H. Wang, “Velocity field construction for contour Ph.D. degree in mechanical engineering from the
following tasks represented in NURBS form,” IEEE Trans. Autom. National Technical University of Athens (NTUA),
Control, vol. 54, no. 10, pp. 2405–2410, Oct. 2009. Athens, Greece, in 2001.
[53] P. Iscold, G. A. S. Pereira, and L. A. B. Tôrres, “Development of a hand- He was with the University of Pennsylvania,
launched small UAV for ground reconnaissance,” IEEE Trans. Aerosp. Philadelphia, PA, USA, as a Post-Doctoral
Electron. Syst., vol. 46, no. 1, pp. 335–348, Jan. 2010. Researcher for two years, before taking his first
[54] L. C. A. Pimenta, G. A. S. Pereira, and R. C. Mesquita, “Fully appointment as an Assistant Professor with the
continuous vector fields for mobile robot navigation on sequences of University of New Mexico, Albuquerque, NM,
discrete triangular regions,” in Proc. IEEE Int. Conf. Robot. Autom., USA, in 2003. He joined the Department of
Apr. 2007, pp. 1992–1997. Mechanical Engineering, University of Delaware,
[55] B. Yordanov, G. Batt, and C. Belta, “Model checking discrete-time Newark, DE, USA, in 2008.
piecewise affine systems: Application to gene networks,” in Proc. Eur. Dr. Tanner was a recipient of the National Science Foundation CAREER
Control Conf., 2007, pp. 1–8. Award in Robotics in 2005.

Das könnte Ihnen auch gefallen