Evolving Graphs & Dynamic Networks : Old questions New insights Afonso Ferreira S. Bhadra CNRS I3S & INRIA Sophia Antipolis
Technology aware - Problem driven behavior Develop combinatorial models for networks –graphs, hypergraphs, etc. Identify underlying optimisation problems –coloring, flows, connectivity, etc. Design (combinatorial) algorithms –exact, distributed, on-line, approximation, randomized, (you may use linear programming), etc. Apply solutions to technology –improvements spread several technologies
Combinatorial Models for Dynamic Networks....
Graphs Random Graphs Dynamic Graphs Time-Expanded Graphs (MERIT) Our small dot: Formalize the notion of time evolution in graphs
Outline Dynamic Networks & Evolving Graphs –Modeling time evolution in a formal way –Paths & Journeys –Old problems - New complexities Connected Components –Multicast trees in Mobile Networks –Current & Future work
Mobile Dynamic Networks
T1T1 T2T2 T3T3 T4T4 Distance = 3 = 4
T1T1 T2T2 T3T3 T4T4 Distance = 3 hops / 1 TU = 1 hop / 4 TU
1,2,3 1,3 1,2,4 1,3, The Evolving Graph 4
1,2,3 1,3 1,2,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. Timed evolving graphs (TEGs): –Traversal time on the edges.
Evolving Graphs Coding: Linked adjacency lists –Sorted edge schedule attached to each neighbor. –Sorted node schedule attached to head nodes. Dynamics: –Size of edge and node lists. A compact and tractable representation of Time-Expanded Graphs [FF’58]
EGs & Dynamic Networks Fixed-Schedule –Satellite constellations –Transportation networks –Robot networks History –Competitive analysis –MERIT Stochastic –Mobility model
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). Some facts: –Journeys cannot go to the past –A round journey is J(u,u, s). Like a usual circuit, but not quite.
1,2,3 1,3 1,2,4 1,3, The Evolving Graph 4
Some Distances Minimum hop count = Usual distance –shortest journey 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 and insert it in the ‘shortest paths’ tree. (TEGs are complex: Prefix journeys of foremost journeys are not necessarily foremost.) [IJFCS’03]
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. 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:
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:
CCs and o-CCs A connected component of EG is defined as a maximal subset U of V, such that the EG induced by U is connected. An open connected component of EG is defined as a maximal subset U of V, such that for every pair (u,v) of U, there is a journey in EG from u to v and vice-versa.
Complexity of (o-)CCs 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 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.
The idea vivi h ii h ik h ki h kk vkvk 3 1,
A Foremost Multicast Tree
Current & Future Work Rooted timed trees ( SSSPs) in TEGs –Foremost, shortest, fastest Rooted MST is NP-Complete –But Min Max RST is Polynomial! Applications: –Multicast trees, Energy aware routing, etc. Flows, coloring, scheduling,... in EGs Distributed algorithms for EGs –Competitive analysis of protocols (MERIT) Harness Dynamic Networks
Thank you
The End
Foremost Journeys in EGs Setting: –Deterministic, Off-line, Centralized With LOG, packet transmission time is normalized so as to coincide with the duration of a time step. For TEGs is more complex: –Prefix journeys of foremost journeys are not necessarily foremost.
Evolving Graphs Representations Imagine two presence matrices: P E and P V –Presence of edges and nodes at time step t i. Coding: Linked adjacency lists –Sorted edge schedule attached to each neighbor. –Sorted node schedule attached to head nodes. Dynamics: .
1,2,3 1,3 1,2,4 1,3, Example of Journeys 4
Dynamic Networks & Evolving Graphs Afonso Ferreira CNRS I3S & INRIA Sophia Antipolis With S. Bhadra, B. Bui Xuan, A. Jarry
22h00 18h00 17h0016h00 13h00 12h00 07h00 10h00 11h00 13h00 15h00 Fixed-Schedule Dynamic Networks 07h00 10h00
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
Dynamic Networks Mobile Wireless Networks (eg, Ad-hoc) Fixed Packet Networks (eg, Internet) Fixed Connected Networks (eg, WDM) Fixed-Schedule Networks (eg, LEO Satellites, Robots, Transport)
Dynamic Networks Fixed-Schedule Networks (eg, LEO Satellites, Robots, Transport)
Examples of Scenarios for Node Absence Scenario 1: There is information conservation. Scenario 2: There is no information conservation.
Evolving Graphs S SGiven a graph G(V,E) and an ordered sequence of its subgraphs, S G =G t 0, G t 1,..., G t T. Then, the system EG = (G, S G ) is called an evolving graph.
Analysis O(M (log + log N)) operations. Again bounded by the actual dynamics of the evolving graph.
Journey Issues Distances –Hop count –Arrival date –Journey time
Fixed Dynamic Networks
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 Algorithm for fading memory Source: 0 2/3/5/6/10 Time: