Spectral Partitioning: One way to slice a problem in half C B A.

Slides:



Advertisements
Similar presentations
CSE 211 Discrete Mathematics
Advertisements

Approximation algorithms for geometric intersection graphs.
05/11/2005 Carnegie Mellon School of Computer Science Aladdin Lamps 05 Combinatorial and algebraic tools for multigrid Yiannis Koutis Computer Science.
VC Dimension – definition and impossibility result
TexPoint fonts used in EMF.
Problems in curves and surfaces M. Ramanathan Problems in curves and surfaces.
22C:19 Discrete Math Graphs Fall 2010 Sukumar Ghosh.
22C:19 Discrete Math Graphs Fall 2014 Sukumar Ghosh.
 Distance Problems: › Post Office Problem › Nearest Neighbors and Closest Pair › Largest Empty and Smallest Enclosing Circle  Sub graphs of Delaunay.
Proximity graphs: reconstruction of curves and surfaces
Information Networks Graph Clustering Lecture 14.
Online Social Networks and Media. Graph partitioning The general problem – Input: a graph G=(V,E) edge (u,v) denotes similarity between u and v weighted.
Eigenvalues and geometric representations of graphs László Lovász Microsoft Research One Microsoft Way, Redmond, WA 98052
The Divide-and-Conquer Strategy
Tools from Computational Geometry Bernard Chazelle Princeton University Bernard Chazelle Princeton University Tutorial FOCS 2005.
CS774. Markov Random Field : Theory and Application Lecture 17 Kyomin Jung KAIST Nov
Approximation Algorithms for Unique Games Luca Trevisan Slides by Avi Eyal.
Convex Hulls in 3-space Jason C. Yang.
1 Constructing Convex 3-Polytopes From Two Triangulations of a Polygon Benjamin Marlin Dept. of Mathematics & Statistics McGill University Godfried Toussaint.
Watermarking 3D Polygonal Meshes in the Mesh Spectral Domain Ryutarou Ohbuchi, Shigeo Takahashi, Takahiko Miyazawa, Akio Mukaiyama.
10/11/2001Random walks and spectral segmentation1 CSE 291 Fall 2001 Marina Meila and Jianbo Shi: Learning Segmentation by Random Walks/A Random Walks View.
2. Voronoi Diagram 2.1 Definiton Given a finite set S of points in the plane , each point X of  defines a subset S X of S consisting of the points of.
Delaunay Triangulation Computational Geometry, WS 2006/07 Lecture 11 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
CS 584. Review n Systems of equations and finite element methods are related.
Computational Geometry The art of finding algorithms for solving geometrical problems Literature: –M. De Berg et al: Computational Geometry, Springer,
Totally Unimodular Matrices Lecture 11: Feb 23 Simplex Algorithm Elliposid Algorithm.
1 University of Freiburg Computer Networks and Telematics Prof. Christian Schindelhauer Mobile Ad Hoc Networks Theory of Interferences, Trade-Offs between.
Lecture 10 : Delaunay Triangulation Computational Geometry Prof. Dr. Th. Ottmann 1 Overview Motivation. Triangulation of Planar Point Sets. Definition.
CS267 L14 Graph Partitioning I.1 Demmel Sp 1999 CS 267 Applications of Parallel Computers Lecture 14: Graph Partitioning - I James Demmel
EXPANDER GRAPHS Properties & Applications. Things to cover ! Definitions Properties Combinatorial, Spectral properties Constructions “Explicit” constructions.
OBBTree: A Hierarchical Structure for Rapid Interference Detection Gottschalk, M. C. Lin and D. ManochaM. C. LinD. Manocha Department of Computer Science,
reconstruction process, RANSAC, primitive shapes, alpha-shapes
Undirected ST-Connectivity In Log Space Omer Reingold Slides by Sharon Bruckner.
Life in higher dimensions Mapping the World Roadtrip: most powerful computer in Japan Alan Edelman June 13, 2006.
Week 13 - Wednesday CS361.
CSE53111 Computational Geometry TOPICS q Preliminaries q Point in a Polygon q Polygon Construction q Convex Hulls Further Reading.
Domain decomposition in parallel computing Ashok Srinivasan Florida State University COT 5410 – Spring 2004.
Abhiram Ranade IIT Bombay
Planar Graphs Graph G is planar, if it can be “properly” drawn in the plane. In order to explain this informal notion we have to define embeddings of graphs.
C&O 355 Lecture 2 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A.
The Quasi-Randomness of Hypergraph Cut Properties Asaf Shapira & Raphael Yuster.
CS240A: Measurements of Graphs slides under construction – see the Matlab transcript for what I actually did in class.
Module #19: Graph Theory: part II Rosen 5 th ed., chs. 8-9.
Approximation algorithms for TSP with neighborhoods in the plane R 郭秉鈞 R 林傳健.
Approximation Algorithms for NP-hard Combinatorial Problems Magnús M. Halldórsson Reykjavik University Local Search, Greedy and Partitioning
How to Cut Pseudoparabolas into Segments Seminar on Geometric Incidences By: Almog Freizeit.
1 / 41 Convex Hulls in 3-space Jason C. Yang. 2 / 41 Problem Statement Given P: set of n points in 3-space Return: –Convex hull of P: CH (P) –Smallest.
CS 484 Load Balancing. Goal: All processors working all the time Efficiency of 1 Distribute the load (work) to meet the goal Two types of load balancing.
Domain decomposition in parallel computing Ashok Srinivasan Florida State University.
Data Structures and Algorithms in Parallel Computing Lecture 7.
Graph Partitioning using Single Commodity Flows
Graphs, Vectors, and Matrices Daniel A. Spielman Yale University AMS Josiah Willard Gibbs Lecture January 6, 2016.
 In the previews parts we have seen some kind of segmentation method.  In this lecture we will see graph cut, which is a another segmentation method.
UMass Lowell Computer Science Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2010 O’Rourke Chapter 6 with some material.
Indian Institute of Technology Kharagpur PALLAB DASGUPTA Graph Theory: Planarity Pallab Dasgupta, Professor, Dept. of Computer Sc. and Engineering, IIT.
Mesh Segmentation via Spectral Embedding and Contour Analysis Speaker: Min Meng
Common Intersection of Half-Planes in R 2 2 PROBLEM (Common Intersection of half- planes in R 2 ) Given n half-planes H 1, H 2,..., H n in R 2 compute.
Bigyan Ankur Mukherjee University of Utah. Given a set of Points P sampled from a surface Σ,  Find a Surface Σ * that “approximates” Σ  Σ * is generally.
CS 140: Sparse Matrix-Vector Multiplication and Graph Partitioning
High Performance Computing Seminar
Great Theoretical Ideas In Computer Science
Spectral partitioning works: Planar graphs and finite element meshes
Surface Area and Volume
Chapter V. The Sphere 48. The equation of the sphere
CS 240A: Graph and hypergraph partitioning
Depth Estimation via Sampling
3.3 Network-Centric Community Detection
Embedding Metrics into Geometric Spaces
Planarity.
James Demmel CS 267 Applications of Parallel Computers Lecture 14: Graph Partitioning - I James Demmel.
Presentation transcript:

Spectral Partitioning: One way to slice a problem in half C B A

Laplacian of a Graph Battery V B volts v1v1 v2v2 v3v3 v4v4 v5v5 v6v =  2 G  2 G ( ) ii = degree of node i  2 G ( ) ij = -1 for edges i, j

Edge-Node Incidence Matrix  2 G = MG=MG=  2 G = M G M G T

Spectral Partitioning 2i2i T Express partition problem with linear algebra! Partition vector: x i =  1 denotes i’s partition.  (M G x) =(M G x) T (M G x)=x T M G M G x=x T x x T x = 4(# cross partition edges) Goal is to minimize this for x i =  1 and  x i =0. Bounded above by minimizing over ball  x i =n. n i=1  2 G 2  2 G

Solve as an eigenvalue problem!

Geometric Mesh Partitioning: The Miller, Teng, Thurston, Vavasis Algorithm C B A

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 C B Remove Separator Edges Nodes = A  B  C No edges between A and B A

Simple Geometric Partitioner: Coordinate Bisection 1. Compute median of x and y coordinates 2. Count edges along x=mean(x) and y=mean(y) 3. Use cut which minimizes the two OK for Bad

Theory vs. Practice Random Graphs may have lousy separators Practical Numerical Meshes often have good separators Fact: For numerical reasons, meshes have good aspect ratios In 2-d: A 1 =longest edge/shortest edge A 2 =circumsphere/inscribed sphere A 3 =diameter / volume^(1/d)

Need Theoretical Class of Good Graphs Defn: k-ply neighborhood system = closed disks no (k+1) of which overlap A (1,k) overlap graph for a k-ply system =graph obtained by connecting centers of intersecting circles ( ,k) overlap graph = connect centers if  D i  D j  (  3-ply 4-ply

Why is this useful? Intuitively: Good overlap graph = bounded aspect ratio Theoretical Theorems best proved about overlap graphs. Example: Geometric Separator Theorem:

Geometric Separator Theorem If G=( ,k) overlap graph in d dimensions, there exists a vertex separator with O(  k^(1/d) n^((d-1)/d)) vertices. In English: All good overlap graphs behave as if they are cubes. A d-cube with n vertices has a separator of size n^((d-1)/d). nn nn n 1/3 n 2/3

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 S P RdRd Project P to sphere along the line to the north pole. Mercator Map Ster Proj Log z Not cylindicrical projection!

Step 2: Find Centerpoint Definition: A Centerpoint is a point C such that every hyperplane through C roughly divides the points evenly. Theorem: Every finite set has a centerpoint -- may be found my linear programming (not practical). Later: A practical heuristic.

Step 3: Conformal Map to move centerpoint to center of sphere Why? Increases chances of a good cut. Rotate and Dilate: Rotate: centerpoint to (0,0,r) Dilate: centerpoint to (0,0,0)

Steps 4 through 6 4) Cut with a random great circle. 5) Stereographic projection back to the plane from the sphere. 6) Convert the circle in the plane to a separator. 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=P 1  P 2 (disjoint union ) and q is in both the convex hull of P 1 and P 2. Convex hull -- smallest convex polygon containing the set. Convex Not Convex

Radon Points Definition: q is a Radon point of a set of points P if P=P 1  P 2 (disjoint union ) and q is in both the convex hull of P 1 and P 2. Examples: (d+2 points in d dims) Radon Point d=2 d=3

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=   i P i :   i =1,  i  0. Solve = 0 Let c =   i =  -  i. The Radon point is then   i P i /c=  -  i P i /c. P 1 P 2 … P d … 1 ( ) ( )  1  d Neg  i Pos  i Pos  i Neg  i

Geometric Sampling Select random sample of points. Randomly replace d+2 points with Radon pt 1) Try a few random great circles (using normal dist) 2) Weigh the normal vector in the moment of inertia direction A few tricks

METIS and Parmetis