constrained stress majorization using diagonally scaled gradient projection tim dwyer and kim...

30
Constrained stress majorization using diagonally scaled gradient projection Tim Dwyer and Kim Marriott Clayton School of Information Technology Monash University Australia

Upload: damon-matthew-dorsey

Post on 05-Jan-2016

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Constrained stress majorization using diagonally scaled gradient projection Tim Dwyer and Kim Marriott Clayton School of Information Technology Monash

Constrained stress majorization using diagonally scaled

gradient projection

Tim Dwyer and Kim Marriott

Clayton School of Information TechnologyMonash UniversityAustralia

Page 2: Constrained stress majorization using diagonally scaled gradient projection Tim Dwyer and Kim Marriott Clayton School of Information Technology Monash

Separation constraints: x1+d ≤ x2 , y1+d ≤ y2

can be used with force-directed layoutto impose certain spacing requirements

Constrained stress majorization layout

(x1,y1) (x2,y2)

(x3,y3)

w1

w2

h2

h3x1+ ≤ x2

(w1+w2)2

y3+ ≤ y2(h2+h3)

2

In this talk we present: Diagonal scaling for faster gradient projection Changes to our active-set solver Evaluation of the new method

Constrained stress majorization Stress majorization - reduce overall layout stress Gradient projection - solve quadratic programs Active-set solver - projection step

Page 3: Constrained stress majorization using diagonally scaled gradient projection Tim Dwyer and Kim Marriott Clayton School of Information Technology Monash

“Unix” Graphdata Fromwww.graphviz.org

Page 4: Constrained stress majorization using diagonally scaled gradient projection Tim Dwyer and Kim Marriott Clayton School of Information Technology Monash

Stress majorization

stre

ss(X

)

(x,y)*

x*

y*x*y*

Page 5: Constrained stress majorization using diagonally scaled gradient projection Tim Dwyer and Kim Marriott Clayton School of Information Technology Monash

Instead of solving unconstrained quadratic forms we solve subject to separation constraints

i.e. Quadratic Programming

Constrained stress majorization

stre

ss(X

)

x*

y*x*y*

(x,y)*

Page 6: Constrained stress majorization using diagonally scaled gradient projection Tim Dwyer and Kim Marriott Clayton School of Information Technology Monash

Gradient projection

-g

-αg

x0

x1

Page 7: Constrained stress majorization using diagonally scaled gradient projection Tim Dwyer and Kim Marriott Clayton School of Information Technology Monash

Gradient projection

-αgx1

Page 8: Constrained stress majorization using diagonally scaled gradient projection Tim Dwyer and Kim Marriott Clayton School of Information Technology Monash

Gradient projection

d

x2

x1

βd

Page 9: Constrained stress majorization using diagonally scaled gradient projection Tim Dwyer and Kim Marriott Clayton School of Information Technology Monash

Gradient projection

x*

Page 10: Constrained stress majorization using diagonally scaled gradient projection Tim Dwyer and Kim Marriott Clayton School of Information Technology Monash

A badly scaled problem can have poor GP convergence Condition number of is

Convergence

m

M

Page 11: Constrained stress majorization using diagonally scaled gradient projection Tim Dwyer and Kim Marriott Clayton School of Information Technology Monash

A badly scaled problem can have poor GP convergence

Perfect scaling should give immediate convergence

Convergence

Newton’s method:

Page 12: Constrained stress majorization using diagonally scaled gradient projection Tim Dwyer and Kim Marriott Clayton School of Information Technology Monash

Transform entire problem s.t.

Scaled gradient projection

Page 13: Constrained stress majorization using diagonally scaled gradient projection Tim Dwyer and Kim Marriott Clayton School of Information Technology Monash

Is itself a quadratic program

Solve with active-set style method Move each xi to ui

Build blocks of active constraints

Projection operation

u subj to: xl+d ≤ xr

ui

b d

a

c

e

Page 14: Constrained stress majorization using diagonally scaled gradient projection Tim Dwyer and Kim Marriott Clayton School of Information Technology Monash

Is itself a quadratic program

Solve with active-set style method Move each xi to ui

Build blocks of active constraints Find most violated constraint xl+d ≤ xr

Projection operation

u subj to: xl+d ≤ xr

ui

b d

a

c

e

Page 15: Constrained stress majorization using diagonally scaled gradient projection Tim Dwyer and Kim Marriott Clayton School of Information Technology Monash

Is itself a quadratic program

Solve with active-set style method Move each xi to ui

Build blocks of active constraints: Find most violated constraint xl+d ≤ xr

Satisfy and add to block B Move B to average position of constituent vars

Projection operation

u subj to: xl+d ≤ xr

ui

b

d

a

c

e

Page 16: Constrained stress majorization using diagonally scaled gradient projection Tim Dwyer and Kim Marriott Clayton School of Information Technology Monash

Is itself a quadratic program

Solve with active-set style method Move each xi to ui

Build blocks of active constraints: Find most violated constraint xl+d ≤ xr

Add to block B (satisfy constraint) Move B to average position of constituent vars

Projection operation

u subj to: xl+d ≤ xr

ui

etc…

b

d

a

c

e

Page 17: Constrained stress majorization using diagonally scaled gradient projection Tim Dwyer and Kim Marriott Clayton School of Information Technology Monash

Is itself a quadratic program

Solve with active-set style method Move each xi to ui

Build blocks of active constraints: Find most violated constraint xl+d ≤ xr

Add to block B (satisfy constraint) Move B to average position of constituent vars

Projection operation

u subj to: xl+d ≤ xr

ui

etc…

b

d

a

c

e

Page 18: Constrained stress majorization using diagonally scaled gradient projection Tim Dwyer and Kim Marriott Clayton School of Information Technology Monash

Is itself a quadratic program:

Solve with active-set style method: Move each xi to ui

Build blocks of active constraints: Find most violated constraint xl+d ≤ xr

Add to block B (satisfy constraint) Move B to average position of constituent vars:

Projection operation

u subj to: xl+d ≤ xr

ui

etc…

b

d

a

c

e

Page 19: Constrained stress majorization using diagonally scaled gradient projection Tim Dwyer and Kim Marriott Clayton School of Information Technology Monash

Block structure is preserved between projection operations

Before each projection previous blocks are checked for split points (ensures convergence)

Projection operation: incremental

b

d

a

c

e

Page 20: Constrained stress majorization using diagonally scaled gradient projection Tim Dwyer and Kim Marriott Clayton School of Information Technology Monash

Block structure is preserved between projection operations

Before each projection previous blocks are checked for split points (ensures convergence)

In next projection blocks will be moved as one to new weighted average desired positions

Projection operation: incremental

b

d

a

c

e

Page 21: Constrained stress majorization using diagonally scaled gradient projection Tim Dwyer and Kim Marriott Clayton School of Information Technology Monash

Projection operation

b

d

a

c

e

Is itself a quadratic program

Scaling by a full n×n matrix turns separation constraints into linear constraints over n variables

u subj to: xl+d ≤ xr

ui

Page 22: Constrained stress majorization using diagonally scaled gradient projection Tim Dwyer and Kim Marriott Clayton School of Information Technology Monash

Scaling for stress majorization

Q is diagonally dominant:

Choose diagonal s.t.

Page 23: Constrained stress majorization using diagonally scaled gradient projection Tim Dwyer and Kim Marriott Clayton School of Information Technology Monash

Diagonal scaling: Separation constraints:

Need new expressions for Optimal block position

Lagrange multipliers for active constraints

Scaled separation constraints

Page 24: Constrained stress majorization using diagonally scaled gradient projection Tim Dwyer and Kim Marriott Clayton School of Information Technology Monash

minimize

subject to active constraints :

where:

minimum at:

Optimum block position

Page 25: Constrained stress majorization using diagonally scaled gradient projection Tim Dwyer and Kim Marriott Clayton School of Information Technology Monash

Optimum at:

where:

Optimum block position

Page 26: Constrained stress majorization using diagonally scaled gradient projection Tim Dwyer and Kim Marriott Clayton School of Information Technology Monash

Test cases

unconstrained constrained

Page 27: Constrained stress majorization using diagonally scaled gradient projection Tim Dwyer and Kim Marriott Clayton School of Information Technology Monash

Test cases

unconstrained constrained

Page 28: Constrained stress majorization using diagonally scaled gradient projection Tim Dwyer and Kim Marriott Clayton School of Information Technology Monash

Results

Page 29: Constrained stress majorization using diagonally scaled gradient projection Tim Dwyer and Kim Marriott Clayton School of Information Technology Monash

Improved convergence

Page 30: Constrained stress majorization using diagonally scaled gradient projection Tim Dwyer and Kim Marriott Clayton School of Information Technology Monash

Diagonal scaling is cheap to compute transforms separation constraints into scaled

separation constraints not full linear constraints so we can still use block tricks

is appropriate for improving condition of graph Laplacian matrices because they are diagonally dominant

particularly improves Laplacian condition if graph has wide variation in degree (often in practical applications)

Summary