Dynamic Networks & Evolving Graphs Afonso Ferreira CNRS I3S & INRIA Sophia Antipolis With Aubin Jarry
Dynamic Networks Mobile Wireless Networks (eg, Ad-hoc) Fixed Packet Networks (eg, Internet) Fixed Connected Networks (eg, WDM) Fixed Schedule Fixed Networks –(eg, Sensors, Transport) Fixed Schedule Mobile Networks (eg, LEO Satellites, Robots)
T1T1 T2T2 T3T3
T1T1 T2T2 T3T3 T4T4 Distance = 3 = 4
T1T1 T2T2 T3T3 T4T4 Distance = 3 hops / 1 TU = 1 hop / 4 TU
Outline Motivation: grasp dynamic networks The Evolving Graph Distances, Paths, Journeys, Connectivity,... Old questions - New insights A direct application Conclusions
2003 NSF report on Fundamental Research in Networking Understanding about networks –Needs: Substantial innovation and paradigm shifts Scalable design and control of networks –Needs: Fundamental understanding Reproducibility of experiments –Needs: Reference models and benchmarks
1,2,3 1,3 1,4 1,3, The Evolving Graph 4
1,2,3 1,3 1,4 1,3, The Evolving Graph 4
Evolving Graphs SGiven a graph G(V,E) and an ordered sequence of its subgraphs, S G =G t 0, G t 1,..., G t T. S The system EG = (G, S G ) is called an evolving graph. Input coding: list of presence intervals for each edge and for each vertex (this can be evidently relaxed in case of a valid mobility model, eg) Dynamics: –Size of edge and node lists. [Algotel’02]
Journeys in EGs Sequence of edges {e 1, e 2, …, e k } of G called a Route R(u,v) (= a path in G). A schedule s respecting EG and R, defines a journey J(u,v, s). Observations: –Journeys cannot go to the past –A round journey is J(u,u, s). Like a usual cycle, but not quite.
1,2,3 1,3 1,4 1,3, The Evolving Graph 4
Routing Issues Minimum hop count = Distance –shortest journey Timed evolving graphs (TEGs): –traversal time on the edges. Minimum arrival date = Earliest arrival date – foremost journey Minimum journey time = Delay –fastest journey
Algorithm for Foremost Journeys Delete root of heap into x. For each open neighbor v of x: –Compute first valid edge schedule time greater or equal to current time step –Insert v in the heap if it was not there already. If needed, update distance to v and its key. Update the heap. Close x. Insert it in the ‘shortest paths’ tree. (TEGs are complex: Prefix journeys of foremost journeys are not necessarily foremost.)
2/3/5/9 1/2/4/10 6/8 5/6/7 1/2 5/6/7 9 2/3/6 10 3/ /7 7 Algorithm Source: 0 Time:
Analysis For each closed vertex, the algorithm performs O(log + log N) operations per neighbor. Total number of operations is O( v V [| + (v) | (log + log N)]) = O(M (log + log N)). Bounded by the actual size of the schedule lists, which measures the number of changes in the network topology.
1/3/5/9 2/6 7/8 5/6 2/10 3/6 7 2/3/6 10 5/ /9 7 Algorithm for fading memory Source: 0 2/3/5/6/10 Time:
Analysis O(M (log + log N)) operations. Again bounded by the actual dynamics of the evolving graph.
Journey Issues Minimum arrival date = Earliest arrival date –O(M (log + log N)) Minimum hop count = Usual distance –O(NM log ) Minimum journey time = Delay –O(NM 2 ) Many others to explore [WiOpt’03, IJFCS 03]
Connectivity Issues An EG is said to be connected if for every pair (u,v) there is a journey from u to v and a journey from v to u. A connected component of EG is defined as a maximal subset U of V, such that for every pair (u,v) there is a journey from u to v and a journey from v to u.
Example I: CC
CC:
Example II: CC CC:
Example II: o-CC O -CC:
Complexity result Computing (o-)CCs is NP-Complete. –It is in NP: computing journeys is polynomial. –Reduction from Clique [Ad-Hoc Now 03]
The Gadget Given G =(V,E) and integer k, create an EG: For each u i in V create a v i and a h ii. Time step 1: –Create a CC connecting all h-nodes. Time step 2: –Create edges {v i,h ii }, –For each edge {u i, u j } in E, create edges {v i,h ij }. Time step 3: –For each edge {u i, u j } in E, create edges {h ij,v j }. Time step 4: –Create a CC connecting all h-nodes.
1,2,3 1,3 1,4 1,3, A Key Issue? 4
An application Minimum Energy Broadcast & Range Assignment Problem (STACS 97, Infocom 00) E~d 2
The MEB&RAP NP- Complete 12-Approximation –Direct computation of the MST of the underlying weighted complete graph –Analysis using geometric arguments
The MEB&RAP Static x (Low) Dynamic What is a MST over time?? Take an Ad-Hoc network where nodes do not move, but can alternate sleep/awake modes according to a predefined schedule: –A MST over time is a rooted MST allowing for journeys from the root to the leafs in the corresponding weighted evolving graph
Computing a MST over time NP-Complete (Reduction from Steiner) Precludes the use of the MST-based heuristic to solve the MEB&RAP in dynamic networks [WiOpt 04]
Current & Future Work Rooted MST is NP-Complete –But Local Minima RST is Polynomial! Flows in EGs Algorithms for EGs (eg Connected Components) Distributed algorithms for EGs –Competitive analysis of protocols Harness Dynamic Networks
Related Combinatorial Models used in Dynamic Networks Graphs Random Graphs & Adversaries [Scheideler’02] Dynamic Graph Algorithms [Frigioni et al’00] Time-Expanded Graphs [FoFu’58] MERIT [FaSy’01] –A sequence of historic network snapshots –Competitive analysis of protocols
NSF report on Fundamental Research in Networking Understanding about networks –Needs: Substantial innovation and paradigm shifts Scalable design and control of networks –Needs: Fundamental understanding Reproducibility of experiments –Needs: Reference models and benchmarks
Conclusion Evolving Graphs –Graphs + Time Domain –A model for complexity, combinatorics, algorithms Old questions - New insights –Hardness induced by time Many applications in Dynamic Networks –Wireless nets, evolving request matrices, transports... Many new ways to explore!
The End
The idea vivi h ii h ik h ki h kk vkvk 3 1,
Networks Valued graphs Weights = costs, distance, traversal time, etc
Networks Road networks, railway systems –Traversal times are arbitrary but finite –Arcs are closed at certain periods –Parking is allowed at vertices whenever possible Computing shortest paths in loaded networks –Earliest Arrival Times [HP’74,D’66] –Dijkstra-like, no complexity analysis
Networks Weights = traversal time: Time-expanded graphs [FF’58]
Networks Weights = traversal time: Time-expanded graphs [FF’58] Complexity increases –Pseudo-polynomial (weights must be integers) Time-dependent networks [CH’66] –Weights depend on the number of flow units entering the link –Computation of quickest flows (ESA’02, SODA’02)
2/3/5/9 1/2/4/10 6/8 5/6/7 1/2 5/6/7 9 2/3/6 10 3/ /7 7 Algorithm Source: 0 Time:
1/3/5/9 2/6 7/8 5/6 2/10 3/6 7 2/3/6 10 5/ /9 7 Fading memory Source: 0 2/3/5/6/10 Time:
1,2,3 1,3 1,2,4 1,3, Example of Journeys 4
22h00 18h00 17h0016h00 13h00 12h00 07h00 10h00 11h00 13h00 15h00 Fixed-Schedule Dynamic Networks 07h00 10h00
Models for Dynamic Networks Graphs Random Graphs Dynamic Graphs –Discrete step is one link/node change –Focus on data-structures & amortized analyses –Time is not an issue Motivation: Formalize the notion of time in graphs
EGs & Dynamic Networks Fixed-Schedule –Satellite constellations –Transportation networks –Robot networks History –Competitive analysis –MERIT Stochastic? –Mobility model
Some Issues in Dynamic Networks Property maintenance –E.g., Minimum Spanning Tree Fault tolerance –Link/node failure Congestion avoidance –Time dependency Topology prediction –The Web
Combinatorial Models for Dynamic Networks....