Partitioning
Partitioning
A C B
2
8
Laplacian of a Graph G
2 5
3 2 -1 -1 v1 0
5
3 -1 3 -1 -1 v2 0
1 4 6
4 -1 -1 3 -1 v3 = 1
2 7 -1 3 -1 -1 v4 -1
1 6 -1 -1 3 -1 v5 0
Battery -1 -1 2 v6 0
VB volts
( )ii=
G
2 degree of node i
n 2
(MGx)i T 2
=(MGx) (MGx)=x MGMGx=x Gx
T T T
i=1
2
xT G x = 4(# cross partition edges)
Goal is to minimize this for xi=1 and xi=0.
2
Bounded above by minimizing over ball xi =n.
Solve as an eigenvalue problem!
Geometric Mesh Partitioning:
The Miller, Teng, Thurston,
Vavasis Algorithm
A C B
Graph Partitioning
• Division of graph into subgraphs with goal
of minimizing communication and
maximizing load balance.
Geometric Methods
• Uses not only the graph (= combinatorial
information) but also geometrical coordinates
(x,y) or (x,y,z) for the nodes.
Edge Separator Vertex Separator
A C B
3-ply
4-ply
1/3
n n
2/3
n
n
Miller, Teng, Thurston, Vavasis
algorithm for finding separator
1) Stereographic Projection
2) Find centerpoint
3) Conformal Map
4) Find Great Circle
5) Project Back
6) Create Separator
Details ...
Step 1:Stereographic Projection
N
Mercator Map
Ster Proj Log z
DEMO!
Centerpoint Computation
Heuristic runs in linear time by computing
Radon points.
Definition: q is a Radon point of a set of
points P if P=P1 P2 (disjoint union )
and q is in both the convex hull of
P1 and P2.
Convex hull -- smallest convex polygon
containing the set.
d=2 d=3
Radon Point
Computing Radon Pnts = Linear Algebra
A point P is in the convex hull of a set of points P i
if and only if it has the form P=iPi:i=1, i0.
Solve
Let c =
(
P1 P2 … Pd+2
i = 1-i.1The
…Radon )( )
1 point is then
.1
..
= 0
d+2
Pos Neg P /c=- P /c.
i i i i
i i
Pos Neg
i i
Geometric Sampling
Select random sample of points.
Randomly replace d+2 points with Radon pt
A few tricks
1) Try a few random great circles (using
normal dist)
2) Weigh the normal vector in the moment of
inertia direction
METIS and Parmetis