Using Vector Clocks to Visualize Communication Flow
-
Upload
martin-harrigan -
Category
Documents
-
view
1.441 -
download
8
Transcript of Using Vector Clocks to Visualize Communication Flow
![Page 1: Using Vector Clocks to Visualize Communication Flow](https://reader034.fdocuments.us/reader034/viewer/2022052620/557ace27d8b42a2c0f8b4e18/html5/thumbnails/1.jpg)
Using Vector Clocks to VisualizeCommunication Flow
Martin Harrigan
Complex & Adaptive Systems Laboratory (CASL)University College Dublin
![Page 2: Using Vector Clocks to Visualize Communication Flow](https://reader034.fdocuments.us/reader034/viewer/2022052620/557ace27d8b42a2c0f8b4e18/html5/thumbnails/2.jpg)
IntroductionCommunication FlowVector Clocks
The Methodology
Experiments
Conclusions & Future Work
![Page 3: Using Vector Clocks to Visualize Communication Flow](https://reader034.fdocuments.us/reader034/viewer/2022052620/557ace27d8b42a2c0f8b4e18/html5/thumbnails/3.jpg)
Introduction
A metaphor for communication: flow in conduits
‘slow and fast conduits’ (Kossinets et al., ’08)
‘transatlantic flows of communication’ (Leskovec
& Horvitz, ’08)
‘a series of tubes’ (Stevens, ’06)
It is a tempting metaphor when visualizing communication flow.
A dynamic weighted directed graph?
people ↔ vertices
communications ↔ (weighted)directed edges
time ↔ animation
![Page 4: Using Vector Clocks to Visualize Communication Flow](https://reader034.fdocuments.us/reader034/viewer/2022052620/557ace27d8b42a2c0f8b4e18/html5/thumbnails/4.jpg)
Introduction
Is the graphical design grounded in the substance to becommunicated (Brandes, ’99)?
Is there a discrepancy between the visualization and theanalysis of communication flow?
Visualization
crossings
area
slopes
symmetries
mental map
Analysis
synchronization
information latency
temporal distance
network backbones
periodicity
Can we integrate the two?
![Page 5: Using Vector Clocks to Visualize Communication Flow](https://reader034.fdocuments.us/reader034/viewer/2022052620/557ace27d8b42a2c0f8b4e18/html5/thumbnails/5.jpg)
Introduction
Vector clocks are a useful tool when analyzingcommunication flow...
Introduced by Fidge (’88) and Mattern (’89).
Aid with the causal ordering of events indistributed systems.
Provide greater insight into communication flowthan dynamic weighted directed graphs (Kossinets et al.,
’08).
We can use them to visualize communication flow.
![Page 6: Using Vector Clocks to Visualize Communication Flow](https://reader034.fdocuments.us/reader034/viewer/2022052620/557ace27d8b42a2c0f8b4e18/html5/thumbnails/6.jpg)
Introduction
A suggests to B,C, and D thatthey meet at theCity HotelOdense.
![Page 7: Using Vector Clocks to Visualize Communication Flow](https://reader034.fdocuments.us/reader034/viewer/2022052620/557ace27d8b42a2c0f8b4e18/html5/thumbnails/7.jpg)
Introduction
C and D agreeto meet at theCab Inn.
![Page 8: Using Vector Clocks to Visualize Communication Flow](https://reader034.fdocuments.us/reader034/viewer/2022052620/557ace27d8b42a2c0f8b4e18/html5/thumbnails/8.jpg)
Introduction
B and D agreeto meet at theRadisson Blu.
![Page 9: Using Vector Clocks to Visualize Communication Flow](https://reader034.fdocuments.us/reader034/viewer/2022052620/557ace27d8b42a2c0f8b4e18/html5/thumbnails/9.jpg)
Introduction
A checks with Band C where theyshould meet.
D is no longerreachable but theyknow to meet himat the RadissonBlu.
![Page 10: Using Vector Clocks to Visualize Communication Flow](https://reader034.fdocuments.us/reader034/viewer/2022052620/557ace27d8b42a2c0f8b4e18/html5/thumbnails/10.jpg)
Introduction
Vector clocks maintain, for each actor, the time of their mostrecent communication, either directly or indirectly, from every
other actor.
![Page 11: Using Vector Clocks to Visualize Communication Flow](https://reader034.fdocuments.us/reader034/viewer/2022052620/557ace27d8b42a2c0f8b4e18/html5/thumbnails/11.jpg)
The Methodology
visualizeVectorClocks
![Page 12: Using Vector Clocks to Visualize Communication Flow](https://reader034.fdocuments.us/reader034/viewer/2022052620/557ace27d8b42a2c0f8b4e18/html5/thumbnails/12.jpg)
The Methodology
![Page 13: Using Vector Clocks to Visualize Communication Flow](https://reader034.fdocuments.us/reader034/viewer/2022052620/557ace27d8b42a2c0f8b4e18/html5/thumbnails/13.jpg)
The Methodology
During a time interval [0, T ], we have a set of vertices V anda set of time-attributed directed edges E.
The instantaneous graph Gt = (V,Et) at time-slice t is thegraph with vertex set V and edge setEt = {(u, v)|(u, v, t) ∈ E}.
Input: G0, . . . , GT (instantaneous graphs)
![Page 14: Using Vector Clocks to Visualize Communication Flow](https://reader034.fdocuments.us/reader034/viewer/2022052620/557ace27d8b42a2c0f8b4e18/html5/thumbnails/14.jpg)
The Methodology
For each instantaneous graph:
1 Each vertex has a corresponding vector clock which representsa point in a high-dimensional space.
2 Each time-attributed directed edge (communication) updatesthe vector clock of the target (receiving) vertex.
3 We compute the distances between all pairs of vector clocksusing an appropriate metric.
4 We construct a dissimilarity matrix from these distances.
5 We use multidimensional scaling (MDS) to produce an 2-dvisualization of the data points.
![Page 15: Using Vector Clocks to Visualize Communication Flow](https://reader034.fdocuments.us/reader034/viewer/2022052620/557ace27d8b42a2c0f8b4e18/html5/thumbnails/15.jpg)
The Methodology
Output: C0, . . . , CT (2-d coordinates for each time-slice)
t = 0 t = 1 t = 2 t = 3
Greene et al., ’10, Lancichinetti et al., 08
![Page 16: Using Vector Clocks to Visualize Communication Flow](https://reader034.fdocuments.us/reader034/viewer/2022052620/557ace27d8b42a2c0f8b4e18/html5/thumbnails/16.jpg)
The Methodology
For each instantaneous graph:
![Page 17: Using Vector Clocks to Visualize Communication Flow](https://reader034.fdocuments.us/reader034/viewer/2022052620/557ace27d8b42a2c0f8b4e18/html5/thumbnails/17.jpg)
The Methodology
For each instantaneous graph:
1 Each vertex has a corresponding vector clock which representsa point in a high-dimensional space.
φu,t =
t1t2...tn
Initialization
Individual increment ateach time-slice
![Page 18: Using Vector Clocks to Visualize Communication Flow](https://reader034.fdocuments.us/reader034/viewer/2022052620/557ace27d8b42a2c0f8b4e18/html5/thumbnails/18.jpg)
The Methodology
For each instantaneous graph:
2 Each time-attributed directed edge (communication) updatesthe vector clock of the target (receiving) vertex.
φu,t =
t1t2...tn
, φv,t =s1s2...sn
=⇒ φv,t =
max(t1, s1)max(t2, s2)
...max(tn, sn)
![Page 19: Using Vector Clocks to Visualize Communication Flow](https://reader034.fdocuments.us/reader034/viewer/2022052620/557ace27d8b42a2c0f8b4e18/html5/thumbnails/19.jpg)
The Methodology
For each instantaneous graph:
3 We compute the distances between all pairs of vector clocksusing an appropriate metric.
d(φu,t, φv,t) =√(t1 − s1)2 + (t2 − s2)2 + · · ·+ (tn − sn)2
Which metric?
![Page 20: Using Vector Clocks to Visualize Communication Flow](https://reader034.fdocuments.us/reader034/viewer/2022052620/557ace27d8b42a2c0f8b4e18/html5/thumbnails/20.jpg)
The Methodology
For each instantaneous graph:
4 We construct a dissimilarity matrix from these distances.
Mt =
0 d(φu1,t, φu2,t) · · · d(φu1,t, φun,t)
d(φu2,t, φu1,t) 0...
. . .
d(φun,t, φu1,t) 0
![Page 21: Using Vector Clocks to Visualize Communication Flow](https://reader034.fdocuments.us/reader034/viewer/2022052620/557ace27d8b42a2c0f8b4e18/html5/thumbnails/21.jpg)
The Methodology
For each instantaneous graph:
5 We use multidimensional scaling (MDS) to produce an 2-dvisualization of the data points.
Dynamic MDS?
Procrustes Analysis?
![Page 22: Using Vector Clocks to Visualize Communication Flow](https://reader034.fdocuments.us/reader034/viewer/2022052620/557ace27d8b42a2c0f8b4e18/html5/thumbnails/22.jpg)
Experiments
Four artificial datasets comprising temporal sequences ofcommunications between 100 actors during a time interval[0, 99].
The datasets were generated by fixing the set of possiblecommunications and then selecting a communication from theset of possible communications at time-slice t with probabilityp = 0.005.
Each dataset had a distinct underlying communicationpattern.
![Page 23: Using Vector Clocks to Visualize Communication Flow](https://reader034.fdocuments.us/reader034/viewer/2022052620/557ace27d8b42a2c0f8b4e18/html5/thumbnails/23.jpg)
Experiments
DS1: All communications were possible.
25th 50th 75th 100th
![Page 24: Using Vector Clocks to Visualize Communication Flow](https://reader034.fdocuments.us/reader034/viewer/2022052620/557ace27d8b42a2c0f8b4e18/html5/thumbnails/24.jpg)
Experiments
DS2: Communications were possible between every pair of actorsin only one direction such that there were no directed cycles of
communication.
25th 50th 75th 100th
![Page 25: Using Vector Clocks to Visualize Communication Flow](https://reader034.fdocuments.us/reader034/viewer/2022052620/557ace27d8b42a2c0f8b4e18/html5/thumbnails/25.jpg)
Experiments
DS3: The actors were partitioned into four equal subsets and allintra-subset communications were possible.
25th 50th 75th 100th
![Page 26: Using Vector Clocks to Visualize Communication Flow](https://reader034.fdocuments.us/reader034/viewer/2022052620/557ace27d8b42a2c0f8b4e18/html5/thumbnails/26.jpg)
Experiments
DS4: The actors were partitioned as in DS3 and intra-subsetcommunications were possible between every pair of actors in only
one direction such that there were no directed cycles ofcommunication.
25th 50th 75th 100th
![Page 27: Using Vector Clocks to Visualize Communication Flow](https://reader034.fdocuments.us/reader034/viewer/2022052620/557ace27d8b42a2c0f8b4e18/html5/thumbnails/27.jpg)
Experiments
We also visualized a VAST 2008 challenge dataset (Grinstein et al.,
’08).
This dataset comprises mobile phone call records over a 10day period between 400 unique mobile phones.
We set each time-slice equal to one hour.
25th 50th 75th 100th
![Page 28: Using Vector Clocks to Visualize Communication Flow](https://reader034.fdocuments.us/reader034/viewer/2022052620/557ace27d8b42a2c0f8b4e18/html5/thumbnails/28.jpg)
Conclusions & Future Work
A novel methodology for visualizing communication flow.
temporal sequence of communications → vector clocks
vector clocksdistance metric−−−−−−−−−−→ dissimilarity matrix
dissimilarity matrixMDS−−→ 2-d visualizations
Actors who have received the same orcommunicatively-equivalent communications are placed closetogether whereas actors that have received largely differentcommunications are placed far apart.
![Page 29: Using Vector Clocks to Visualize Communication Flow](https://reader034.fdocuments.us/reader034/viewer/2022052620/557ace27d8b42a2c0f8b4e18/html5/thumbnails/29.jpg)
Conclusions & Future Work
There is much future work:
Both the distance metric (Bellman, ’61) and the choice of MDSalgorithm need investigation.
Can we extend vector clocks to model the attenuation ofinformation, the bounded capacity of communicationchannels, etc.? Can we visualize synchronicity, networkbackbones, periodicity?
Scalability (maintenance of the vector clocks and thecomputation of the dissimilarity matrix).
![Page 30: Using Vector Clocks to Visualize Communication Flow](https://reader034.fdocuments.us/reader034/viewer/2022052620/557ace27d8b42a2c0f8b4e18/html5/thumbnails/30.jpg)
Thank You