New Techniques for Visualisation of Large and Complex Networks with Directed Edges Tim Dwyer 1 Yehuda Koren 2 1 Monash University, Victoria, Austr 2 AT&T - Research
Dec 19, 2015
New Techniques for Visualisation of Large and Complex Networks with
Directed Edges
Tim Dwyer1
Yehuda Koren2
1 Monash University, Victoria, Australia2 AT&T - Research
Papers
Tim Dwyer, Yehuda Koren
“DiG-CoLa: Directed Graph Layout through Constrained Energy Minimization”
IEEE Symposium on Information Visualization (2005) 65-72
Tim Dwyer, Yehuda Koren, Kim Marriott
“Stress Majorization with Orthogonal Ordering Constraints”
Graph Drawing (2005)
Magnetic Springs – Sugiyama & Misue 1995
Augmentation of Force-directed layout for general graphs
Metaphor:– edges are “magnetised” to
align with a field force
Symmetric Nodes
Two nodes i and j are symmetric when there exists a permutation π such that: π(i)=j and π(j)=i and L=Lπ, b=bπ
Such i and j must have the same hierarchy energy Problematic symmetric nodes appear frequently in
cycles.
a b c d
a 2 -1
b -1 2 -1
c -1 2 -1
d -1 2
a b
cd
d c b a
d 2 -1
c -1 2 -1
b -1 2 -1
a -1 2
=
Layout by Stress Majorization
Stress function:
-w12 -w1n
-w2n
…
…
Σi≠1w1i
Σi≠2w2i…
Σi≠nwin
Constant terms
Quadratic coefficients
Linear coefficients
Layout by Stress Majorization
Iterative algorithm:
Take Z=Xt
Find Xt+1 by solving FZ(Xt+1)
t=t+1
Converges on local minimum of overall stress function
Stress function:
Stress Majorisation vs Kamada Kawai – Gansner et al. 2004
FM global minimisation leads to monotonic decrease in stress
KK can oscillate FM generally
converges faster Experiments suggest
FM handles weighted edges much better.
Our Contribution
Conjecture: – Hierarchy Energy provides a more “natural” mapping of
directed structure to levels than methods requiring cycle removal
We can overcome HE method’s problems with symmetric nodes using constrained graph drawing
We show that Stress Majorization (with it’s benefits over KK) is easily augmented with constraints
Other applications:– Directed Multi-Dimensional Scaling– Orthogonal order preserving layout
Quadratic Programming
At each iteration, in each dimension we solve:
xT A x – 2 xT AZ Z(a)
bT = 2 AZ Z(a)
xT A x – b xminx
subject to: C x ≥ d
Stress Majorization with Level Constraints
Fz(x) is quadratic form Removing first row and column of matrices
(corresponding to y0) fixes y0 = 0 and forces positive-definite Laplacian
Remove y0 from any constraints, – ie. y0 – ci ≥ sep becomes ci ≥ sep
Can solve with any quadratic programming method– A standard optimisation toolkit (e.g. interior point - Mosek)– The simple form of the separation constraints means we
can design a very fast custom solver
Inducing level constraints from hierarchy energy
1. Compute optimiser of hierarchy energy: yH*
2. Create list of nodes sorted on increasing yH*
3. Scan list, create new level whenever: yi – yi-1>tol
4. Create |levels-1| dummy variables c1..|levels-1|
5. For each node j in each level i (except last) create constraint: yj – ci ≥ sep
6. For each node j in each level i (except first) create constraint: ci – yj ≥ sep