Robotic Herding Using Wavefront Algorithm: Performance...

16
Robotic Herding Using Wavefront Algorithm: Performance and Stability Shripad Gade * University of Illinois at Urbana-Champaign, Urbana IL, 61801. Aditya A. Paranjape Indian Institute of Technology Bombay, Mumbai, India, 400076. Soon-Jo Chung University of Illinois at Urbana-Champaign, Urbana IL, 61801. Abstract This paper is concerned with robotic herding of a swarm of birds by another adversarial agent, referred to as the pursuer. The objective of herding is to prevent the birds from entering a specified volume of space, such as the air space around an airport. The n-Wavefront algorithm was introduced by the authors in a prior paper to enable herding of a swarm of birds using a robotic unmanned aerial vehicle. In this paper, the performance and stability characteristics are analyzed using tools from linear and nonlinear stability theory, with the aim of proving its performance and identifying the permissible and optimum values of the control parameters. It is shown that, using the n-Wavefront algorithm, a pursuer can successfully maneuver the birds around the prescribed perimeter while ensuring that the swarm does not undergo fragmentation as a result of its response to the presence of the pursuer. Nomenclature Δ(.) Diagonal matrix with the diagonal elements being equal to the argument M (n×p) Space of (n × p) real matrices. B C Incidence matrix of the graph G L(G) Laplacian of the graph G L e (G) Edge Laplacian of the graph G Γ Edge input matrix of the graph (G) Γ p Pursuer edge input matrix of the graph (G) and a pursuer δ Perturbation by a pursuer θ p Relative angle of approach for pursuer D FD Flock diameter R Fear Fear distance for the birds ACTN Set of birds (Active Nodes) to be influenced by the pursuer [1] R Comm Communication radius for birds R, R Safe Desired inter-agent distance at equilibrium for flock N i Neighborhood set of agent i K m,n Complete bipartite graph with m + n vertices and mn edges 1 Introduction Bird and other wildlife collisions with the aircraft cause well over $400 million in damages annually to US aviation industry and around $1.2 billion worldwide [2, 3]. Since the first bird aircraft collision reported by Orville Wright in 1905 the frequency of wildlife strikes has increased continually [4]. The Federal Aviation Administration (FAA) documented 142,000 wild-life strikes at US airports between 1990 and 2013, including 11,000 in 2013 itself with birds being involved in 97 % of the reported cases [5]. As a result, there has been * Graduate Student, Department of Aerospace Engineering. Email - [email protected] Assistant Professor, Department of Aerospace Engineering. Email - [email protected] Associate Professor, Department of Aerospace Engineering and Coordinated Science Lab. Email - [email protected] 1

Transcript of Robotic Herding Using Wavefront Algorithm: Performance...

Page 1: Robotic Herding Using Wavefront Algorithm: Performance …publish.illinois.edu/shripadgade/files/2016/03/GNC-16.pdf · Robotic Herding Using Wavefront Algorithm: Performance and ...

Robotic Herding Using Wavefront Algorithm: Performance and

Stability

Shripad Gade ∗

University of Illinois at Urbana-Champaign, Urbana IL, 61801.

Aditya A. Paranjape †

Indian Institute of Technology Bombay, Mumbai, India, 400076.

Soon-Jo Chung ‡

University of Illinois at Urbana-Champaign, Urbana IL, 61801.

Abstract

This paper is concerned with robotic herding of a swarm of birds by another adversarial agent, referredto as the pursuer. The objective of herding is to prevent the birds from entering a specified volume of space,such as the air space around an airport. The n-Wavefront algorithm was introduced by the authors in aprior paper to enable herding of a swarm of birds using a robotic unmanned aerial vehicle. In this paper,the performance and stability characteristics are analyzed using tools from linear and nonlinear stabilitytheory, with the aim of proving its performance and identifying the permissible and optimum values of thecontrol parameters. It is shown that, using the n-Wavefront algorithm, a pursuer can successfully maneuverthe birds around the prescribed perimeter while ensuring that the swarm does not undergo fragmentationas a result of its response to the presence of the pursuer.

Nomenclature

∆(.) Diagonal matrix with the diagonal elements being equal to the argumentM(n×p) Space of (n× p) real matrices.BC Incidence matrix of the graph GL(G) Laplacian of the graph GLe(G) Edge Laplacian of the graph GΓ Edge input matrix of the graph (G)Γp Pursuer edge input matrix of the graph (G) and a pursuerδ Perturbation by a pursuerθp Relative angle of approach for pursuerDFD Flock diameterRFear Fear distance for the birdsACTN Set of birds (Active Nodes) to be influenced by the pursuer [1]RComm Communication radius for birdsR,RSafe Desired inter-agent distance at equilibrium for flockNi Neighborhood set of agent iKm,n Complete bipartite graph with m+ n vertices and mn edges

1 Introduction

Bird and other wildlife collisions with the aircraft cause well over $400 million in damages annually to USaviation industry and around $1.2 billion worldwide [2, 3]. Since the first bird aircraft collision reported byOrville Wright in 1905 the frequency of wildlife strikes has increased continually [4]. The Federal AviationAdministration (FAA) documented 142,000 wild-life strikes at US airports between 1990 and 2013, including11,000 in 2013 itself with birds being involved in 97 % of the reported cases [5]. As a result, there has been

∗Graduate Student, Department of Aerospace Engineering. Email - [email protected]†Assistant Professor, Department of Aerospace Engineering. Email - [email protected]‡Associate Professor, Department of Aerospace Engineering and Coordinated Science Lab. Email - [email protected]

1

Page 2: Robotic Herding Using Wavefront Algorithm: Performance …publish.illinois.edu/shripadgade/files/2016/03/GNC-16.pdf · Robotic Herding Using Wavefront Algorithm: Performance and ...

an increasing use of active as well as passive methods for preventing birds from entering the airspace aroundairports [6, 7]. Figure 1 shows a broad idea about the flock control solution proposed by the authors.

A novel herding algorithm for bird control for airports that witness organized bird activity, using unmannedaerial vehicles (UAVs), was presented in prior work by the authors [1]. The control technique, called the n-wavefront algorithm, enables even single UAVs to herd a flock of birds around a prescribed perimeter about theairport while preventing intrusion of the perimeter. This has been depicted schematically in Figure 2(a).

The most general objective of herding algorithms is to move a flock of agents in a certain prescribed mannerusing an external agent, much like shepherding [13]. The earliest shepherding algorithms used geometricprinciples to identify the relative position and posture of the shepherd with respect to the flock [14, 15, 16, 17]with the objective of first confining the flock within a well-defined spatial zone and imposing trajectory trackingon the confined flock. These algorithms have been compared with, and even motivated by, observed behaviorin animals, and have also been demonstrated experimentally [13, 16, 15]. On the other hand, it is generallywell-known that these algorithms may perform poorly when a single shepherd is employed [15]. Strombom et al.[18] analyzed “heuristics” in shepherding strategies used by sheep dogs with emphasis on single herding agents,and designed a strategy which successively enforces confinement and tracking to achieve herding. However,the design was not analyzed rigorously, which leaves open the question of its limitations and performanceguarantees.

An interesting limitation of the aforementioned algorithms is that they were never designed to preventperimeter intrusion. This objective is in addition to that of herding the flock, and can impose significantconstraints on the algorithm. The n-wavefront algorithm (NWA) [1] is meant to achieve herding along withperimeter protection. The NWA splits the herding problem into two distinct tasks - the first one being perimeterprotection and the second being the more traditional tracking objective. We start by modelling the flock[1, 19, 20, 21, 22, 23] followed by modelling the interaction between the pursuer and individual members of theflock [24]. Next, for each of the two objectives, using the interaction model and the underlying communicationtopology of the flock, the NWA identifies a set of agents on the boundary of the flock whose pursuit would leadto the successful achievement of the objective. The two objectives of perimeter defense and driving are pursuedsuccessively, and confinement is achieved as a result of a combination of the flock’s internal dynamics and thepursuer’s actions to achieve the two aforementioned objectives.

The objective of this paper is to examine the stability of NWA rigorously. Towards that end, the paperis organized as follows. Some graph theoretic preliminaries are collected in Sec. 2. Flock dynamics and theNWA algorithm are described in Sec. 3. Stability analysis of the flock is presented in Sec. 4. Stability of then-Wavefront algorithm is presented in Sec. 5 and some simulation results are presented in Sec. 6.

Problem: Aircraft Bird

Strikes

Current Solution

Future Solution

Fully Autonomous Robotic Bird

a)

b)

c)

d)

e)

Figure 1: Preventing Airport Bird Strikes using Autonomous Robotic Birds. [Image Credits - a) BusinessInsider [8], b) Wikipedia [9], c) New Jersey On-Line LLC [10], d) UAS Vision [11], e) Scarecrow-Bird-Control[12]]

2

Page 3: Robotic Herding Using Wavefront Algorithm: Performance …publish.illinois.edu/shripadgade/files/2016/03/GNC-16.pdf · Robotic Herding Using Wavefront Algorithm: Performance and ...

− 𝑋𝐴𝑖𝑟

Intruders

UAV Protected Zone

− Airport Runways

ℎPZ

𝑅PZ

(a) The setting for the problem addressed in this paper: establishinga protected zone around an airport using unmanned aerial vehicles assentries against stray avian intruders. [1]

1

2 3

4 5

1 2

3 4

2

1

(b) Sample scenario: Bird and Pursuer are in bluecircle and red triangle respectively, flock edges arein green, bird-pursuer edges are in red.

Figure 2: Problem setting addressed in the paper.

2 Preliminaries

Let RComm denote the communication range or interaction distance between two birds. For a uniform circulardisc sensor model, the neighborhood of the ith boid is defined as,

Ni = {j ∈ N | ‖xi − xj‖ ≤ RComm}. (1)

A limited field of view model can also be adopted, which restricts the sensing to a sector of a circle (in 2D) andto a cone (in 3D). We will use the uniform circular disc (in 2-D) and a uniform sphere (in 3D) for simplicity.The neighborhood sets together can be represented as a graph. In the case of uniform circular disc (or uniformsphere) sensor model this graph is an undirected graph, whereas using a limited field of view model creates adirected graph. A selective foundation for graph theory and a few definitions are presented below.[25, 26, 27, 28]

A graph G consists of a vertex set V and an edge set E , where an edge is an ordered pair of distinct verticesin set V. The number of vertices/nodes in a graph are naturally given by N , |V| and the number of edges ina graph is given by P , |E|. If x, y ∈ V, and (x, y) ∈ E then an edge exists that points form x to y. In such ascenario x and y are said to be adjacent or neighbors. The incidence matrix of a graph, denoted by BC(G) isa N × P matrix such that i, j entry of BC(G) is equal to 1 if the jth edge is incoming at i, -1 if outgoing at iand 0 otherwise. A graph is called a bidirectional graph if (x, y) ∈ E implies (y, x) ∈ E , ∀ x, y ∈ V. The graphLaplacian is defined as L(G) = BC(G)BC(G)T . The graph Laplacian captures several structural properties ofa graph [25, 26]. The graph Laplacian is a positive semi-definite matrix with the algebraic multiplicity of zeroeigenvalue being directly equal to the number of connected components in the graph. In a connected graph,the second smallest eigenvalue (algebraic connectivity [29]) is shown to be the speed of convergence of a linearconsensus protocol [19]. The edge Laplacian of an arbitrarily oriented graph is defined as Le(G) = BTC(G)BC(G).It is an edge variant of the graph Laplacian and has some immediate properties, the non-zero eigenvalues ofLe(G) and L(G) are same, and that the non-zero eigenvalues of L(G) and Le(G) are square root of the singularvalues of the incidence matrix BC(G) [30]. The edge Laplacians of tree or star graphs are non-singular[27].Following are a few types of graphs and other definitions used in the paper.

Definition 1. A bipartite graph is a graph whose vertices can be divided into two disjoint sets A and B, suchthat, every edge connects a vertex in A to a vertex in B. A complete bipartite graph is a special bipartite graphwhere every vertex in set A is connected to every vertex in set B. A complete bipartite graph with |A| = mand |B| = n is denoted by the notation Km,n.

Definition 2. A tree is a connected acyclic graph. An out tree, is an orientation of a tree having the root ofin-degree 0 and every other node has in-degree exactly 1. An out-tree by definition is a directed graph.

Definition 3. A star graph, SP , is a complete bipartite graph K1,P . It is also characterized as a tree with oneroot node and P leaves. It is easy to see that a connected star graph with P edges, has P + 1(= N) nodes andis acyclic. [28]

Definition 4. The edge input matrix (Γ) for a graph (G) with N vertices and P edges, a N × P matrix, is ameans of representing the edge-wise information flow.

3

Page 4: Robotic Herding Using Wavefront Algorithm: Performance …publish.illinois.edu/shripadgade/files/2016/03/GNC-16.pdf · Robotic Herding Using Wavefront Algorithm: Performance and ...

A directed edge ej (∈ E) from any vertex l to vertex i (information is transmitted from l to i) is said to beincident on vertex i (written as ej : l→ i). The edge input matrix is defined as follows:

Γij =

{1 if ej : l→ i

0 otherwise.(2)

Definition 5. The pursuer edge input matrix (Γp) for a graph (G) and a pursuer, is a means of representingthe pursuer interaction with the flock. It codifies effect of the pursuer on the active nodes (influenced nodes)of the graph.

Let us consider a pursuer-flock interaction scenario between graph (G) and a pursuer (p). If the pursuerinteracts with Pp birds in the flock (i.e. there exist Pp edges between the pursuer and graph vertices, with theedge set denoted by Ep) then Γp is a N ×Pp matrix. A directed pursuer-boid edge epj is a incident on vertex i(written as epj : p→ i) if vertex i is influenced by the pursuer (i.e. i receives information from p). The pursueredge input matrix is defined as follows:

Γpij =

{1 if epj : p→ i

0 otherwise.(3)

Remark 6. The matrix product ΓpΓTp is a diagonal matrix with exactly Pp entries along the diagonal are

equal to 1 while the rest are zero. The diagonal entries corresponding to the birds that are influenced by thepursuer are equal to 1.

The edge input matrix and the pursuer edge input matrix for a flock pursuer pair shown in Figure 2(b) aregiven below. Remark 6 is also verified for the case shown in Figure 2(b).

Γ =

0 0 0 01 0 0 00 1 0 00 0 1 00 0 0 1

, Γp =

0 00 01 00 00 1

, and ΓpΓpT =

0 0 0 0 00 0 0 0 00 0 1 0 00 0 0 0 00 0 0 0 1

Definition 7. The presence of a leader in a flock induces a partition in the incidence matrix[31]. For a directedgraph (incidence matrix, BC) with one leader (labeled as 1) we have BTC1

∈MP×1 that represents the incidence

relations corresponding to the leader and BTC2∈ MP×N−1 represents the incidence matrix for the followers in

the flock,

BC =

[BC1

BC2

]=⇒ BTC =

[BTC1

BTC2

].

3 Problem Statement and n-Wavefront Algorithm

3.1 Problem Statement

The typical herding problem involves the control of a flock, herd or a group of entities (referred to as the “flock”)by another set of entities (each of which is called a “pursuer”). Herding is an outcome of controlled predator-prey interaction between the flock and the pursuer. In this paper, the objective of the herding problem is todivert a flock of birds away from a well-defined region such as an airport, within its path, using a robotic aerialvehicle. In a practical setting, the UAV should herd the flock away from a protected zone around the airportwith typical altitude of landing or climbing aircraft. The specific objectives of herding can be formulated as -

Goal 1: Divert the flock to a safe point away from the airport, such that if the flock to its own thereafter, it willnot enter the demarcated zone around the airport. Moreover, the flock should be outside the demarcatedzone at all times during the herding process.

Goal 2: Avoid fragmentation of flock. This point is particularly important when the flock is spread out andsparse, such as the V-formations of ducks and geese.

Goal 3: Avoid collision of the UAV with the flock. This objective is met partly by planning the path of theUAV as part of the algorithm, and partly using collision-avoidance protocols built into its onboard controllaw.

The aforementioned objectives are quantified using the following metrics [1]: (i) location of the flock centroid(XC); ii) flock diameter (DFD); iii) flock centrality; and (iv) distance and bearing of the flock centroid fromthe airport.

4

Page 5: Robotic Herding Using Wavefront Algorithm: Performance …publish.illinois.edu/shripadgade/files/2016/03/GNC-16.pdf · Robotic Herding Using Wavefront Algorithm: Performance and ...

3.2 Flocking Model

The birds fly in a 3−dimensional Euclidean space with double integrator dynamics given by

xi = vi, vi = ui, (4)

where xi ∈ R3 is the position of the ith bird, vi ∈ R3 is its velocity vector, and ui ∈ U ⊂ R3 is the controlinput. The pursuer is also modeled using a double integrator dynamics with the position of the kth pursuer isgiven by xpk and the velocity by vpk. The vector pointing from any bird i to bird j is denoted by rij = xj − xiand similarly the vector pointing from bird i to pursuer k is denoted by rpik = xpk − xi.

The set of birds in the neighborhood of bird i is denoted by Ni. The set of all pursuers that are in theneighborhood/vicinity is denoted by N p

i . Guiding steers from Reynolds model[32], augmented with predator-prey dynamics, together form the flocking dynamics [1]:

ui = Ksepui,sep +Kalignui,align +Kgoalui,goal +Kfearui,fear (5)

ui =∑j∈Ni

αij(xj − xi) +∑j∈Ni

βij(vj − vi) +(c1(xG − xi) + c2(vG − vi)

)+∑

k∈Npi

γikuiFear (6)

uiFear =(1+si2

)rpik + cf

(1−si2

)rp⊥ik ; where rp⊥ik = k× rpik, k = vp × rpik (7)

where, αij and βij are state dependent gains corresponding to the consensus terms; c1, c2 are gains for thetracking error with respect to a virtual leader; γik is the gain of the fear term between boid i and pursuer kwhich depends on the pair of interacting species. The term si is a bounded state dependent gain and cf isthe weight between the out-turning and radial escape behaviors. For more details, the reader is referred toRef. [[1]].

Flocking in multi-dimensional spaces in the absence of a pursuer can be easily modeled since the dynamicsalong each dimension are decoupled. If a swarm of birds moving in a 3-dimensional space is governed bydynamics, x = −BCWBTCx− BCW2B

TC x− c2(x− xG), for some state-dependent weight matrices W and W2;

then we can re-write it using Kronecker product notation,xyz

= −(I3 ⊗BCWBTC)

xyz

− (I3 ⊗BCW2BTC)

xyz

− c2x− xGy − yGz − zG

. (8)

where x, y and z are the stacks of x co-ordinates, y co-ordinates and z co-ordinates (for all agents) correspond-ingly.

3.3 n-Wavefront Algorithm

The n-wavefront algorithm is a boundary based algorithm, involving pursuit and interaction with agents onlyon the boundary of the flock. Figure 3(b) shows an example of robotic bird trajectory to herd a flock towardsthe herding goal and away from the boundary. It uses two set of primitive behaviors [33]:

(a) Target bird selection. (b) Robotic bird trajectory.

Figure 3: Target bird selection via the n-Wavefront algorithm and robotic bird trajectory.

5

Page 6: Robotic Herding Using Wavefront Algorithm: Performance …publish.illinois.edu/shripadgade/files/2016/03/GNC-16.pdf · Robotic Herding Using Wavefront Algorithm: Performance and ...

1

2

3

4

5

6

7

PZ Boundary

𝑋safe

(a) Pure Herding Goal. λ = 0

1

2

3

4

5

6

7

PZ Boundary

𝑋safe

(b) Pure Boundary Keeping. λ = 1

1

2

3

4

5

6

7

PZ Boundary

𝑋safe

(c) Equal Weights. λ = 0.5

Figure 4: Selection of boundary node based on n-wavefront algorithm. Node are color coded based on userselected policy: Red arrow - Boundary Keeping, Green arrow - Herding Goal.[1]

1. Maintain Distance - This primitive relates to maintaining a separation from the flock. The flockingdynamics is at least asymptotically stable and hence utilization of this primitive results in stable systembehavior.

2. Sideways Push - This family of primitives involves a sideways approach of the pursuer. The flock respondsin an evasive manner to this sideways approach and the direction of flock motion gets influenced.

For the sideways push, the n-wavefront strategy selects n birds on the boundary that need to be influenced(pushed or controlled) by the UAV using Eq. (9) to herd a flock of birds. These birds are selected from the convexhull of the flock, thereby ensuring that the pursuer neither collides with the bird and nor does it cause flockfragmentation. The selection of the n boundary agents is based on user selected policies like “boundary keeping”,“herding” or a combination of these policies. Figure 4 shows three scenarios with “herding”, “boundary keeping”and a combination of both with equal weights to each of them. It can be written mathematically as -

up =

Vpmax rp,target, if ‖rp,target‖ > threshold

kp,1

(1− RFear

‖rp,target‖

)rp,target + kp,2(Xsafe − xp) otherwise

(9)

where ‘target’ denotes a selected target point, rp,target = xtarget − xp, RFear denotes the fear radius (distanceafter which the birds react to the pursuer as per Eq. (7)) and V pmax is the maximum permissible speed of thepursuer. The target point could be an actual boid (such as when the target is the central boid in the flock)or a point in space (such as when the target is the center of mass of the flock). The threshold distance isa design parameter, RFear, of the birds. The gains kp,1 and kp,2 are currently prescribed on a case-by-casebasis. It is worth noting that kp,2 is usually much smaller than the gain kp,1, since keeping distance from theflock is essential. Severe breaches of this distance criteria may result into flock fragmentation and result intounacceptable flock sizes (too large).

4 Stability of the Unstimulated Flock

The communication model in a flock of birds induces a graph. Unstimulated flocking involves pure flockingbased on inter-agent interaction and some global steers. We do not assume any pursuer-bird interaction in thissection. We show conditions for exponential stability among unstimulated flocking models in this section.

4.1 Single Integrator, Directed Communication Graph

We can rewrite the flock dynamics (in 2-dimensional space) in matrix form as,[xy

]= −

(I2 ⊗ W

[0BTC

])[xy

]. (10)

where,

W =

[0 0(1×P )

0(P×1) W(P×P )

]and W = ∆[wi,j ] (∀(i, j) ∈ E). (11)

This model can be trivially extended to 3-dimensional space. We know from the definition of incidence matrix,that the length of any edge i, can be denoted by by ‖ (BTCx)i ‖.

6

Page 7: Robotic Herding Using Wavefront Algorithm: Performance …publish.illinois.edu/shripadgade/files/2016/03/GNC-16.pdf · Robotic Herding Using Wavefront Algorithm: Performance and ...

Claim 1. For a directed star graph, there exists a labeling scheme such that the matrix BTC2= I(N−1).

Proof: Let us consider a star graph (Sn) with n nodes. Let the first node be the root node and rest n − 1nodes (labeled as 2, 3, · · · , n) be the leaf nodes. The incidence matrix for Sn is given by,

BC =

−1 −1 · · · −11 0 · · · 00 1 · · · 0...

.... . .

...0 0 · · · 1

BTC =

−1 1 0 · · · 0−1 0 1 · · · 0...

......

. . ....

−1 0 0 · · · 1

BTC2=

1 0 · · · 00 1 · · · 0...

.... . .

...0 0 · · · 1

(12)

The BTC2matrix is obtained by deleting the column corresponding to the leader from BTC matrix. As can be

clearly seen in Eq. (12), the column corresponding to the leader is a column full of −1′s, and removing it resultsinto an Identity matrix of a smaller dimension. This reduction is due to the removal of a column and hence thedimension of the Identity matrix is n− 1. �

Claim 2. For a directed tree graph, there exists a labeling scheme such that the matrix BTC2is upper or lower

triangular matrix.

Proof: Let us consider a graph with n nodes. Let the leader be labeled as the first node, further more, let thenodes connected to the leader be labeled as 2, 3, · · · ,m1. Let a breadth first labelling procedure be followed,i.e. the nodes connected to node 2 be labeled as m1 + 1, · · · ,m1 + m2 and the nodes connected to node 3 bem1 + m2 + 1, · · · ,m1 + m2 + m3 and so on. There exists a permutation of edges that allows us to write theincidence matrix as given above. The incidence matrix for the graph can be written as,

BC =

−1 · · · −1 0 · · · 01 · · · 0 −1 · · · −1...

. . ....

.... . .

...0 · · · 1 0 · · · 00 · · · 0 1 · · · 0...

. . ....

.... . .

...0 · · · 0 0 · · · 1

BTC =

−1 1 · · · 0 0 · · · 0...

.... . .

......

. . ....

−1 0 · · · 1 0 · · · 00 −1 · · · 0 1 · · · 0...

.... . .

......

. . ....

0 −1 · · · 0 0 · · · 1

BTC2=

1 · · · 0 0 · · · 0...

. . ....

.... . .

...0 · · · 1 0 · · · 0−1 · · · 0 1 · · · 0...

. . ....

.... . .

...−1 · · · 0 0 · · · 1

(13)

It can be seen from the matrix that BTC2will have one on all its diagonal entries and it will be a lower triangular

matrix. �

Theorem 1. A system governed by flocking laws given in Eq. (10), under a out tree or a directed starcommunication graph, has a globally exponentially stable equilibrium formation, ‖ BTCx ‖= RSafe1.

Proof: Let us consider a vector, ei = ∆(‖ (BTCx)i ‖2 −R2Safe)1.

deidt

=d

dt(∆(‖ (BTCx)i ‖2 −R2

Safe)1) = 2[∆(BTCx)∆(BTC x) + ∆(BTCy)∆(BTC y)]1

= −2[∆(BTCx)BTC2

∆(BTCx) + ∆(BTCy)BTC2∆(BTCy)

]∆

(1

‖ (BTCx)i ‖2

)ei = −2 Kei

where BTC = [BTC1BTC2

] ∈M(P×N) with BTC1∈M(P×1) and BTC2

∈M(P×N−1); while the matrix K ∈M(P×P ).

We know from Claim 1 that for a star directed graph, BTC2is an identity matrix. This makes matrix K,

an identity matrix. This follows from the fact that ∆(‖ (BTCx)i ‖2) = ∆(BTCx)∆(BTCx) + ∆(BTCy)∆(BTCy).We know from Claim 2 that BTC2

for an out-tree graph is an upper/lower triangular matrix with all diagonalelements being one. Matrix K is also upper/lower triangular with all diagonal entries exactly equal to 1.This follows from the fact ∆(‖ (BTCx)i ‖2) = ∆(BTCx)∆(BTCx) + ∆(BTCy)∆(BTCy). The eigenvalues of K, forboth out-trees and out-directed star graphs, are all identically equal to 1. This clearly guarantees exponentialstability of the flock to the equilibrium ‖ (BTCx)i ‖= R. �

4.2 Single Integrator, Bidirectional Communication Graph

The incidence matrix of a bidirectional graph can be written as BC =[B − B

]. B matrix is the incidence

matrix a directed graph with the same vertex set V and with an edge set comprising of unique pairs of adjacent

7

Page 8: Robotic Herding Using Wavefront Algorithm: Performance …publish.illinois.edu/shripadgade/files/2016/03/GNC-16.pdf · Robotic Herding Using Wavefront Algorithm: Performance and ...

nodes from edge set E . Single integrator flocking dynamics can be described by the dynamic equation,[xy

]= −(I2 ⊗BCWBTC)

[xy

]. (14)

where BC is the incidence matrix and W = [wii] is the weight matrix for the edges. The edge weights aresimilar to the ones used in previous section. For a bidirectional graph the edge weight matrix can be written

as W =[W 0

0 W

]. The matrix W is edge weight matrix corresponding to directed graph with incidence matrix

B.

Claim 3. In a star/tree bidirectional graph, with the incidence matrix of it subgraph that is a star or out-treegraph denoted by B, the matrix B∆(BTx) has empty null-space.

Proof: We know the general structure of B from Eqs. (12) and (13). We also know that ∆(BTx) is a diagonalmatrix. Hence, the structure of B∆(BTx) is similar to B with the ones replaced by corresponding entries ofBTx. The columns of B are linearly independent due to the identity/triangular like nature of BT2 . Note thatBT = [BT1 B

T2 ] with BT ∈ M(P×N) with BT1 ∈ M(P×1) and BT2 ∈ M(P×N−1). Hence, columns of B∆(BTx)

will also be linearly independent (column space is full rank). Thus we have proved that the matrix B∆(BTx)has an empty null space.

Theorem 2. A system governed by flocking laws given in Eq. (14), under a out tree or a directed starcommunication graph, has a globally exponentially stable equilibrium, ‖ BTCx ‖= RSafe1.

Proof: Let us consider a vector ei = ∆(‖ (BTx)i ‖2 −R2Safe)1.

ei = ∆(BTx)∆(BT x)1 + ∆(BT y)∆(BT y)1 = ∆(BTx)BT (−2BW BT )x+ ∆(BT y)BT (−2BW BT )y

= −2(∆(BTx)BT B∆(BTx) + ∆(BT y)BT B∆(BT y))∆(1/ ‖ BTx ‖2)ei = −2Kei

where K = (∆(BTx)Le∆(BTx)+∆(BT y)Le∆(BT y))∆(1/ ‖ BTx ‖2) and Le being the edge Laplacian definedas Le = BT B. We should note that ∆(BTx)Le∆(BTx) = (B∆(BTx))T (B∆(BTx)) � 0 using matrix propertythat for any real matrix X, XTX ≥ 0 and null(B∆(BTx)) is empty from Claim 3. Same argument holds for∆(BT y)Le∆(BT y) � 0. Hence the flock with the first-order dynamics under a bidirectional graph reaches theequilibrium exponentially fast. �

4.3 Double Integrator, Directed Communication Graph

Let us look at double integrator system Eq. (4) where the flocking dynamics is given by,[xy

]= −(I2 ⊗ ΓW1B

TC)

[xy

]− (I2 ⊗ ΓW2B

TC)

[xy

]−[x− xGy − yG

](15)

where W1 = ∆(1−R2/(‖ (BTCx)i ‖)2) and W2 = (IP −W−11 )[∆((BTCx)Ti (BTC x)i

)+ ∆

((BTCy)Ti (BTC y)i

)]∆(1/ ‖

BTCx ‖2)− IP are nonlinear weight matrices for position and velocity consensus loops; and Γ is the edge inputmatrix.

Claim 4. For a star graph, SP with all edges pointing towards the leaf nodes BTCΓ = IP (an identity matrix).

Proof: We know that a star graph SP is a tree with P leaves. It is easy to see that for a star graph with edgesincident from the root node towards the leaf nodes, the edge input matrix and incidence matrix can be writtenas,

Γ =

[01×PIP

]BTC =

[−11×PIP

]T=[−1P×1 IP

]. (16)

This quite easily gives us, BTCΓ = IP . �

Theorem 3. A system of agents governed by flocking dynamics given by Eq. (15) with a directed star com-munication graph, will shrink or grow to a ball around the equilibrium (‖ BTCx ‖= RSafe1) exponentially fast ifthe matrix (W2 + IP ) is positive definite at all time instants.

8

Page 9: Robotic Herding Using Wavefront Algorithm: Performance …publish.illinois.edu/shripadgade/files/2016/03/GNC-16.pdf · Robotic Herding Using Wavefront Algorithm: Performance and ...

Proof: Let us consider a vector, s =‖ (BTCx)i ‖2 −R2+ ‖ (BTC x)i ‖2. It is easy to see that when the flock is inperfect formation, the vector s decreases to 0.

s = 2[∆(BT

Cx)∆(BTC x) + ∆(BT

Cy)∆(BTC y) + ∆(BT

C x)∆(BTC x) + ∆(BT

C y)∆(BTC y)

]1

= 2∆(BTC x)

[∆(BT

Cx) + ∆(BTC x)

]1 + 2∆(BT

C y)[∆(BT

Cy) + ∆(BTC y)

]1

= 2∆(BTC x)

[BT

Cx−BTCΓW1B

TCx−BT

CΓW2BTC x−BT

C x]

+ 2∆(BTC y)

[BT

Cy −BTCΓW1B

TCy −BT

CΓW2BTC y −BT

C y]

= −2∆(BTC x)

[(I −W−1

1 )∆(BTCx)W11− (W2 + I)BT

C x]− 2∆(BT

C y)[(I −W−1

1 )∆(BTCy)W11− (W2 + I)BT

C y]

= −2(I −W−11 )

[∆(BT

C x)∆(BTCx) + ∆(BT

C y)∆(BTCy)

]∆(

1

‖ BTCx ‖2

)(‖ (BTCx)i ‖2 −R2)− 2(W2 + I) ‖ (BT

C x)i ‖2

= −2(W2 + I)s

The vector s goes to zero exponentially fast, if the matrix (W2 + I) = (I −W−11 )∆((BTCx)Ti (BTC x)i

)∆(1/ ‖

BTCx ‖2) has positive eigenvalues. The matrix (W2+I) is positive definite if either the whole flock is contractingto the equilibrium or the whole flock is expanding to the equilibrium. A flock contracting to equilibrium impliesall edges in the corresponding graph have a length greater than R and all lengths are decreasing. In this casethe matrices (I −W−11 ) and ∆

((BTCx)Ti (BTC x)i

)are both negative definite. A flock expanding to equilibrium

implies all edges in the corresponding graph have a length smaller than R and all lengths are increasing. Herethe matrices (I −W−11 ) and ∆

((BTCx)Ti (BTC x)i

)are both positive definite. �

5 Stability of n-Wavefront Algorithm

Let us consider a flock of N birds moving in a 2-dimensional Euclidean space (R2). This analysis can very easilybe also done for a 3-dimensional Euclidean space, however, we choose a 2-D space due to ease of visualization ofthe results. The x-coordinates (and y-coordinates correspondingly) of birds are stacked together and denotedby x (and y). It is an objective of the robotic pursuer UAV to herd the flock to the safe point or herding goaldenoted by (XS , YS). The x-coordinates (and y-coordinates correspondingly) of birds from a transformed framecentered at (XF, YF) are denoted by (x, y). Equilibrium formation (XF, YF) is constructed around the safepoint such that the centroid of the equilibrium formation coincides with (XS , YS). Similarly pursuer locationin the new frame is represented by (xp, yp) while the goal location for the flock is given by (xG, yG). For thesake of simplicity, and with abuse of notation we will denote dot product with the inner product notation (i.e.dot(a,b) =< a,b >). These definitions can be summarized as,

x = x−XF, ˙x = x, xp = xp −XF, ˙xp = xp, xG = xG −XF, (17)

y = y − YF, ˙y = y, yp = yp − YF, ˙yp = yp, yG = yG − YF (18)

XS =1TXF

N, YS =

1TYFN

. (19)

The location of birds is denoted by q =

[xy

](and correspondingly ˙q, qG, qF and qp are defined). The flocking

dynamics for a flock of single integrator birds is given by,

˙q = −k1 (I2 ⊗BCWBTC)q− k1 (I2 ⊗BCWBTC)qF − k2 (q− qG) + k3 ΓpWpΓTp (q− qp). (20)

where, k1 = Ksep, k2 = Kgoal and k3 = kfear are constant gains similar to the gains in Eq. (5).

Theorem 4. For a flock governed by dynamics given in Eq. (20), there exists a n-Wavefront strategy, specifiedby,

δ <k2R

k1λmax(BCBTC) + k2(21)

and θp such that xi(xp−xi)+yi(yp−yi) > 0 ∀ i ∈ ACTN, that asymptotically herds the flock to an equilibriumformation centered at safe point/herding goal.

Proof: We start with a Lyapunov function V (q) = 1/2 (qT q) = 1/2 (xT x+yT y). It is clear from its definition,that V (02N×1) = 0 and V (q) > 0, ∀ q 6= 02N×1.

9

Page 10: Robotic Herding Using Wavefront Algorithm: Performance …publish.illinois.edu/shripadgade/files/2016/03/GNC-16.pdf · Robotic Herding Using Wavefront Algorithm: Performance and ...

For the system to be asymptotically stable, i.e. the flock to move to an equilibrium formation around thesafe point/herding goal, we will have to show that V (q) < 0, ∀ q 6= 02N×1.

V (q) = xT ˙x + yT ˙y

= −k1qT (I2 ⊗BCWBTC)q− k1qT (I2 ⊗BCWBTC)qF − k2qT (q− qG) + k3 qTΓpWpΓTp (q− qp)

= −qT (I2 ⊗ (k2I + k1BCWBTC))q− k1qT (I2 ⊗BCWBTC)qF − k2 qT qG − k3 qTΓpWpΓTp (qp − q) (22)

A wavefront based control strategy interacts only with boundary birds. Presence of a pursuer close to theboundary introduces a stress in some of the flock edges, since as the boundary agents are repelled from thepursuer they start pushing into the flock. This causes some of the terms in diagonal W matrix to becomenegative. We will assume the worst case scenario, i.e. the stress propagates to the entire flock instantaneously.

qT (I2 ⊗ (k2I + k1BCWBTC))q ≤ (k2 − k1δ

R− δλmax(BCB

TC))qT q = ζqT q (23)

ζ , k2 − k1δ

R− δλmax(BCB

TC) > 0 =⇒ −qT (I2 ⊗ (k2I + k1BCWBTC))q < 0 (24)

Hence, we get the first term in Eq. (22) to be less than zero. We can bound the second term in Eq. (22). Since(XF, YF) is an equilibrium formation it is easy to see (BTCXF) ≤ RSafe and (BTCYF) ≤ RSafe. Let us consider a

vector f ∈MN×1 with |fi| ≤ 1 such that (BTCXF) = fiRSafe and (BTCYF) = ±√

1− f2i RSafe.

−k1qT (I2 ⊗BCWBTC)qF ≤ −k1RqTBC(− δ

R− δ)fi − k1RqTBC(− δ

R− δ)√

1− f2i (25)

≤ 2k1δR

R− δ(1T x + 1T y) (26)

The last term will in Eq. (22) will be negative if < q, qp − q >< 0. This implies that the pursuer shouldbe in the intersection of set of halfspaces Hi. These halfspaces are created by drawing supporting hyperplanes(∂Hi , {s ∈ R2 :< s− qi, qi >= 0}) at each of the boundary agent, such that the pursuer and the flock centroidare on opposite sides of the hyperplanes. Typically the value of k3 is much larger than k2. Also, wavefrontalgorithm interacts with several birds on the boundary at the same time it essentially adds to the last term.We also know that qG is a bounded quantity (cannot grow arbitrarily large) and typically will depend on the

visibility of birds. It is then easy to see that for k3 >2δk1q

T 1+k2qT qG

qT (q−qp), the last three terms in Eq. (22) will sum

to be negative.Using the above arguments, it is easy to see that V (q) < 0 everywhere. Utilizing Lyapunov theorem for

asymptotic stability (Theorem 4.1 in [[34]]) we show that the flock converges asymptotically to an equilibriumformation qF centered at herding goal/safe point. �

Since the choice of δ is bounded, we know that the closest that the pursuer can go to boid is (RFear− δ). Itis easier to move to a polar coordinate frame (centered at the flock centroid) to extract and visualize a pursuit

- Flock Center

(a) Herding parameters δ and θp

−5 0 5 10 15 20 25

0

5

10

15

20

Boundary Agents

Equilibrium Formation

Herding Goal

ACTN

(b) Magenta track refers to the admissible pursuer position

Figure 5: Herding using the n-Wavefront Strategy

10

Page 11: Robotic Herding Using Wavefront Algorithm: Performance …publish.illinois.edu/shripadgade/files/2016/03/GNC-16.pdf · Robotic Herding Using Wavefront Algorithm: Performance and ...

−5 0 5 10 15 20 25−5

0

5

10

(a) Formation - SI-DG-TREE

0 1 2 3 4 5 6 7−1

0

1

2

3

4

5

6

7

8

Edge 1

Edge 2

Edge 3

Edge 4

Edge 5

Edge 6

Exp. Bound = 8e−3t/2

(b) Edge Error - SI-DG-TREE

2 4 6 8 10 12 14 16 18 20−4

−2

0

2

4

6

8

10

12

14

16

(c) Formation - SI-BG-TREE

0 0.5 1 1.5 2 2.5 3−1

0

1

2

3

4

5

6

7

8

Edge 1

Edge 2

Edge 3

Edge 4

Edge 5

Edge 6

Exp. Bound = 8e−3t/2

(d) Edge Error - SI-BG-TREE

−15 −10 −5 0 5 10−10

−8

−6

−4

−2

0

2

4

6

8

10

(e) Formation - DI-DG-STAR

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9−2

0

2

4

6

8

10

Edge 1

Edge 2

Edge 3

Edge 4

Edge 5

Edge 6

Exp. Bound = 10e−3t/2

(f) Edge Error - DI-DG-STAR

Figure 6: Numerical simulations show exponential stability. SI - Single Integrator, DI - Double Integrator, DG- Directed Graph, BG - Bidirectional Graph and Blue - Initial Location, Red - Final Location.

law given in the above theorem. Figure 5(a) shows the definition of pursuer push (δ) and angle of approach

11

Page 12: Robotic Herding Using Wavefront Algorithm: Performance …publish.illinois.edu/shripadgade/files/2016/03/GNC-16.pdf · Robotic Herding Using Wavefront Algorithm: Performance and ...

(θp).

xi = XC + ΦFD/2 cos(θi), yi = YC + ΦFD/2 sin(θi), (27)

xp = XC + (RFear + ΦFD/2− δ) cos(θp), yp = YC + (RFear + ΦFD/2− δ) sin(θp), (28)

xi(xp − xi) + yi(yp − yi) > 0 ∀ i ∈ ACTN (29)

(rp, θp) is the pursuer location with respect to the flock centroid, where rp = RFear + ΦFD/2 − δ and θp isbounded by halfspaces (Hi) discussed in the proof above. The above proof guarantees that we herding theflock to a specific point (Goal 1). The NWA algorithm involves a bounded push to the flock, moreover theinteraction is based on both the push distance and the flock diameter. This property essentially ensures thatwe satisfy Goal 2 and Goal 3.

Figure 5(b) shows a test scenario. The flock is bounded in the blue circle, with the blue dots denoting theboundary agents. The flock centroid needs to be herded to the herding goal given by location (0, 0) denotedby a green circle. The flock is pushed towards a target equilibrium formation shown by a green circle, withgreen dots. The pursuer interacts with the set of boundary nodes, selected using the n-Wavefront strategy [1],shown by blue asterisk. A visualization for the possible pursuer positions (trajectory) by using conditions fromTheorem 4. This feasible zone is denoted by a magenta track. We know from Theorem 4, that as long as thepursuer lies on the magenta track, it will herd the flock asymptotically to the equilibrium formation.

6 Simulation Results

Numerical simulations are performed to see flock stability based on Theorems 1, 2, 3. We start with a statictree/star graph and N = 7 birds with P = 6 edges in the flock. The flock is initialized with random edgelength. The desired inter-agent separation in the flock is set to 10 units. Figure 6 shows the initial and finallocations of the birds and the edge error propagation over time. In each of the edge error plots we can boundthe error by an exponential upper bound, thus verifying exponential stability. Note that in the case of doubleintegrator system with directed star graph (Figure 6(f)), the system goes exponentially fast to a ball aroundthe equilibrium, and hence the error does not go down exactly to zero.

We also present numerical simulation for robotic herding. We consider a system with single integratoragents moving under a static bidirectional graph and N = 7 birds with P = 24 edges in the flock. The flockis initialized at a formation with slightly perturbed edge length. The ACTN set at each timestep is selectedbased on NWA with herding goal heuristic. The flocking parameters (in Eq. (20)) are set to be, R = 2 units,k1 = 1, k2 = 0.1, and k3 = 5. Two problem scenarios are considered; Case - 1: The herding goal is setat (XS , YS) = (0, 0) and the global goal is set at (XG, YG) = (0, 10), Case - 2: The herding goal is set at(XS , YS) = (0, 10) and the global goal is set at (XG, YG) = (0, 0). The pursuer location is just the midpoint ofthe feasible set (magenta track represents the feasible pursuer location in Figure 5(b)). We select δ to be 0.8times of the bound from Sec.5 i.e. δ = 0.8(k2R/(k1λmax(BCB

TC) + k2)). Figure 7 shows the successful herding

of the flock in both cases. The simulation is terminated after 10000 steps with each time step being equal to0.01. The flock reaches very close to the desired equilibrium formation. The pursuit trajectory, shown as amagenta line in Figures 7(a) and 7(b), shows the collect and drive behavior seen in NWA based pursuit [1].Figures 8(a) and 8(b) show the trajectories of the flock centroid as a function of time while Figures 8(e) and 8(f)represent the flock diameter. Together both metrics show that the flock remains away from the protected zone.An increase in the flock diameter is seen in Case 1 simulation, however note that it does not grow unboundedand it settles to a smaller value quickly. Figures 8(c) and 8(d) show the distance to the protected zone as afunction of time. Performance of the NWA algorithm as characterized by the herding metrics is visualized inFigure 8, and it shows successful herding of the flock.

7 Conclusions

This paper addressed the problem of diverting flocks of birds away from stipulated areas such as airports.The paper examined the stability of the flock under as well as without excitation by the pursuer. It wasshown that flocks with first order dynamics and directed star/tree communication topologies converge to aformation exponentially fast. It was also shown that a flock with second order dynamics under a directedstar communication topology will contract or expand to a formation exponentially fast. Numerical simulationresults were used to verify the exponential convergence of flocks. It was shown that the n-Wavefront algorithmherds the flock to the herding goal (an equilibrium formation around it) asymptotically. We provide an upperbound on the push/intrusion stimulus of the pursuer and bounds on the collecting motion of the pursuer that

12

Page 13: Robotic Herding Using Wavefront Algorithm: Performance …publish.illinois.edu/shripadgade/files/2016/03/GNC-16.pdf · Robotic Herding Using Wavefront Algorithm: Performance and ...

guarantee stable herding using the n-Wavefront algorithm. Stable herding behavior was shown in numericalsimulation using the NWA and the stability conditions derived in Theorem 4.

−2 0 2 4 6 8 10 12 14 16 18−4

−2

0

2

4

6

8

10

12

14

16

(a) Case - 1

−5 0 5 10 15 200

2

4

6

8

10

12

14

(b) Case - 2

Figure 7: Numerical simulations show herding by a pursuer. Blue Circles - Initial Formation, Red Circles -Final Formation, Green Circles - Target Formation, Black Circle - Global Goal (Global Steering).

13

Page 14: Robotic Herding Using Wavefront Algorithm: Performance …publish.illinois.edu/shripadgade/files/2016/03/GNC-16.pdf · Robotic Herding Using Wavefront Algorithm: Performance and ...

0 5 10 15−2

0

2

4

6

8

10

12

14

16

XC Trajectory

XG

XS

XC at t = 0

XC at t = 2000

(a) Case 1: Flock Centroid Trajectory

0 5 10 150

1

2

3

4

5

6

7

8

9

10

XC Trajectory

XG

XS

XC at t = 0

XC at t = 2000

(b) Case 2: Flock Centroid Trajectory

0 200 400 600 800 1000 1200 1400 1600 1800 20000

2

4

6

8

10

12

14

16

18

20

Time

Dis

tan

ce t

o X

G

Distance to XG

Desired Distance to XG

(c) Case 1: Distance to XG v/s time

0 200 400 600 800 1000 1200 1400 1600 1800 20000

2

4

6

8

10

12

14

16

18

20

Time

Dis

tan

ce t

o X

G

Distance to XG

Desired Distance to XG

(d) Case 2: Distance to XG v/s time

0 200 400 600 800 1000 1200 1400 1600 1800 20000

1

2

3

4

5

6

7

8

9

10

Flo

ck D

iam

ete

r

Time

DFD

max(DFD

)

min(DFD

)

mean(DFD

)

(e) Case 1: Flock Diameter v/s time

0 200 400 600 800 1000 1200 1400 1600 1800 20000

1

2

3

4

5

6

7

8

9

10

Flo

ck D

iam

ete

r

Time

DFD

max(DFD

)

min(DFD

)

mean(DFD

)

(f) Case 2: Flock Diameter v/s time

Figure 8: Herding metrics show the performance of the herding algorithm.

Acknowledgments

This work was supported by the National Science Foundation Career Award NSF IIS-1253758.

14

Page 15: Robotic Herding Using Wavefront Algorithm: Performance …publish.illinois.edu/shripadgade/files/2016/03/GNC-16.pdf · Robotic Herding Using Wavefront Algorithm: Performance and ...

References

[1] S. Gade, A. A. Paranjape, and S.-J. Chung, “Herding a Flock of Birds Approaching an Airport Using anUnmanned Aerial Vehicle,” in AIAA Guidance, Navigation, and Control Conference. Kissimmee, FL:AIAA, January 2015. [Online]. Available: http://dx.doi.org/10.2514/6.2015-1540

[2] J. R. Allan, “The Costs of Bird Strike and Bird Strike Prevention,” in Human Conflicts with Wildlife:Economic Considerations, 2000.

[3] N. S. Sodhi, “Competition in the air: birds versus aircraft,” The Auk, vol. 119, no. 3, pp. 587–595, 2002.

[4] “FAA Wildlife Strike Database,” http://wildlife.faa.gov/, Federal Aviation Administration, [Retrieved:25 May, 2015]. [Online]. Available: http://wildlife.faa.gov/

[5] “Wildlife Strikes to Civil Aircraft in the United States 1990 - 2013,” Federal Aviation Administration,July 2014, national Wildlife Strike Database Serial Report Number 20.

[6] International Bird Strike Committee, “Standards for aerodrome bird/Wildlife control,” RecommendedPractices No. 1, 2006.

[7] R. E. Harris and R. A. Davis, “Evaluation of the efficacy of products and techniques for airport birdcontrol,” LGL Limited for Aerodrome Safety Branch, Transport Canada, 1998.

[8] “How Radar Could Prevent Aircraft Bird Strikes,” http://www.businessinsider.com.au/how-radar-could-prevent-plane-bird-strikes-2014-9, [Retrieved: 12 January, 2016].

[9] “US Airways Flight 1549,” https://en.wikipedia.org/wiki/US Airways Flight 1549, [Retrieved: 12 Jan-uary, 2016].

[10] “Falcons help keep clear skies over McGuire Air Force Base,”http://www.nj.com/news/mustsee/index.ssf/2009/04/falconshelp keep clear skies.html, [Retrieved: 12 January, 2016].

[11] “Green X to Demonstrate Robird Bird Strike Control at EC UAS Panel Workshop at Eurocontrol inSeptember,” http://www.uasvsion.com/2011/08/31/green-x-to-demonstrate-robird-bird-strike-control-at-ec-uas-panel-workshop-at-eurocontrol-in-september/, [Retrieved: 12 January, 2016].

[12] “Airport Bird Control,” http://www.scarecrow-bird-control.com/airport-bird-control/, [Retrieved: 12 Jan-uary, 2016].

[13] R. Vaughan, N. Sumpter, J. Henderson, A. Frost, and S. Cameron, “Experiments in automatic flockcontrol,” Robotics and Autonomous Systems, vol. 31, no. 1, pp. 109–117, 2000.

[14] J.-M. Lien, B. Bayazit, R. T. Sowell, S. Rodriguez, and N. M. Amato, “Shepherding behaviors,” in Pro-ceedings of IEEE International Conference on Robotics and Automation, 2004, vol. 4. IEEE, 2004, pp.4159–4164.

[15] J.-M. Lien, S. Rodriguez, J.-P. Malric, and N. M. Amato, “Shepherding behaviors with multiple shepherds,”in Proceedings of IEEE International Conference on Robotics and Automation, 2005. IEEE, 2005, pp.3402–3407.

[16] M. Haque, A. Rahmani, and M. Egerstedt, “A hybrid, multi-agent model for foraging bottlenose dolphins,”in Analysis and Design of Hybrid Systems, University of Zaragoza, Spain, 2009, pp. 262 – 267.

[17] M. A. Haque, A. R. Rahmani, and M. B. Egerstedt, “Biologically inspired confinement of multi-robotsystems,” International Journal of Bio-Inspired Computation, vol. 3, no. 4, pp. 213–224, 2011.

[18] D. Strombom, R. P. Mann, A. M. Wilson, S. Hailes, A. J. Morton, D. J. Sumpter, and A. J. King, “Solvingthe shepherding problem: heuristics for herding autonomous, interacting agents,” Journal of The RoyalSociety Interface, vol. 11, no. 100, p. 20140719, 2014.

[19] R. Olfati-Saber and R. M. Murray, “Consensus Problems in Networks of Agents With Switching Topologyand Time-Delays,” IEEE Transactions on Automatic Control, vol. 49, no. 9, pp. 1520–1533, 2004.

15

Page 16: Robotic Herding Using Wavefront Algorithm: Performance …publish.illinois.edu/shripadgade/files/2016/03/GNC-16.pdf · Robotic Herding Using Wavefront Algorithm: Performance and ...

[20] R. Olfati-Saber, “Flocking for multi-agent dynamic systems: Algorithms and theory,” IEEE Transactionson Automatic Control, vol. 51, no. 3, pp. 401–420, 2006.

[21] H. G. Tanner, A. Jadbabaie, and G. J. Pappas, “Flocking in fixed and switching networks,” IEEE Trans-actions on Automatic Control, vol. 52, no. 5, pp. 863–868, 2007.

[22] A. Jadbabaie, J. Lin, and A. S. Morse, “Coordination of groups of mobile autonomous agents using nearestneighbor rules,” IEEE Transactions on Automatic Control, vol. 48, no. 6, pp. 988–1001, 2003.

[23] S.-J. Chung, S. Bandyopadhyay, I. Chang, and F. Y. Hadaegh, “Phase synchronization control of complexnetworks of lagrangian systems on adaptive digraphs,” Automatica, vol. 49, no. 5, pp. 1148–1161, 2013.

[24] M. Zheng, Y. Kashimori, O. Hoshino, K. Fujita, and T. Kambara, “Behavior pattern (innate action) ofindividuals in fish schools generating efficient collective evasion from predation,” Journal of TheoreticalBiology, vol. 235, no. 2, pp. 153–167, 2005.

[25] F. R. Chung, Spectral Graph Theory, ser. CBMS Regional Conference Series. Conference Board of theMathematical Sciences, no. no. 92.

[26] R. Diestel, Graph Theory, ser. Graduate texts in mathematics. Springer, 2006. [Online]. Available:https://books.google.com/books?id=aR2TMYQr2CMC

[27] R. Bapat, Graphs and Matrices, ser. Universitext. Springer London, 2014. [Online]. Available:https://books.google.com/books?id=LWCSBAAAQBAJ

[28] D. B. West, Introduction to Graph Theory. Prentice hall Upper Saddle River, 2001, vol. 2.

[29] M. Fiedler, “Algebraic connectivity of graphs,” Czechoslovak mathematical journal, vol. 23, no. 2, pp.298–305, 1973.

[30] D. Zelazo, A. Rahmani, and M. Mesbahi, “Agreement via the Edge Laplacian,” in Proceedings of the IEEEConference on Decision and Control, 2007. IEEE, 2007, pp. 2309–2314.

[31] A. Rahmani, M. Ji, M. Mesbahi, and M. Egerstedt, “Controllability of multi-agent systems from a graph-theoretic perspective,” SIAM Journal on Control and Optimization, vol. 48, no. 1, pp. 162–186, 2009.

[32] C. W. Reynolds, “Flocks, Herds and Schools: A Distributed Behavioral Model,” ACM SIGGRAPH Com-puter Graphics, vol. 21, no. 4, pp. 25–34, 1987.

[33] A. A. Paranjape, K. C. Meier, X. Shi, S.-J. Chung, and S. Hutchinson, “Motion primitives and 3d pathplanning for fast flight through a forest,” The International Journal of Robotics Research, vol. 34, no. 3,pp. 357–377, March 2015.

[34] H. Khalil, Nonlinear Systems, ser. Pearson Education. Prentice Hall, 2002.

16