SLIDE 1 On Robust Temporal Structures in Highly Dynamic Networks
Arnaud Casteigts
(LaBRI, University of Bordeaux)
- J. work with Swan Dubois, Franck Petit, and John Michael Robson
https://arxiv.org/abs/1703.03190
AATG@ICALP 2018
SLIDE 2 Highly dynamic networks
Ex: How changes are perceived?
- Faults and Failures?
- Nature of the system. Change is normal.
- Possibly partitioned network
SLIDE 3 Highly dynamic networks
Ex: How changes are perceived?
- Faults and Failures?
- Nature of the system. Change is normal.
- Possibly partitioned network
Example of scenario
SLIDE 4 Highly dynamic networks
Ex: How changes are perceived?
- Faults and Failures?
- Nature of the system. Change is normal.
- Possibly partitioned network
Example of scenario
SLIDE 5 Highly dynamic networks
Ex: How changes are perceived?
- Faults and Failures?
- Nature of the system. Change is normal.
- Possibly partitioned network
Example of scenario
SLIDE 6 Highly dynamic networks
Ex: How changes are perceived?
- Faults and Failures?
- Nature of the system. Change is normal.
- Possibly partitioned network
Example of scenario
SLIDE 7 Highly dynamic networks
Ex: How changes are perceived?
- Faults and Failures?
- Nature of the system. Change is normal.
- Possibly partitioned network
Example of scenario
SLIDE 8 Highly dynamic networks
Ex: How changes are perceived?
- Faults and Failures?
- Nature of the system. Change is normal.
- Possibly partitioned network
Example of scenario
SLIDE 9 Highly dynamic networks
Ex: How changes are perceived?
- Faults and Failures?
- Nature of the system. Change is normal.
- Possibly partitioned network
Example of scenario
SLIDE 10 Graph representations
Time-varying graphs (TVG)
G = (V, E, T , ρ, ζ)
- T ⊆ N/R (lifetime)
- ρ : E × T → {0, 1} (presence fonction)
- ζ : E × T → N/R (latency function)
[1, 2] [0] [2, 3] [0] [0, 1] [0, 2] [2, 3]
Another classical view G = G0, G1, ... G0
G1 G2 G3
Variety of models and terminologies: Dynamic graphs, evolving graphs, temporal graphs, link streams, etc.
C., Flocchini, Quattrociocchi, Int. J. of Parallel, Emergent and Distributed Systems, Vol. 27, Issue 5, 2012 (among others)
SLIDE 11 Graph representations
Time-varying graphs (TVG)
G = (V, E, T , ρ, ζ)
- T ⊆ N/R (lifetime)
- ρ : E × T → {0, 1} (presence fonction)
- ζ : E × T → N/R (latency function)
{t ∈ N : t prime} [0, 1] ∪ [2, 5] [1, π] [5, 7] [9999, ∞) [0, ∞) {1/i : i ∈ N}
Another classical view G = G0, G1, ... G0
G1 G2 G3
Variety of models and terminologies: Dynamic graphs, evolving graphs, temporal graphs, link streams, etc.
C., Flocchini, Quattrociocchi, Int. J. of Parallel, Emergent and Distributed Systems, Vol. 27, Issue 5, 2012 (among others)
SLIDE 12 Graph representations
Time-varying graphs (TVG)
G = (V, E, T , ρ, ζ)
- T ⊆ N/R (lifetime)
- ρ : E × T → {0, 1} (presence fonction)
- ζ : E × T → N/R (latency function)
{t ∈ N : t prime} [0, 1] ∪ [2, 5] [1, π] [5, 7] [9999, ∞) [0, ∞) {1/i : i ∈ N}
Another classical view G = G0, G1, ... G0
G1 G2 G3
the graph Variety of models and terminologies: Dynamic graphs, evolving graphs, temporal graphs, link streams, etc.
C., Flocchini, Quattrociocchi, Int. J. of Parallel, Emergent and Distributed Systems, Vol. 27, Issue 5, 2012 (among others)
SLIDE 13
Basic concepts
a b c d e G0 a b c d e G1 a b c d e G2 a b c d e G3
SLIDE 14
Basic concepts
a b c d e G0 a b c d e G1 a b c d e G2 a b c d e G3
= ⇒ Temporal path (a.k.a. Journey), e.g. a e Ex: ((ac, t1), (cd, t2), (de, t3)) with ti+1 ≥ ti and ρ(ei, ti) = 1
(can be formulated with latency)
SLIDE 15
Basic concepts
a b c d e G0 a b c d e G1 a b c d e G2 a b c d e G3
= ⇒ Temporal path (a.k.a. Journey), e.g. a e Ex: ((ac, t1), (cd, t2), (de, t3)) with ti+1 ≥ ti and ρ(ei, ti) = 1
(can be formulated with latency)
= ⇒ Temporal connectivity (∗ ∗) Satisfied here?
SLIDE 16
Basic concepts
a b c d e G0 a b c d e G1 a b c d e G2 a b c d e G3
= ⇒ Temporal path (a.k.a. Journey), e.g. a e Ex: ((ac, t1), (cd, t2), (de, t3)) with ti+1 ≥ ti and ρ(ei, ti) = 1
(can be formulated with latency)
= ⇒ Temporal connectivity (∗ ∗) Satisfied here? No, only 1 ∗.
SLIDE 17
Basic concepts
a b c d e G0 a b c d e G1 a b c d e G2 a b c d e G3
= ⇒ Temporal path (a.k.a. Journey), e.g. a e Ex: ((ac, t1), (cd, t2), (de, t3)) with ti+1 ≥ ti and ρ(ei, ti) = 1
(can be formulated with latency)
= ⇒ Temporal connectivity (∗ ∗) Satisfied here? No, only 1 ∗. = ⇒ Footprint (= underlying graph)
a b c d e
SLIDE 18
Today: Covering problems
Three ways of redefining covering problems
C., Mans, Mathieson, 2011
Ex: DOMINATINGSET
G1 G2 G3 Temporal dominating set Evolving dominating set Permanent dominating set
SLIDE 19
Today: Covering problems
Three ways of redefining covering problems
C., Mans, Mathieson, 2011
Ex: DOMINATINGSET
G1 G2 G3 Temporal dominating set Evolving dominating set Permanent dominating set
→ How about infinite time? The relation must hold infinitely often!
SLIDE 20
Classes of dynamic networks
(C.,Flocchini,Quattrociocchi,Santoro, 2012) What assumption for what problem? (based on time-varying graphs)
SLIDE 21
Classes of dynamic networks
(C.,Flocchini,Quattrociocchi,Santoro, 2012) What assumption for what problem?
(C., 2018)
SLIDE 22
Classes of dynamic networks
(C.,Flocchini,Quattrociocchi,Santoro, 2012) What assumption for what problem?
(C., 2018)
→ ER ≡ all the edges of the footprint are recurrent → T CR ≡ temporal connectivity is recurrently achived
SLIDE 23
Classes of dynamic networks
(C.,Flocchini,Quattrociocchi,Santoro, 2012) What assumption for what problem?
(C., 2018)
→ ER ≡ all the edges of the footprint are recurrent → T CR ≡ temporal connectivity is recurrently achived
Building temporal covering structures?
→ ER: “easy” → T CR: this talk
SLIDE 24
Exploiting regularities within T CR
T CR := Temporal connectivity is recurrently achieved
(T CR := ∀t, G[t,+∞) ∈ T C)
SLIDE 25
Exploiting regularities within T CR
T CR := Temporal connectivity is recurrently achieved
(T CR := ∀t, G[t,+∞) ∈ T C) Alternative characterization: T CR ≡ Eventual footprint connected
Braud Santoni et al., 2016 a b c d e
− →
→ Can be exploited in a distributed algorithm
Kaaouachi et al., 2016
SLIDE 26
Exploiting regularities within T CR
T CR := Temporal connectivity is recurrently achieved
(T CR := ∀t, G[t,+∞) ∈ T C) Alternative characterization: T CR ≡ Eventual footprint connected
Braud Santoni et al., 2016 a b c d e
− →
→ Can be exploited in a distributed algorithm
Kaaouachi et al., 2016 → Robustness: New form of heredity asking that a property or solution holds in all connected spanning subgraphs Ex: MINIMALDOMINATINGSET (MDS) and MAXIMALINDEPENDENTSET (MIS) C., Dubois, Petit, Robson, 2017/18
SLIDE 27
EX: MAXIMAL INDEPENDENT SETS
A maximal independent set (MIS) is a maximal (= maximum) set of nodes, none of which are neighbors.
(a) (b) (c) (d)
SLIDE 28
EX: MAXIMAL INDEPENDENT SETS
A maximal independent set (MIS) is a maximal (= maximum) set of nodes, none of which are neighbors.
(e) (f) (g) (h)
Which ones are robust?
SLIDE 29 EX: MAXIMAL INDEPENDENT SETS
A maximal independent set (MIS) is a maximal (= maximum) set of nodes, none of which are neighbors.
(i) (j) (k) (l)
Which ones are robust? → Question: characterizing graphs/footprints in which
- 1. all MISs are robust: (RMIS∀)
- 2. at least one MIS is robust: (RMIS∃)
- 3. all MDSs are robust: (RMDS∀)
- 4. at least one MDS is robust: (RMDS∃)
SLIDE 30 Overview of technical results
- 1. RMDS∀ = Sputniks
- 2. RMIS∀ = Complete bipartite ∪ Sputniks
- 3. RMDS∃ bipartite + test algo
- 4. RMIS∃ bipartite + test algo
Locality:
→ Robust solutions can be computed locally!
→ Robust solutions cannot be computed locally!
RMDS∀ RMIS∀ RMIS∃ RMDS∃
Local algo for robust MIS in Sputniks Lower bound on the non-locality of robust MIS
SLIDE 31
RMIS∀
Graphs in which all MISs are robust? (RMIS∀)
SLIDE 32
RMIS∀
Graphs in which all MISs are robust? (RMIS∀)
Lemma
Bipartite complete (BK) graphs ⊆ RMIS∀.
SLIDE 33
RMIS∀
Graphs in which all MISs are robust? (RMIS∀)
Lemma
Bipartite complete (BK) graphs ⊆ RMIS∀. Def: A graph is a sputnik if and only if every node that belongs to a cycle also has an antenna (i.e. a pendant neighbor).
Lemma
Sputniks ⊆ RMIS∀.
SLIDE 34
RMIS∀
Graphs in which all MISs are robust? (RMIS∀)
Lemma
Bipartite complete (BK) graphs ⊆ RMIS∀. Def: A graph is a sputnik if and only if every node that belongs to a cycle also has an antenna (i.e. a pendant neighbor).
Lemma
Sputniks ⊆ RMIS∀.
Theorem
RMIS∀ = Sputniks ∪ BK
SLIDE 35 Local algorithm to find a RMIS in RMIS∀
State of the art (classical MIS)
◮ Lower bound: Ω(
- log n/ log log n) [KMW04]
◮ Best algo: 2O(√log n) [PS96] (between log n and n) ◮ Best algo in trees: O(log n/ log log n) [BE10]
Can we solve the problem locally in RMIS∀?
SLIDE 36 Local algorithm to find a RMIS in RMIS∀
State of the art (classical MIS)
◮ Lower bound: Ω(
- log n/ log log n) [KMW04]
◮ Best algo: 2O(√log n) [PS96] (between log n and n) ◮ Best algo in trees: O(log n/ log log n) [BE10]
Can we solve the problem locally in RMIS∀? N P F P: pendant node N: neighbor of a pendant node F: other
SLIDE 37 Local algorithm to find a RMIS in RMIS∀
State of the art (classical MIS)
◮ Lower bound: Ω(
- log n/ log log n) [KMW04]
◮ Best algo: 2O(√log n) [PS96] (between log n and n) ◮ Best algo in trees: O(log n/ log log n) [BE10]
Can we solve the problem locally in RMIS∀? N P F P: pendant node N: neighbor of a pendant node F: other
SLIDE 38 Local algorithm to find a RMIS in RMIS∀
State of the art (classical MIS)
◮ Lower bound: Ω(
- log n/ log log n) [KMW04]
◮ Best algo: 2O(√log n) [PS96] (between log n and n) ◮ Best algo in trees: O(log n/ log log n) [BE10]
Can we solve the problem locally in RMIS∀? N P F P: pendant node N: neighbor of a pendant node F: other
SLIDE 39 Local algorithm to find a RMIS in RMIS∀
State of the art (classical MIS)
◮ Lower bound: Ω(
- log n/ log log n) [KMW04]
◮ Best algo: 2O(√log n) [PS96] (between log n and n) ◮ Best algo in trees: O(log n/ log log n) [BE10]
Can we solve the problem locally in RMIS∀? N P F P: pendant node N: neighbor of a pendant node F: other
SLIDE 40 Local algorithm to find a RMIS in RMIS∀
State of the art (classical MIS)
◮ Lower bound: Ω(
- log n/ log log n) [KMW04]
◮ Best algo: 2O(√log n) [PS96] (between log n and n) ◮ Best algo in trees: O(log n/ log log n) [BE10]
Can we solve the problem locally in RMIS∀? N P F P: pendant node N: neighbor of a pendant node F: other
= ⇒ o(log n)
SLIDE 41
Not local in general graphs! (i.e. Ω(n))
SLIDE 42
Not local in general graphs! (i.e. Ω(n))
∃ Infinite family of graphs (Gk)k∈N, of diameter Θ(k) = Θ(n). . . . . . .
SLIDE 43
Not local in general graphs! (i.e. Ω(n))
∃ Infinite family of graphs (Gk)k∈N, of diameter Θ(k) = Θ(n). . . . . . . Lemma: ∀k, Gk admits only two robust MISs M1 (in red) and M2 = V \ M1.
SLIDE 44
Not local in general graphs! (i.e. Ω(n))
∃ Infinite family of graphs (Gk)k∈N, of diameter Θ(k) = Θ(n). . . . . . . Lemma: ∀k, Gk admits only two robust MISs M1 (in red) and M2 = V \ M1. (1) Anonymous case (easy): Both extremities have same view up to distance Θ(n), but they must decide differently.
SLIDE 45
Not local in general graphs! (i.e. Ω(n))
∃ Infinite family of graphs (Gk)k∈N, of diameter Θ(k) = Θ(n). βk γk αk β1 γ1 α1 β0 γ0 α0 c0 a0 b0 c1 a1 b1 ck ak bk . . . . . . Lemma: ∀k, Gk admits only two robust MISs M1 (in red) and M2 = V \ M1. (1) Anonymous case (easy): Both extremities have same view up to distance Θ(n), but they must decide differently. (2) Identified networks: let L1, L2, L3 be disjoint labeling functions that assign identifiers to n/3 nodes starting at one extremity (left or right). Let the whole graph be labeled either (1) L1·x·L2; (2) L1·y·L3; (3) L2·z·L3, with x, y, and z arbitrary. Unless using information within Ω(n) hops, βk and bk will decide identically in some cases, whatever the algorithm.
SLIDE 46
Not local in general graphs! (i.e. Ω(n))
∃ Infinite family of graphs (Gk)k∈N, of diameter Θ(k) = Θ(n). βk γk αk β1 γ1 α1 β0 γ0 α0 c0 a0 b0 c1 a1 b1 ck ak bk . . . . . . Lemma: ∀k, Gk admits only two robust MISs M1 (in red) and M2 = V \ M1. (1) Anonymous case (easy): Both extremities have same view up to distance Θ(n), but they must decide differently. (2) Identified networks: let L1, L2, L3 be disjoint labeling functions that assign identifiers to n/3 nodes starting at one extremity (left or right). Let the whole graph be labeled either (1) L1·x·L2; (2) L1·y·L3; (3) L2·z·L3, with x, y, and z arbitrary. Unless using information within Ω(n) hops, βk and bk will decide identically in some cases, whatever the algorithm. → Essentially as bad as collecting all information at one node and use offline algo.
SLIDE 47 Centralized algorithm to find RMISs in general (in P)
Objective: Finds a RMIS if one exists, rejects otherwise.
12
C D
14
E F 15 G
16
H I J K L M N O
17 18 19 20 22 21 23 24 25 26 27 28 29 30 31 5 4 3 1 6 7 8 9 10 11 13 2
A B
{14,15} 21 {8,21} 15 16 17 18 20 {18,20}
H
{16,17} {8,14} 11 14
M
{3,4} 3 {2,3} {3,5} 4 7 {6,7} 5 2 6
J
8 {15,16} 24
K
22 28 12 10 {11,12} {10,28}
N
{22,24}
↑ Decomposition into biconnected components ABC-tree ր
SLIDE 48 Polynomial-time algorithm to find RMISs (2)
PO PI PE PI PE PI PO PI PE PI PO PI PO PE PE PI PI PO PI PO PI PO PI PO PI PE PI PO PI PO PI PE PI PO PI PO PI PE PI PE PI PE PI PO PI PO PI PO PI PO PI PO PI PE PI PO PI PO PE PE PI PI PI 16 17 18 20 {18,20}
H
{16,17} {8,14} {14,15}
root
PO 11 14
M
{3,4} 3 {2,3} {3,5} 4 7 {6,7} 5 2 6
J
8 {15,16} 24
K
22 28 12 10 {11,12} {10,28}
N
{22,24} 21 {8,21} 15 5 4 3 1 6 7 8 9 10 11 13 2 14 15 16 17 18 19 20 22 21 23 24 25 26 27 28 29 30 31 12
↑ Tagging Resulting RMIS ր
SLIDE 49
Dˇ ekuji !