Skip to content

Basis

Introduction

"The whole is more than the sum of its parts." by Aristotle

Multiple Vehicles [1,2]

For millions of years, nature has presented examples of collective behavior in groups of insects, birds, and fish. This behavior has arisen to permit sophisticated functions of the group that cannot be achieved by individual members.

Collective behavior serves needs such as foraging for food, defense against predators, aggression against prey, and mating. Fish and birds particularly, as part of their group behavior, often display formation-type behavior. In this type of behavior, the relative positions of the fish or birds are preserved, and the formation moves as a cohesive whole.

Nature is inspiring humans to engineer multi-agent systems that mimic this distributed, coordinated behavior. The agents in such engineering systems are not living beings, but machines such as robots, vehicles, and/or mobile sensors. With this inspiration, formations of robots and autonomous or piloted vehicles are being deployed to tackle problems in both the civilian and military spheres, such as bush-fire control, surveillance, and underwater exploration. For various reasons, a formation of vehicles may constitute a more effective sensor than a single vehicle:

  1. Some tasks inherently require multiple sensors with known relative positions. For example, in 3D, when distances to an object of interest are measured, to determine the position of that object, at least 4 distance measurements from noncoplanar sensors with known positions are needed to uniquely localize the object, that is, to determine its position.
  2. Multiple sensors may have individually differing functionalities, which in aggregate give a new functionality to the sensor formation. For example, a group of UAV may include radio-frequency direction-sensing sensors on some vehicles and optical sensors on others, to allow target localization and target identification by the entire formation.
  3. Small, mobile sensors are often less expensive to deploy than a single large sensor.
  4. Multiple mobile sensors can cover a region of interest more quickly than a single sensor when the sensing range is too small to allow the whole region to be scanned from one position.

In conclusion, more efficient and complex task execution, robustness when one or more agents fail, scalability, versatility, adaptability, and lower cost.

Formation control and network localization are two fundamental tasks for multiagent systems that enable them to perform complex missions.

Formation Control [1,8]

From a control point of view, tasks are specified at both the level of the whole formation, determining, for example, way points for a path that the center of gravity of the formation is commanded to follow, as well as for the individual agents of the formation, such as maintaining their relative positions, or shifting from one formation shape to another formation shape. Certainly in formations occurring in nature, and commonly in synthetic formations, there is no single master agent exercising control over all other agents. Control tasks in some way are handled on a decentralized basis.

In meeting these objectives, various systems problems arise. The most basic problem is defining practical architectures for control, communications, and sensing. Suitable architectures, however, cannot be defined independently of one another. An overarching requirement is that architectures be scalable. The scalability requirement imposes the need for significant decentralization of information and controller structures. For example, in a formation of birds, no one bird can be expected to watch all of the other birds and compute its own trajectory using even partial knowledge of the trajectories of all of the other birds. Hence the amount of sensing, communication, and control computation by any one agent must be limited.

The goal of formation control is to direct each agent using local information from neighboring agents so that the entire team forms a desired spatial geometric pattern. While the notion of a formation as a geometric pattern has a natural meaning for robotic systems, it may also correspond to more abstract configurations for the system state of a team of agents.

Network Localization [8]

The goal of network localization is to estimate the location of each agent in a network using locally sensed or communicated information from neighboring agents. Network localization is usually the first step that must be completed before a sensor network provides other services, such as positioning mobile robots or monitoring areas of interest.

Graph Rigidity Theory [2]

Graph theory is a natural tool for describing the multi-agent formation shape as well as the inter-agent sensing, communication, and control topology in the decentralized case. This note is based on an important subset of this theory—rigid graph theory—since it naturally ensures that the inter-agent distance constraints of the desired formation are enforced through the graph rigidity. This implicitly ensures that collisions between agents are avoided while acquiring the formation.

We use the concept of graph rigidity as an abstraction of the rigidity of physical structures. In our case, the “vertices” of the “structure” are the agents and the “bars” connecting the vertices are the inter-agent distance constraints imposed by the desired formation. Within this framework, it is convenient to treat each agent as a point.

Preliminary: Graph Theory [4,5]

Please make sure you are familiar with the concept of graph

Consider an undirected graph with m edges and n vertices, denoted by G=(V,E) with vertex set V={v1,,vn}={1,2,,n} and edge set EV×V. The neighbor set Ni is defined as Ni:={jV:(i,j)E}

Definition: complete graph

A graph G is said to be complete if every pair of distinct vertices is connected by an edge, i.e., m=n(n1)2. A complete graph with n vertices is symbolized by Kn

Definition: path

A path is a trail that goes from an origin vertex to a destination vertex by traversing edges of the graph.

Definition: connected

Two vertices i and j are said to be connected if there exists a path between these vertices. A graph is connected if there is a path between every pair of vertices of G.

  • the vertex set: the robots (and we may use the word agent interchangeably in the context)
  • the edge set: the communication links between different robots

The incidence matrix: H={hkj}Rm×n, whose entries are defined as (with arbitrary edge orientations)

hkj={1,the k-th edge sinks at node j1,the k-th edge leaves at node j0,otherwise

For a connected and undirected graph, one has:

  • rank(H)=n1
  • null(H)=span{1n}.

Define HoRn×m as:

[Ho]ij={1,if ek=(vi,vj)E (outgoing edge)0,otherwise.

The adjacency matrix: A(G), a symmetric n×n matrix encoding the vertex adjacency relationships, with entries

Aij={1,{i,j}E0otherwise
  • Aij=Aji

The Laplacian matrix: L(G):

L(G)=HH=diag(A1)ALij={j=1nAij=|Ni|,i=jAij=1 or 0,ij,=1 if (i,j)E.

Lemma: Properties of Laplacian matrix

  • L(G) is orientation-independent
  • L(G) is symmetric and positive semidefinite
  • j=1nLij=0,i=1,,n.
  • If G is connected, then L(G) has one and only one zero eigenvalue, with null(L(G))=span{1}
  • rank(L(G))=n1 with 0 being a simple eigenvalue of L(G) if and only if the directed graph G contains a (directed) spanning tree
  • xLx={i,j}EAij(xixj)2 where x is a column vector

Definition: induced subgraph

For a graph G=(V,E), let V be a subset of V, then the subgraph of G induced by V is the graph G=(V,E) where E includes all those edges of E that are incident on a vertex pair in V.

Framework [2]

Definition: Framework

A framework is simply a realization of a graph at given points in Euclidean space. Specifically, if piRd is the coordinate of vertex i w.r.t. some fixed coordinate frame, then a framework F is a pair (G,p) where configuration p=[p1,,pn]Rdn. We will use the notation F=(G,p) to denote that framework F is composed of graph G with coordinates p.

The importance of a framework is that it can model a physical structure. That is, consider the so-called “bar-and-joint” framework, which is a structure made of rigid bars joined at their ends by universal joints. A bar-and-joint framework can be used to describe a wide range of static and dynamic structures, such as bridges, mechanical linkages, and biological molecules.

In 2D, treat pi=[pix,piy]R2,i1,2,,n as the position of node i. The stacked vector p=[p1,p2,,pn] represents the position configuration for all the n nodes. By introducing the matrix H¯:=HI2R2m×2n, one can construct the edge space as an image of H¯ from the position vector p:

(1)z=H¯p

with zk=[zkx,zky]R2 being the relative position vector pjpi for the vertex pair defined by the k-th edge. In the following, two notations, zk and zkij will be used interchangeably to denote the k-th edge which links agent i and agent j.

Introduce:

Z(z)=diag(z1,z2,,zm)R2m×m

denote block diagonal matrix of the relative position.

The edge function (Specific for distance rigidity function denoted as dG(p)) rG(p):R2nRm associated with the framework (G,p) is defined as:

(2)rG(p)=[,pipj2,]=Z(z)z,(i,j)E.

where the norm is the standard Euclidean norm, and the k-th component in rG(p),pipj2, corresponds to the square length of edge zk.

Rigidity Theory [1,2]

Rigidity Graphs

Characterized by rigid body

Given a bar-and-joint framework, a fundamental question is whether it is rigid or not. By rigidity, we mean the non-deformation of the structure.

Roughly speaking, a formation is rigid if its only smooth motions are those corresponding to translation or rotation of the whole formation

Definition: Translation and Rotation of a rigid body

A rigid body is said to be in translation if all points forming the body move along parallel paths (straight or curvilinear). A rigid body is said to be in rotation if all points move in parallel planes along circles centered on a same axis that intersects the body.

If the axis of rotation does not intersect the rigid body, the motion is usually called a revolution or orbit. This type of motion (in fact, any type of rigid body motion) can be decomposed into a translation superimposed on a rotation. That is, the above definitions allow one to decouple pure translation from pure rotation. Recall from rigid body kinematics that given body-fixed points p and O (see Figure 1.7), the following relationship holds

(3)ρ˙=R˙+ω×r

where ωR3 denotes the angular velocity of the rigid body about an arbitrary axis R^ passing through point O and {x,y,z} is an inertial coordinate frame.

Motion of rigid body
Figure 0: Rigid body kinematics.

Definition: Equivalent & Congruent

Two frameworks (G,p) and (G,p^) with G=(V,E) are:

  • Equivalent: if pipj=p^ip^j for all (i,j)E, i.e., the edge function (2) is the same;
  • Congruent: if pipj=p^ip^j for all i,jV (with ij), i.e., all distances between vertices are the same (such (i,j) pairs is always n(n1)/2);

Note that congruency implies equivalency, but the reverse is not necessarily true.

Definition: isometry

An isometry of Rm is a bijective map TRmRm such that

T(x)T(y)=xy,x,yRm.

Note that T accounts for rotation and/or translation of the vector x,y.

Two frameworks (G,p) and (G,p^) are said to be isomorphic in Rd if they are related by an isometry in Rd. It is not difficult to see that isomorphic frameworks are congruent. We denote the set of all frameworks that are isomorphic to F by Iso(F).

Definition

A motion of a framework F=(G,p) with G=(V,E) is a continuous family of equivalent frameworks F(t) for t[0,1] where F(0)=F. That is, each point pi,iV moves along a continuous trajectory pi(t) while preserving the distances between points connected by an edge:

(4)pi(t)pj(t)=pipj,(i,j)E.

This leads us to the following definition of rigidity.

Definition: rigidity

A framework F=(G,p) is rigid in Rd if all of its motions satisfy pi(t)=T(pi),iV , and t[0,1], i.e., the family of frameworks F(t) is isomorphic.

On the other hand, the framework is flexible in Rd if and only if it is possible to continuously move its vertices to form an equivalent but non-congruent framework.

Chacaterized in Combination

Counting-type conditions related to the graph can be used to ascertain the rigidity or nonrigidity of a generic formation corresponding to the graph.

At first, define the Laman graph.

Definition: Laman Graph

A graph G=(V,E) is Laman if |E|=2|V|3 and every subset of k2 vertices spans at most 2k3 edges.

The above is a combinatorial definition of Laman graphs. Its intuition is that the edges should be distributed evenly in a Laman graph.

Laman graphs may also be characterized by the Henneberg construction shown in the next 3 sections.

Laman's Theorem

A graph G=(V,E) modeling a formation in 2D with n vertices and m edges is rigid if and only if there exists a subgraph G=(V,E) with 2n3 edges such that for every subset V of V , the induced subgraph G=(V,E) of G satisfies |E|2|V|3.

If a graph G=(V,E) modeling a formation in 3D of n vertices and m edges is rigid then

  • there exists a subgraph G=(V,E) with 3n6 edges such that, for every subset V of V , the induced subgraph G=(V,E) of G satisfies |E|3|V|6
  • if |E|=3|V|6, then G is 3-connected (equivalently, every pair of vertices of G is connected by three paths that pairwise have no vertices in common except the end vertices).

Characterized in Linear Algebra

First, embed the graph G into 2-D space

Definition: (global) rigidity

A framework (G,p) is rigid in R2 if there exists a neighborhood U of p such that rG1(rG(p))U=rK1(rK(p))U, where K is the complete graph with the same vertex set as G.

Two frameworks (G,p) and (G,p¯) are equivalent if rG(p)=rG(p¯) and are congruent if pipj=p¯ip¯j for all i,jV.

Now give the definition of regular point[7].

For a smooth map f:XY where X and Y are smooth manifolds, we denote the derivative of f at xX by df(x). Let k=max{rank(df(x)) : xX}. We say that xX is a regular point of f if rank(df(x))=k and a singular point otherwise.

Proposition 1

Let f:RnRm be a smooth map and k=max{rank(df(x)):xRn}. If x0Rn is a regular point of f, then the image under f of some neighborhood of x0 is a k-dimensional manifold.

Details of Proof

Let f=(f1,f2) where f1 consists of the first k coordinate functions of f and assume that rank(df1(x0))=k. Since rank(df1)=k in a neighborhood of x0, the Inverse Function Theorem yields local coordinates at x0 such that f1(x1,x2)=x1. Thus in local coordinates

df=[I0f2x1f2x2]

Since rank(df)=k near x0,f2/x2=0 near x0. Hence f2(x1,x2)=g(x1) and therefore f(x1,x2)=(x1,g(x1)) near x0. Thus f maps some neighborhood of x0 onto the graph of g which is a k-dimensional manifold.

It follows that if p is a regular point of fG, then fG1(fG(p)) is a manifold of co-dimension k near p. In this case, the construction of a smooth path in non-rigid implies flexible of Proposition 1 is straightforward since near p we then have that fK1(fK(p)) is a proper submanifold of fG1(fG(p)).

Finally, a subset M of Rd is said to be an affine set if M contains the entire line through each pair of distinct points in M. The dimension of an affine set M in Rd is defined to be the dimension of the subspace MM={xy:x,yM} parallel to M and the affine hull of a set SRd is the smallest affine set containing S. For p=(p1,,pn)Rdn, let dimp be the dimension of the affine hull of {p1,,pn}.

Theorem 0

Let G be a graph with n vertices, m edges, and edge function fG : RdnRm. Suppose that pRdn is a regular point of fG. Then the graph G(p) is rigid in Rd if and only if

rank(dfG(p))=dn(dimp+1)(2ddimp)/2,

and G(p) is flexible in Rd if and only if

rank(dfG(p))<dn(dimp+1)(2ddimp)/2.

TODO

Infinitesimal Rigidity

Although our physical intuition can indicate if certain frameworks are rigid or not, in general it is difficult to determine rigidity from the definition characterized by rigid body. Therefore, we will consider a related notion of rigidity called infinitesimal rigidity, which can be easily verified via a matrix rank.

In general, rigidity does not imply infinitesimal rigidity, but infinitesimal rigidity implies rigidity. Frameworks that are rigid but not infinitesimally rigid usually have collinear or parallel edges.

For so-called generic frameworks, rigidity is equivalent to infinitesimal rigidity. When a framework F=(G,p) is generic, then almost all of its realizations have the same rigidity property under small perturbations on p. As a result, generic rigidity is a property only of the underlying graph G, i.e., it is independent of almost all p. The term “almost all” is used to exclude certain degenerate configurations, such as frameworks that lie in a hyperplane.

For example, The planar framework in Figure below is nongeneric in R2 since vertices 1,2,3,4 are collinear.

Nongeneric framework
Figure 0.5: A nongeneric framework in 2D real field.

In infinitesimal rigidity, instead of preserving distances during a continuous deformation, we require first-order preservation of distances during an infinitesimal motion. Therefore, infinitesimal rigidity (also called first-order rigidity) is a linear approximation to rigidity.

In the definition of continuous family, i.e. formula (4), the right-hand side is constant by definition. Assuming the trajectories pi(t),iV are differentiable on t[0,1], we square both sides of (4) and differentiate w.r.t. time to obtain

ddtpi(t)pj(t)2=2(pi(t)pj(t))(p˙i(t)p˙j(t))=0,(i,j)E.

where p˙i denotes the time derivative of pi. Rather than require the formula above be satisfied for all t[0,1], we impose the condition that it only need to hold at t=0:

(5)(pipj)(vivj)=0,(i,j)E.

where vi:=p˙i(0) and pi(0)=pi from the definition of continuous family. The above equation leads to a system of m linear equations with the dn unknowns being the velocities vi. When instantaneous velocities vi that satisfy above formula exist, we say the framework has infinitesimal motion.

Definition: infinitesimal motion [6]

An infinitesimal motion is an assignment of velocities that guarantees the invariance of rG(p), i.e.,

r˙G(p)=rG(p)pv=0,

where v=(v1,,vn),vi=p˙i is the velocity of vertex i. We say a motion is trivial if it satisfies equation above for any framework with n vertices. A framework is infinitesimally rigid if every infinitesimal motion is trivial.

When analyzing infinitesimal rigidity, the rigidity matrix of a framework comes in handy, which is defined as

(6)RD(p)=12rG(p)p=Z(z)H¯Rm×dn.

Note that:

  • the entries of RD(p) only involve relative position vectors z, and we can rewrite it as RD(z).
  • the rigidity matrix has a row for each edge and 2 columns for each vertex. That is, for the k-th edge of E connecting vertices i and j, the k-th row of R is [0,,0,(pipj),0,,0,(pjpi),0,,0] where (pipj) is in the columns for vertex i, (pjpi) is in the columns for vertex j, and all other elements are zero.

A useful structural property of the rigidity matrix:

RD(p)(1nx)=0.

given any vector xRd.

Using (6), we can conveniently rewrite (5) as

(7)RD(p)v=0

where v=[v1,,vn]Rdn. Therefore, infinitesimal motion exists when the above equation has a nontrivial (nonzero) solution v. We would like to know when this is the case.

Let δp be a variation of p. If RD(p)δp=0, then δp is an infinitesimal (distance) motion of G(p).

Note that if a framework undergoes any rigid body motion, then according to (3) vertex i has velocity

vi=v+ω×pi

where vR3 is the translational velocity and ωR3 is the angular velocity.

Notice that the vectors are defined here with dimension 3 irrespective of the Euclidean space of the framework. If the framework is planar, then v=[vx,vy,0],ω=[0,0,ωz],pi=[pix,piy,0].

It is not difficult to check that (7) holds in this case since for the k-th row of R:

(pipj)vi+(pjpi)vj=(pipj)(v+ω×pi)+(pjpi)(v+ω×pj)=(pipj)(ω×pi)+(pjpi)(ω×pj)=piω×pipjω×pi+pjω×pjpiω×pj=pjω×pipiω×pj=0

upon use of the properties of vector products. In other words, rigid body motions produce infinitesimal motions. This leads us to the following definition.

Definition: infinitesimal rigidity

A framework is infinitesimally rigid if the only solutions to (7) arise from rigid body motions. Otherwise, it is infinitesimally flexible.

We can use Definition above to determine if a framework is infinitesimally rigid or flexible by attempting to assign a velocity vector to each vertex such that (7) holds. For example, consider the framework in Figure about nongeneric framework and assign velocity v2R2 to vertex 2 such that it is any vector perpendicular to p1p2 and p2p3 while keeping all other velocities at zero, i.e., v=[0,v2,0,0,0,0]. It is easy to see that RD(p)v=0 in this case although v is not due to a rigid body motion. Therefore, the framework is infinitesimally flexible. (This framework is, however, rigid since it is nongeneric) This trial-and-error method becomes cumbersome as the complexity of the framework increases or when the framework is generic. More important, it cannot be easily implemented computationally.

Fortunately, there is an easy way of checking whether a framework is infinitesimally rigid via the rank of the rigidity matrix. Before presenting this useful result, we need the following facts:

  1. the rank of an d×n matrix is equal to n minus the dimension of its null space.
  2. the number of independent rigid body motions for a generic framework in Rd is d(d+1)/2. This means that there exist 3 independent rigid body motions in R2 (translation along x, translation along y, and rotation about z) and 6 in R3 (translations along x,y,z and rotations about x,y,z).

Given the above, we deduce that dim(Null(RD(p)))d(d+1)/2 and therefore rank(RD(p))ndd(d+1)/2. From Definition of infinitesimal rigidity, we know that for infinitesimally rigid frameworks dim(Null(RD(p)))=d(d+1)/2 , which gives us the following theorem

Theorem 1 [3]

Consider a framework (G,p) in d-dimensional space with nd vertices and m edges. It is infinitesimally rigid if and only if

(5)rank(RD(p))={dnd(d+1)/2,nd,n(n1)/2,n<d.
  • d=2:2n3
  • d=3:3n6

Obviously, in order to have an infinitesimally rigid framework, the graph should have at least 2n3 (resp. 3n6) edges in R2 (resp. R3).

From Theorem 1, one knows that the dimension of the null space of RD(p) for an infinitesimally rigid framework (G,p) in the d-dimensional space is d(d+1)/2. The following Lemma characterizes the structure of its null space.

Lemma 1: Null space of the rigidity matrix

Suppose the framework (G,p) is infinitesimally rigid with the associated rigidity matrix denoted as RD(p).

  • d=2: The null space of RD(p) is of dimension 3 and is described as null(RD(p))=span(q1,q2,q3), where
q1=1n[10],q2=1n[01]q3=[(K3p1),(K3p2),,(K3pn)]

and the matrix K3 is defined as

K3=[0110]
  • d=3: The null space of RD(p) is of dimension 6 and is described as null(RD(p))=span(q1,q2,q3,q4,q5,q6), where
q1=1n[100],q2=1n[010]q3=1n[001]qi=[(Kip1),(Kip2),,(Kipn)],i=4,5,6

and the matrix Ki is defined as

K4=[000001010],K5=[001000100],K6=[010100000]

TODO Proof

Lemma 2

Suppose the framework (G,p) is infinitesimally rigid. Then for any node i, the set of relative position vectors pjpi,jNi cannot all be collinear (in the 2-D case) or all be coplanar (in the 3-D case).

TODO Proof

  • if (G,p) is infinitesimally rigid, so is (G,p) for a generic (open and dense) set of p.
  • Generally speaking, infinitesimal rigidity implies rigidity, but the converse is not true.

As discussed earlier, the rigidity property of a generic framework F=(G,p) is invariant under small perturbations on p. With the intent of formalizing this idea, we introduce the following result.

Theorem 2

Consider two frameworks F=(G,p) and F¯=(G,p¯) sharing the same graph. If F is infinitesimally rigid and dist(p¯,Iso(F))ε where ε is a sufficiently small positive constant, then F¯ is also infinitesimally rigid.

Here,

dist(p¯,Iso(F)):=infxIso(F)p¯x.
Details of Proof

Let F^=(G,p^)Iso(F) be such that

dist(p¯,Iso(F))=infxIso(F)p¯x=p¯p^.

Obviously, F^ is infinitesimally rigid since it is isomorphic to F. Therefore, rank(RD(p^))=2n3 according to Theorem 1, and there exists a (2n3)×(2n3) submatrix of RD(p^), Rs(p^), such that det[Rs(p^)]0. The submatrix Rs(p^) has nonzero elements of the form (p^ip^j),(i,j)E. Since dist(p¯,Iso(F))=p¯p^ε, it is not difficult to show that [p¯i]k=[p^i]k+γik where γik is a sufficiently small positive constant. Thus, the nonzero elements of Rs(p^) have the form [p¯i]k[p¯j]k=[p^i]k[p^j]k+γikγjk, which are continuously dependent on p^. Since the eigenvalues of a matrix depend continuously on its elements, and the determinant of a matrix is the product of its eigenvalues, it follows that the determinant continuously depends on the elements of the matrix. Thus, for sufficiently small γik, we have that det[Rs(p^)]0 and rank(Rs(p¯))=rank(Rs(p^))=2n3. Now, since Rs(p¯) is a full rank submatrix of RD(p¯), we know rank(RD(p¯))=2n3, so F¯ is infinitesimally rigid.

Minimal Rigidity

It is obvious that adding edges to a graph does not destroy rigidity. A natural question is then: What is the minimum number of edges that ensures rigidity? This is important in practice because it ensures that a formation of multiple agents is rigid with the minimum number of sensing and communication links. The disadvantage of minimal rigidity is that it lacks robustness to the loss of a sensor or communication link since redundant edges are removed from the graph

Definition: minimally rigidity

A formation is minimally rigid if it is rigid and if no single interagent distance constraint can be removed without causing the formation to lose rigidity

A graph is minimally rigid if almost all formations to which the graph corresponds are minimally rigid.

As for minimal rigidity, it can be described in 2D and 3D with the rigidity matrix, is characterizable in 2D with Laman’s theorem, and, in 3D, is the subject of necessary conditions and distinct sufficiency conditions on the graph determined by a formation.

Given a graph with edge set E and vertex set V, which is known to be rigid, it is additionally minimally rigid in 2D or 3D if and only if |E|=2|V|3 or |E|=3|V|6, respectively, where |E| and |V| are the numbers of edges and vertices of the graph.

Theorem 3

A rigid graph is minimally rigid if and only if m=dnd(d+1)/2.

This leads to the following corollary.

Corollary 1

If a framework is infinitesimally and minimally rigid, then its rigidity matrix has full row rank and RD(p)RD(p) is positive definite.

Details of Proof

Given that the rigidity matrix has m rows and rank(RD(p))=dnd(d+1)/2 and m=dnd(d+1)/2 for infinitesimally and minimally rigid frameworks, we know RD(p) is full row rank. Now, let y=RD(p)x and

V=yy0.

Note that V is positive definite w.r.t. y and positive semi-definite with respect to x. Given that rank(RD(p))=rank(RD(p)RD(p)) and RD(p) is full row rank, we know RD(p)RD(p) is invertible and has no zero eigenvalues. Therefore, V is positive definite w.r.t. x and RD(p)RD(p) is a positive definite matrix.

For an infinitesimally minimally distance rigid framework, there must exist a vertex associated with fewer than 4 distance constraints; otherwise, the total number of distance constraints will be at least 2n and thus greater than the minimum number 2n3.

Henneberg construction

The Henneberg construction deals with the iterative construction of rigid formations. As for the characterization of rigidity, the Henneberg construction procedure for 2D formations is better developed than that for 3D formations.

The 2D Henneberg construction comprises the application at each step of one of two possible operations, known as vertex addition and edge splitting.

The procedure begins with a minimally rigid graph, and the application of either operation creates a minimally rigid graph with one additional vertex. Minimally rigid graphs can be progressively built up this way

Definition: Henneberg Construction

The Henneberg construction is a technique for growing minimally rigid graphs, starting from a graph with two vertices and one edge joining the vertices.

At each step in the procedure, illustrated in greater detail below, either a vertex and two edges are added, or a vertex and three new edges are added, while one existing edge is removed. The new edges are incident on the new vertex. These operations are termed vertex addition and edge splitting, respectively.

  • vertex addition Let G=(V,E) be a graph modeling a formation in 2D. A new graph G=(V,E) is formed, where a vertex v is adjoined as well as two edges from G to v , so that V=V{v} and E=E{(v,j),(v,k)} for some j,kV .

  • edge splitting A new graph G=(V,E) is formed from G=(V,E), where V=V{v} and E=E{(v,j),(v,k),(v,m)}{e} for some j,k,mV with at least two of the vertices j,k,m adjacent in G, and the edge e either (j,k),(j,m), or (k,m)

Henneberg's Method
Figure 1: Growing formations using a Henneberg sequence. (a) The four-agent formation can be expanded to include agent 5 by either (b) a vertex addition operation or (c) an edge-splitting operation. In (b), agent 5 is connected to two distinct agents of the formations. In (c) the edge (1,4) is replaced by two edges (1,5) and (5,4), which are incident on the newly added agent. A third connection (5,2) is also added to the latter agent. Both operations lead to a minimally rigid formation provided that the initial formation is minimally rigid. Moreover, every minimally rigid formation can be obtained by performing a sequence of these operations on an initial formation consisting of two connected agents.

These vertex-addition and edge-splitting operations are enough to grow every minimally rigid graph. It is also possible to deconstruct a minimally rigid graph by removing one vertex and a net count of two edges at each step.

  • In growing and deconstructing a minimally rigid graph, all the intermediate graphs are minimally rigid
  • A by-product is the fact that every 2D minimally rigid graph is constructible from a primitive comprising a two-vertex single edge graph by using a sequence of these operations
  • A Henneberg construction starting from an edge connecting two vertices will result in a Laman graph. The converse is also true. That is if a graph is Laman, then it can be generated by a Henneberg construction

In 3D, operations that are analogous to vertex addition and edge splitting can be defined, but whether these analogously defined operations are necessary and sufficient to build and deconstruct all minimally rigid graphs is still a matter of conjecture

Framework Ambiguities

Consider that a graph G=(V,E) and the length of each edge (i.e., pipj,(i,j)E) are given. We want to know all frameworks F=(G,p) that are consistent with this data excluding isometries. Can a framework have multiple (non-isomorphic) realizations? There are several sources of nonunique realizations. The trivial one is flexibility, an infinite number of equivalent frameworks exist that satisfy the edge constraints. Infinitesimally rigid frameworks can also suffer from nonuniqueness. Two types of nonuniqueness can occur in this case, but unlike flexibility they lead to a finite number of equivalent frameworks

  • flip ambiguity: one vertex can be flip to another side. This occurs when a graph in Rd has a set of vertices lying in a (d1)-dimensional subspace about which a portion of the graph can be reflected. Notice that there cannot be any edges between the portions of the graph separated by the mirror edge.
    • Not every minimally rigid graph contains a flip ambiguity
    • Multiple flips can happen in a given framework
  • discontinuous flex ambiguity: positions of 2 or more vertexes can be changed while satisfying the constraints. This occurs in minimally rigid graphs since the removal of an edge allows a portion of the graph to flex. If the removed edge is reinserted after a flexing, one may obtain an equivalent framework with a different configuration.
    • Every formation corresponding to a minimally rigid graph with four or more vertices at generic positions can exhibit flex ambiguity

This leads us to the following definition.

Definition: ambiguous

If two infinitesimally rigid frameworks are equivalent but not congruent, then they are said to be ambiguous.

We denote the set of all ambiguities of an infinitesimally rigid framework F by Amb(F). We assume that all frameworks in Amb(F) are also infinitesimally rigid (This assumption is reasonable and, in fact, holds almost everywhere).

The existence of framework ambiguities is problematic for formation control since the control law cannot distinguish the actual framework from an ambiguous one if only the edge lengths (i.e., inter-agent distances) are being controlled. In such a case, one solution is to initialize the agents sufficiently close to the desired framework to avoid their convergence to an ambiguous framework. From a control theory standpoint, this means that stability results will be local in nature rather than global. The following corollary to Theorem 2 will be helpful in establishing the stability.

Corollary of Theorem 2

Let F=(G,p) and F¯=(G,p¯) be two frameworks sharing the same graph, and consider the function

Ψ(F¯,F)=(i,j)E(p¯ip¯jpipj)2.

If F is infinitesimally rigid and Ψ(F¯,F)δ where δ is a sufficiently small positive constant, then F¯ is also infinitesimally rigid.

Detail of Proof

First, note that Ψ(F¯,F)=0 implies that F¯Iso(F) or F¯Amb(F). Therefore, Ψ(F¯,F)δ implies that there is a sufficiently small positive constant ε such that dist(p¯,Iso(F))ε or dist(p¯,Amb(F))ε. From Theorem 2, we know that F¯ is infinitesimally rigid if dist(p¯,Iso(F))ε. Since the elements of Amb(F) are infinitesimally rigid, the proof of Theorem 2 can be followed with Iso(F) replaced by Amb(F) to show that dist(p¯,Amb(F))ε implies F¯ is infinitesimally rigid.

Globally Rigidity

Consider a formation with distinctly labeled agents and with some of the interagent distances known. We wish to understand what alternative formation shapes agents can have when they are positioned consistently with the data. Note that if the formation F is consistent with the data, then so is every rotation, translation, and reflection of F . However, the existence of alternative formation shapes that are not obtainable from F through rotation, translation, and reflection is not clear.

Deifnition: globally rigidity

A 2D or 3D formation is globally rigid if and only if one of the following works:

  • any two formations corresponding to the distance data differ by a combination of translation, rotation, and reflection
  • every framework that is equivalent to (G,p) is congruent to (G,p)
  • rG1(rG(p))=rK1(rK(p)) shown in the definition of rigidity.

A graph is globally rigid if and only if a generic formation corresponding to the graph is globally rigid.

Global rigidity is a more demanding concept than rigidity since there exist rigid formations that are not globally rigid, and such formations can be converted to globally rigid formations only by the inclusion of additional distance constraints.

  • Local rigidity: cannot cannot deform smoothly from one shape. Minimal rigidity therefore allows retention of shape only in the face of potential smooth deformations, although it does not of itself specify what shape is retained. But with same constraints, graph can have different shapes
  • Global rigidity: ensure that the shape is unique
Ambiguity in local rigidity
Figure 2: Noncongruent rigid formations with the same set of distance constraints. (a) depicts flip ambiguity since vertex A can be flipped over edge (B,C) to the symmetric position A′ while the distance constraints remain the same. (b) depicts discontinuous flex ambiguity since, by temporarily removing edge (A,D), the edge triple (A,E), (A,B), (B,C) can be flexed to obtain positions A′ and B′ such that the edge length (A′,D) equals the edge length (A,D), and thus all of the distance constraints are maintained. The formations (a) and (b) are thus rigid but not globally rigid. Although no smooth motion can deform these formations without affecting the distances between agents connected by edges, the sets of edges and corresponding distance constraints do not uniquely define the relative positions of the agents. In other words, the distance constraints do not specify the formation shape up to a rotation, translation, or reflection.

A nice characterization of global rigidity is available for 2D formations and their associated graphs. No extension is known for 3D formations. The 2D characterization uses the terms redundant rigidity and three connectivity.

Definition: redundant rigidity

An undirected graph is termed redundantly rigid if it remains rigid after the removal of any single edge.

Definition: connected graph

A graph is connected if there is a path from any vertex to any other vertex. A graph is k-connected if it remains connected when any k1 vertices are removed. Equivalently, between any two vertices of a k-connected graph, there are k paths that have no common edge and no common vertex, except for the end vertices

Theorem 4

A graph G=(V,E) modeling a formation in 2D of |V| vertices and |E| edges is globally rigid if and only if it is redundantly rigid and 3-connected.

  • When a graph is globally rigid, a generic formation corresponding to the graph is also globally rigid.
  • A variation of Laman’s theorem is available that characterizes the redundant rigidity property.
  • A useful property of a 2D globally rigid formation is that if the positions of 3 noncollinear agents are known, then the positions of all the other agents can be uniquely determined from the interagent distances corresponding to the edges in the formation graph.
  • For the trivial case of small graphs |\V|3, a complete graph is both necessary and sufficient for global rigidity
  • Globally rigid formations with 4 or more agents are not minimally rigid. A reason for using nonminimally rigid formations, where more constraints are imposed than are needed for shape maintenance: loss of a sensor / communication link / control actuator

Application:

  • sensor network localization: unit disk graph use the distance data to determine the Euclidean coordinates for the sensor positions that are consistent with the distance set. The Euclidean coordinates, however, become uniquely specified by using further information obtained from designated anchor nodes or sensors, whose positions are known absolutely

Some problems arise in handling nonminimally rigid formations: if the distances between agents in a formation are measured with some noise and controls operate to try to bring certain distances to specified values, a similar type of inconsistency will be likely to arise

Generic Rigidity [8]

One can ask, for a given bar framework G(p), whether it is globally rigid. However, it is shown that this problem is strongly NP hard even for bar frameworks in R1. We will show that there is an algebraic set of configurations, defined by polynomial equations in the coordinates of the configuration, such that when the configuration p is outside that set, G(p) is globally rigid in R2. However, the complexity of that set of configurations appears to be exponential in n, the number of points of the configuration.

So, we are led to consider the question of whether “most” configurations p for a given graph G are globally rigid.

Definition: algebraically dependent, generic

A set A=(α1,,αm) of distinct real numbers is said to be algebraically dependent if there is a non-zero polynomial h(x1,,xm) with integer coefficients such that h=(α1,,αm)=0. If A is not algebraically dependent, it is called generic. If a configuration p=(p1,,pn) in Rd is such that its dn coordinates are generic, we say p is generic.

We raise a possibly more tractable problem. For a given graph G, when G(p) is globally rigid for all generic configurations p in Rd we say that G itself is generically globally rigid in Rd. So for a fixed dimension d we ask whether a given graph G is generically globally rigid.

For d=1, it is easy to see that G is generically globally rigid if and only if G is vertex 2-connected, which means that it takes the removal of at least two vertices of G to disconnect the rest of the vertices. In general a graph is vertex m-connected if it takes the removal of at least m vertices of G to disconnect the rest of the vertices.

For d=2, here we now have complete information about generic global rigidity for any graph. A framework G(p) in Rd is said to be redundantly rigid if G(p) is rigid in Rd even after the removal of any edge of G.

Theorem 5 (Theorem 4 in arbitary dimension)

Let G(p) be a framework in Rd such that the configuration p is generic, and G(p) is globally rigid with at least d+1 vertices. Then the following conditions must hold:

  1. The graph G is vertex (d+1)-connected.
  2. The framework G(p) is redundantly rigid in Rd .

Condition 1 is clear. One just reflects the vertices on one side of a hyperplane through any separating set of d vertices. Condition 2 is more subtle. Roughly the idea is to remove an edge from G, let the resulting framework flex, and replace the edge in a different configuration.

It is natural to conjecture that conditions 1 and 2 are sufficient for generic global rigidity as well as necessary. Unfortunately, for d3, that conjecture is shown to be false. For d=3, the complete bipartite graph K(5,5) is redundantly rigid, vertex 4-connected, but there are generic configurations, where the corresponding framework is not globally rigid, and it is the only known example. For d3 it is somewhat embarrassing to admit that it is not known whether global rigidity is a generic property. This means that if G(p) is a generically rigid framework in Rd, and q is another generic configuration in Rd, it is not known, except for d=1 or d=2, whether G(q) is globally rigid.

On the other hand, it is known that rigidity is a generic property. In other words, if p is a generic configuration in Rd , and q is another generic configuration in Rd , it is known that G(q) is rigid if and only if G(p) is rigid. Thus rigidity in Rd is entirely a combinatorial property of the graph G, although a purely combinatorial polynomial time algorithm to determine generic rigidity is known only for d=1 and d=2.

References

  1. Rigid graph control architectures for autonomous formations by D. O. Anderson etc.;
  2. Section 1.1-1.3 of Formation Control of Multi-Agent Systems: A Graph Rigidity Approach by Marcio de Queiroz etc.;
  3. Theorem from Conditions for unique graph realizations by Bruce Hendrickson;
  4. Preliminaries part of Distributed estimation and control for preserving formation rigidity for mobile robot teams by Zhiyong Sun, ..., D. O. Anderson;
  5. Preliminaries part of Distributed stabilization control of rigid formations with prescribed orientation by Zhiyong Sun, ..., D. O. Anderson, Hyo-Sung Ahn
  6. Preliminaries part of Angle-based shape determination theory of planar graphs with application to formation stabilization by Gangshan Jing, etc..
  7. The Rigidity of Graphs by L. Asimow and B. Roth in 1978.
  8. Part 1.2: Generic Global Rigidity in Generic Global Rigidity by Robert Connelly
  9. 1st Part in Bearing rigidity theory and its applications for control and estimation of framework systems: life beyond distance rigidity by Shiyu Zhao and Daniel Zelazo.

Released under the MIT License.