Structural Differences Between Two Graphs through Hierarchies Daniel - - PowerPoint PPT Presentation

structural differences between two graphs through
SMART_READER_LITE
LIVE PREVIEW

Structural Differences Between Two Graphs through Hierarchies Daniel - - PowerPoint PPT Presentation

Structural Differences Between Two Graphs through Hierarchies Daniel Archambault 1 1 GRAVITE, INRIA Bordeaux Sud-Ouest, France Daniel Archambault Graph Difference 1/ 24 Introduction The Wine Difference Problem Wikimedia Project, Creative


slide-1
SLIDE 1

Structural Differences Between Two Graphs through Hierarchies

Daniel Archambault1

1GRAVITE, INRIA Bordeaux Sud-Ouest, France Daniel Archambault Graph Difference 1/ 24

slide-2
SLIDE 2

Introduction

The Wine Difference Problem

Wikimedia Project, Creative Commons Licence, André Karwath

Carefully studying this important problem...

Daniel Archambault Graph Difference 2/ 24

slide-3
SLIDE 3

Introduction

The Graph Difference Problem Structural evolution of dynamic graphs

how does a dynamic graph evolve over time

Typical technique in graph drawing community

show graph evolution through animation

Daniel Archambault Graph Difference 3/ 24

slide-4
SLIDE 4

Introduction

Video

  • Y. Frishman and A. Tal. Online Dynamic Graph Drawing. EuroVis 2007

Daniel Archambault Graph Difference 4/ 24

slide-5
SLIDE 5

Introduction

Difference Map and Small Multiples Approach ∆t = 10 and 11 ∆t = 11 and 12 ∆t = 12 and 13 Is this an improvement?

Need an experiment to support this argument

Contributes new algorithms to generate coarsened difference map

Daniel Archambault Graph Difference 5/ 24

slide-6
SLIDE 6

Previous and Related Work

Animation as Dynamic Graph Evolution

Krists Boitmanis, Ulrik Brandes, and Christian Pich. Visualizing Internet Evolution on the Autonomous Systems Level.

  • Symp. Graph Drawing (GD ’07)

By far, most common method for dynamic graph visualization Changes faded in and out, node movement interpolated

Daniel Archambault Graph Difference 6/ 24

slide-7
SLIDE 7

Previous and Related Work

Small Multiples and Dynamic Attributes

  • E. H. Chi and S. Card. Sensemaking of Evolving Web Sites using Visualization Spreadsheets (InfoVis ’99)

Not frequently used to depict structural evolution of graphs Experiments suggest may be better for dynamic data

Daniel Archambault Graph Difference 7/ 24

slide-8
SLIDE 8

Previous and Related Work

Hierarchy-Based Graph Visualization

(a) DA-TU, 2000 (b) ASK-GraphView, 2006 (c) GrouseFlocks, 2008

Abstract away parts of the graph where details not required

used to abstract away structural difference

Daniel Archambault Graph Difference 8/ 24

slide-9
SLIDE 9

Previous and Related Work

Path-Preserving Hierarchy

(a) (b)

Defined in GrouseFlocks work A path in the hierarchy means at least one path in the graph Path-preserving hierarchies respect this property

Daniel Archambault Graph Difference 9/ 24

slide-10
SLIDE 10

Previous and Related Work

Path-Preserving Hierarchy

(a) Edge Conservation (b) Connectivity Conservation

Metaedge if and only if a pair of descendants connected Metanodes contain connected subgraphs If preserved, paths in cuts are also in underlying graph

Daniel Archambault Graph Difference 10/ 24

slide-11
SLIDE 11

Algorithm

Algorithm Overview

1

Construct difference map

2

Difference hierarchy construction

3

Degree One Coarsening

4

Betweenness Centrality Coarsening

Daniel Archambault Graph Difference 11/ 24

slide-12
SLIDE 12

Algorithm

Difference Map Construction Each node in graph is guaranteed a unique labelling Can be done through a single scan of the node and edge list of each graph. O(|N| + |E|) for the nodes in both graphs

Daniel Archambault Graph Difference 12/ 24

slide-13
SLIDE 13

Algorithm

Difference Hierarchy Construction (1)

A B C D E F G H I J K L M N

(a) Input

A B C D E F G H I J E E E G K L M N F

(b) Edge Decomposition

Decompose the graph into connected components by edge difference

Daniel Archambault Graph Difference 13/ 24

slide-14
SLIDE 14

Algorithm

Difference Hierarchy Construction (2)

A B C D E F G H I J K L M N

(a) Node Decomposition

A D E F G {B, C} {H, I, J} {K, L, M} N

(b) Graph Hierarchy

Decompose by node difference Create a hierarchy based on node and edge difference

Daniel Archambault Graph Difference 14/ 24

slide-15
SLIDE 15

Algorithm

Degree One Coarsening

A B C D E

(a) Before Coarsening

A {B, C} {D, E}

(b) After Coarsening

Group degree one nodes attached same root together Does not need to be connected because paths begin/end here

Daniel Archambault Graph Difference 15/ 24

slide-16
SLIDE 16

Algorithm

Betweenness Centrality Coarsening Coarsens away nodes with:

little change in betweenness centrality large metanodes common to both graphs

Daniel Archambault Graph Difference 16/ 24

slide-17
SLIDE 17

Results

Results: Threads ∆t = 10 and 11 ∆t = 10 and 11 ∆t = 11 and 12 ∆t = 12 and 13 ∆t = 13 and 14 ∆t = 14 and 15 Newsgroup discussion between 62-70 nodes and 72-87 edges

Daniel Archambault Graph Difference 17/ 24

slide-18
SLIDE 18

Results

Results: Opte (1)

(a) Difference Map (b) Hierarchy

Internet scan of about 40,000 nodes and 47,000 edges

Daniel Archambault Graph Difference 18/ 24

slide-19
SLIDE 19

Results

Results: Opte (2)

(a) Hierarchy (b) Degree One Coarsening

Internet scan of about 40,000 nodes and 47,000 edges Degree one coarsening applied

Daniel Archambault Graph Difference 19/ 24

slide-20
SLIDE 20

Results

Results: Opte (3)

(a) Degree One Coarsening (b) Betweenness Centrality Coarsening

Internet scan of about 40,000 nodes and 47,000 edges Betweenness centrality coarsening applied

Daniel Archambault Graph Difference 20/ 24

slide-21
SLIDE 21

Results

Results: RouteViews Internet scan of about 24,000 nodes and 58,000 edges Work still to be done Possible coarsening techniques to simplify hierarchy

Daniel Archambault Graph Difference 21/ 24

slide-22
SLIDE 22

Future Work and Conclusion

Future Work Do difference maps help in understanding structural evolution?

currently designing an experiment to provide evidence

Can people properly interpret hierarchies in a difference context? Coarsening techniques to scale to larger graphs

Daniel Archambault Graph Difference 22/ 24

slide-23
SLIDE 23

Future Work and Conclusion

Conclusion Visualizing structural difference between two graphs Contributions

use hierarchy to coarsen away areas of similarity/difference path-preserving coarsening technique betweenness centrality coarsening technique

Scales to graphs of tens of thousands of nodes

Daniel Archambault Graph Difference 23/ 24

slide-24
SLIDE 24

Future Work and Conclusion

Acknowledgements Thank you Guy Melançon and David Auber for numerous discussions Thank you LaBRI for comments on the work Partially funded by the INRIA GRAVITÉ project Questions?

Daniel Archambault Graph Difference 24/ 24