Title: (A fast quadratic program solver for) Stress Majorization with Orthogonal Ordering Constraints
1(A fast quadratic program solver for)Stress
Majorization with Orthogonal Ordering Constraints
- Tim Dwyer1
- Yehuda Koren2
- Kim Marriott1
1 Monash University, Victoria, Australia 2 ATT -
Research
2Orthogonal order preserving layout
3Orthogonal order preserving layoutNew South
Wales rail network
4Graph layout by Stress Majorization
- Stress Majorization in use in MDS applications
for decades - e.g. de Leeuw 1977
- Reintroduced to graph-drawing community by
Gansner et al. 2004 - Features
- Monotonic convergence
- Better handling of weighted edges (than
Kamada-Kawai 1988) - Addition of constraints by quadratic programming
(Dwyer and Koren 2005) - Today we introduce
- A fast quadratic programming algorithm for a
simple class of constraints
5Layout by Stress Majorization
Constant terms
Linear coefficients
Quadratic coefficients
6Layout by Stress Majorization
- Iterative algorithm
- Take ZXt
- Find Xt1 by solving FZ(Xt1)
- tt1
- Converges on local minimum of overall stress
function
7Quadratic Programming
- At each iteration, in each dimension we solve
xT A x b x
8Orthogonal Ordering Constraints
9QP with ordering constraints
xT A x b x
10Gradient projection
g 2 A x b
x
x' x s g
11Gradient projection
g 2 A x b
x' project( x s g )
x' x s g
x
12Gradient projection
g 2 A x b
x' project( x s g )
d x' x
x
x'' x a d
13Gradient projection
g 2 A x b
x' project( x s g )
d x' x
x
x'' x a d
14Projection Algorithm
- Sort within levels
- For each boundary
- Find most violating nodes
- Repeat
- Compute average position p
- Find nodes in violation of p
- Until all satisfied
15Projection Algorithm
- Sort within levels
- For each boundary
- Find most violating nodes
- Repeat
- Compute average position p
- Find nodes in violation of p
- Until all satisfied
16Complexity
- Projection O( mn n log n )
- m levels
- n nodes
- Computing gradient and step-size O( n2 )
- Gradient Projection iteration O( n2 )
- Same as for conjugate-gradient
17Applications directed graphs
18Applications directed graphs
19Orthogonal order preserving layoutNew South
Wales rail network
20Orthogonal order preserving layoutInternet
backbone network
21Running Time
22Further work
- Experiment with other constrained optimisation
techniques - Other applications
- Using more general linear constraints
- Constraints regenerated at each iteration