530 likes | 765 Views
Dynamic Networks & Evolving Graphs. Afonso Ferreira CNRS I3S & INRIA Sophia Antipolis Afonso.Ferreira@sophia.inria.fr With A ubin Jarry. Dynamic Networks. Mobile Wireless Networks (eg, Ad-hoc) Fixed Packet Networks (eg, Internet) Fixed Connected Networks (eg, WDM)
E N D
Dynamic Networks & Evolving Graphs Afonso Ferreira CNRS I3S & INRIA Sophia Antipolis Afonso.Ferreira@sophia.inria.fr With Aubin Jarry
Dynamic Networks • Mobile Wireless Networks (eg, Ad-hoc) • Fixed Packet Networks (eg, Internet) • Fixed Connected Networks (eg, WDM) • FixedSchedule FixedNetworks • (eg, Sensors, Transport) • FixedSchedule Mobile Networks (eg, LEO Satellites, Robots)
T2 T3 T1
Distance = 3 = 4 T2 T1 T4 T3
Distance = 3 hops / 1 TU = 1 hop / 4 TU T2 T1 T4 T3
Outline • Motivation: grasp dynamic networks • The Evolving Graph • Distances, Paths, Journeys, Connectivity, ... • Old questions - New insights • A direct application • Conclusions
2003 NSF report onFundamental 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
The Evolving Graph 2 1,4 1,2,3 1,3 1,3,4 2 4 3 1 4
The Evolving Graph 2 1,4 1,2,3 1,3 1,3,4 2 4 3 1 4
Evolving Graphs [Algotel’02] • Given a graph G(V,E) and an ordered sequence of its subgraphs, SG=Gt0, Gt1, ..., GtT. Thesystem EG = (G, SG) 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.
Journeys in EGs • Sequence of edges {e1, e2, …, ek} 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.
The Evolving Graph 2 1,4 1,2,3 1,3 1,3,4 2 4 3 1 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.)
5 7 Algorithm Time: 8 6 5 4 3 2 1 7 2 2/3/5/9 6 1/2/4/10 0 6/8 Source: 4 3/8 5/6/7 5 5/6/7 9 1/2 2/3/6 9 10 6 1/7
Analysis • For each closed vertex, the algorithm performs O(log + log N) operations per neighbor. • Total number of operations is O(vV [| +(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.
6 2/3/5/6/10 7 Algorithm for fading memory Time: 8 6 5 4 3 2 1 7 1 1/3/5/9 7 0 2/6 Source: 2 7/8 5/10 5/6 3 3/6 7 2/10 2/3/6 9 10 6 1/9
Analysis • O(M (log + log N)) operations. • Again bounded by the actual dynamics of the evolving graph.
Journey Issues [WiOpt’03, IJFCS 03] • 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
Connectivity Issues • An EG is said to be connected if for every pair (u,v) there is a journey from u to vand 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 vand a journey from v to u.
Example I: CC 1 1 4 2
Example I: CC CC: 1 1 4 2
Example II: CC 1 1 CC: 4 2
Example II: o-CC 1 1 O-CC: 4 2
Complexity result [Ad-Hoc Now 03] • Computing (o-)CCs is NP-Complete. • It is in NP: computing journeys is polynomial. • Reduction from Clique
The Gadget Given G =(V,E) and integer k, create an EG: For each ui in V create a vi and a hii. • Time step 1: • Create a CC connecting all h-nodes. • Time step 2: • Create edges {vi,hii}, • For each edge {ui, uj} in E, create edges {vi,hij}. • Time step 3: • For each edge {ui, uj} in E, create edges {hij,vj}. • Time step 4: • Create a CC connecting all h-nodes.
AKey Issue? 2 1,4 1,2,3 1,3 1,3,4 2 4 3 1 4
An application • Minimum Energy Broadcast & Range Assignment Problem (STACS 97, Infocom 00) • E~d2
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 [WiOpt 04] • NP-Complete (Reduction from Steiner) • Precludes the use of the MST-based heuristic to solve the MEB&RAP in dynamic networks
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 onFundamental 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 Afonso.Ferreira@sophia.inria.fr
The idea 1,4 hii hik 2 2 3 vi vk 1,4 1,4 3 2 2 hki hkk 1,4
Networks • Valued graphs • Weights = costs, distance, traversal time, etc. 2 4 3 1 1 2 4 3 1 4
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
2 1 1 Networks • Weights = traversal time: Time-expanded graphs [FF’58] 1 1 2 1 1
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)
5 7 Algorithm Time: 8 6 5 4 3 2 1 7 2 2/3/5/9 6 1/2/4/10 0 6/8 Source: 4 3/8 5/6/7 5 5/6/7 9 1/2 2/3/6 9 10 6 1/7
6 2/3/5/6/10 7 Fading memory Time: 8 6 5 4 3 2 1 7 1 1/3/5/9 7 0 2/6 Source: 2 7/8 5/10 5/6 3 3/6 7 2/10 2/3/6 9 10 6 1/9
Example of Journeys 2 1,2,4 1,2,3 1,3 1,3,4 2 4 3 1 4
10h00 07h00 Fixed-Schedule Dynamic Networks 17h00 16h00 13h00 18h00 12h00 10h00 11h00 13h00 15h00 22h00 07h00 10h00
Motivation: Formalize the notion of time in graphs 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