Invited Talk at NICTA

Rigidity and Persistence of
Directed Graphs
Julien Hendrickx
Outline
•
•
•
•
•
Problem Description and Modelisation
Characterization of persistent graphs
Minimal persistence
Persistence for Cycle-free graphs
Further works and open questions
Problem description
2
•Set of autonomous agents (possibly)
moving continuously in <2,
represented by vertices
1
A
3
4
2
1
B
3
4
•Edge from i to j if i has to maintain its
distance from j constant
•No other hypothesis made about the
agents movement
 if only one constraint, agent can move
freely on a circle centered on its neighbor
2
1
C
4
3
Can one guarantee that distance
between any pair of agents will be
preserved ?
Rigidity
RIGID !
à NOT RIGID
Representation of G=(V,E): p: V ! <2 (d(p1,p2) = maxi2 V ||p1(i)-p2(i)||)
Distances set d: dij>0 8 (i,j) 2 E.
Realization of d: repres. p s.t. ||p(i)-p(j)|| = dij 8 (i,j) 2 E
(d is realizable if there exists a realization p of d. d is then induced by p )
A representation p is RIGID if there exists  > 0 s.t.
every realization p’ 2 B(p,) of the distance set induced by
p is congruent to p.
(i.e. , ||p’(i)-p’(j)|| = ||p(i)-p(j)|| 8 i,j 2 V)
A graph is RIGID if almost all its representations are rigid
Laman’s criterion
G=(V,E) is rigid (in <2) iff there exists E’µ E s.t.
• |E’| = 2|V| - 3
• 8 E’’ µ E’, |E’’| · 2|V(E’’)| - 3
Examples:
|E| = 4 < 2 |V| - 3 = 5
|E’| = 2 |V| - 3
 Not rigid
Rigid
|E’| = 2 |V| - 3
But, |E’’| > 2 |V(E’’)| - 3
 Not rigid
Rigidity not sufficient
2
1
B is rigid. But, if 3 moves, 4 is unable to react
 Rigidity insufficient because
A
3
4
2
•Essentially undirected notion
B
??4
2
(although definition OK for directed graphs)
1
3
So, need to take directions and
localization of the constraints into
account
1
C
4
•Considers all constraints globally
(as if guaranteed by external
observer)
3
Fitting representations
Distance set d on G=(V,E) and representation p’ of G
Edge (i,j) is active: ||p’(i)-p’(j)|| = dij
Position p’(i) is fitting (for d): impossible to increase set of
active edges by modifying only p’(i). (increase set ≠ increase number)
Example:
d41=d42=d43=c
Continuous
edges active
c
2
4
1
c
c
3
p’(4) Not fitting
2
1
c
3
4
p’(4) fitting
Repres. p’ is fitting (for d): positions of all vertices are fitting
“fitting if every agent tries to satisfy all its constraints”
Persistence
A representation p is PERSISTENT if there exists  > 0 s.t.
every representation p’2 B(p,) fitting for the distance set
induced by p is congruent to p
A graph is PERSISTENT if almost all its representations are
persistent
Example:
p(2) =p’(2)
p(1) =p’(1)
p’(3)
p’(4)= p(4)
p(3)
p’ fitting but not
congruent to p
 p not persistent
(although p rigid)
What is the difference between Persistence and Rigidity ?
Constraint Consistence
A representation p is CONSTRAINT CONSISTENT if there
exists  > 0 s.t. every representation p’2 B(p,) fitting for the
distance set d induced by p is a realization of d
A graph is CONSTRAINT CONSISTENT if almost all its
representations are constraint consistent
p(2)
Examples:
p’(2)
p’ fitting but
not a
realization
 Not C.C
C.C.
A graph having no vertex with an out-degree > 2
is always constraint consistent
Summary
2
1
Rig. NO
C.C. YES
A
3
4
2
1
Rig. YES
C.C. NO
B
3
4
2
C
4
• Rigidity:
“All constraints satisfied  structure
preserved”
• Constraint Consistence:
“Every agent tries to satisfy all its
constraints  all the constraints are
satisfied”
• Persistence:
“Every agent tries to satisfy all its
constraints  structure preserved”
1
Rig. YES
C.C. YES
3
Persistence
$
Rigidity + C. Consistence
Outline
•
•
•
•
•
Problem Description and Modelisation
Characterization of persistent graphs
Minimal persistence
Persistence for Cycle-free graphs
Further works and open questions
Characterization
A persistent graph remains persistent after deletion of
an edge leaving a vertex with out-degree ¸ 3
Examples:
Graph
remains
persistent
Obtained graph
not rigid  not
persistent
Initial graph was
not persistent
A graph is persistent iff all subgraphs obtained by
removing edge leaving vertices with d+ ¸ 3 until all
vertices have d+ · 2 are rigid
Surprising consequence
Application of the criterion:
1
Persistent
2
3
Subgraph
not rigid
1
2
3
Addition of an edge
Graph not
persistent
4
4
So, one can lose persistence by adding edges,
“because of unfortunate selections among
possible information architectures”
 Question: when can one add edges ?
Still open…
Outline
•
•
•
•
•
Problem Description and Modelisation
Characterization of persistent graphs
Minimal persistence
Persistence for Cycle-free graphs
Further works and open questions
Minimal Rigidity
G is minimally rigid if it is rigid and if no single edge can
be removed without losing rigidity.
G=(V,E) is minimally rigid iff rigid and |E|=2|V|-3
Minimal rigidity preserved by:
Vertex addition:
(directions have no importance)
Edge splitting:
Henneberg sequences
Every minimally rigid graph can be obtained from K2 using
these operations (Henneberg sequence)
Example:
K2
Minimal Persistence
A graph is minimally persistent if it is persistent and if no
single edge can be removed without losing persistence.
A graph G=(V,E) is minimally persistent iff it is
persistent and minimally rigid, i.e., |E| = 2|V| - 3
A rigid graph is minimally persistent iff one of the two
following conditions is satisfied:
•Three vertices have an out-degree 1, the others
have an out-degree 2
•One vertex has an out-degree 0, one vertex has
an out-degree 1, the others have an out-degree 2
Directed sequential operations
Minimal persistence preserved by:
Vertex addition:
Edge splitting:
But, not all min. persistent graphs can be obtained using
these operations on smaller min. persistent graphs.
Examples:
Three vertices with d+ = 1
One v. with d+ = 0
One v. with d+ = 1
Others have d+ = 2
Outline
•
•
•
•
•
Problem Description and Modelisation
Characterization of persistent graphs
Minimal persistence
Persistence for Cycle-free graphs
Further works and open questions
Cycle Free Graphs
Persistence is preserved after addition/deletion of vertex
with d-=0 and d+¸ 2
Example:
Leader
Follower
Every cycle free persistent graph can be obtained by a
succession of such additions to initial Leader-Follower seed
A cycle-free graph is persistent iff there exists L,F 2 V s.t.
•d+(L) = 0
(Leader)
•d+(F) = 1, (F,L) 2 E
(First Follower)
•d+(i) ¸ 2 for every other i 2 V
Outline
•
•
•
•
•
Problem Description and Modelisation
Characterization of persistent graphs
Minimal persistence
Persistence for Cycle-free graphs
Further works and open questions
Further works and open questions
• How to check persistence in polynomial time for the
generic case? (polynomial time algorithm exists for cycle-free
and minimally rigid graphs)
• When can one add edges without losing persistence?
 maximally persistent graphs, maximally robust
persistent graphs (minimize probability to lose persistence if
possible appearance of parasite edges or disappearance of
existing links.)
• Characterize persistence is other spaces (as <3)
• Is there a persistent graph for each rigid graph ?
“Almost all”
Graph is (generically)
rigid, but there exists nonrigid representations.
Suppose triangles are
congruent, lateral edges are
parallel and have the same
length:
Realization of the same distance set, but no congruence
Counterexample for directed
sequential operations
If it was obtained by a
sequential operation
from a smaller minimally
persistent graph, then :
• Two possibilities for last
added vertex
•Last operation was
edge splitting
First possibility
Not persistent
 This vertex cannot have been the last one added
Second possibility
Not persistent
 This vertex cannot have been the last one added
 This minimally persistent graph cannot be obtained
from a smaller one by one of the sequential operations