Yiannis Koutis , U of Puerto Rico, Rio Piedras

Slides:



Advertisements
Similar presentations
05/11/2005 Carnegie Mellon School of Computer Science Aladdin Lamps 05 Combinatorial and algebraic tools for multigrid Yiannis Koutis Computer Science.
Advertisements

Fast Regression Algorithms Using Spectral Graph Theory Richard Peng.
Matroid Bases and Matrix Concentration
C&O 355 Lecture 23 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A A A A A A A A A.
Lecture 19: Parallel Algorithms
Solving Laplacian Systems: Some Contributions from Theoretical Computer Science Nick Harvey UBC Department of Computer Science.
C&O 355 Mathematical Programming Fall 2010 Lecture 22 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A A.
The Combinatorial Multigrid Solver Yiannis Koutis, Gary Miller Carnegie Mellon University TexPoint fonts used in EMF. Read the TexPoint manual before you.
Uniform Sampling for Matrix Approximation Michael Cohen, Yin Tat Lee, Cameron Musco, Christopher Musco, Richard Peng, Aaron Sidford M.I.T.
Solving linear systems through nested dissection Noga Alon Tel Aviv University Raphael Yuster University of Haifa.
An Efficient Parallel Solver for SDD Linear Systems Richard Peng M.I.T. Joint work with Dan Spielman (Yale)
Algorithm Design Using Spectral Graph Theory Richard Peng Joint Work with Guy Blelloch, HuiHan Chin, Anupam Gupta, Jon Kelner, Yiannis Koutis, Aleksander.
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.
Iterative methods TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAA A A A A A A A.
Lecture 17 Introduction to Eigenvalue Problems
SDD Solvers: Bridging theory and practice Yiannis Koutis University of Puerto Rico, Rio Piedras joint with Gary Miller, Richard Peng Carnegie Mellon University.
1 Network Coding: Theory and Practice Apirath Limmanee Jacobs University.
TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAA A.
Graph Sparsifiers by Edge-Connectivity and Random Spanning Trees Nick Harvey U. Waterloo Department of Combinatorics and Optimization Joint work with Isaac.
Graph Sparsifiers: A Survey Nick Harvey Based on work by: Batson, Benczur, de Carli Silva, Fung, Hariharan, Harvey, Karger, Panigrahi, Sato, Spielman,
Graph Sparsifiers: A Survey Nick Harvey UBC Based on work by: Batson, Benczur, de Carli Silva, Fung, Hariharan, Harvey, Karger, Panigrahi, Sato, Spielman,
Graph Sparsifiers by Edge-Connectivity and Random Spanning Trees Nick Harvey University of Waterloo Department of Combinatorics and Optimization Joint.
Graph Sparsifiers by Edge-Connectivity and Random Spanning Trees Nick Harvey U. Waterloo C&O Joint work with Isaac Fung TexPoint fonts used in EMF. Read.
Sampling from Gaussian Graphical Models via Spectral Sparsification Richard Peng M.I.T. Joint work with Dehua Cheng, Yu Cheng, Yan Liu and Shanghua Teng.
Approximation Algorithms
Message Passing Algorithms for Optimization
Matrix sparsification and the sparse null space problem Lee-Ad GottliebWeizmann Institute Tyler NeylonBynomial Inc. TexPoint fonts used in EMF. Read the.
Randomness in Computation and Communication Part 1: Randomized algorithms Lap Chi Lau CSE CUHK.
Approximation Algorithms: Bristol Summer School 2008 Seffi Naor Computer Science Dept. Technion Haifa, Israel TexPoint fonts used in EMF. Read the TexPoint.
cover times, blanket times, and majorizing measures Jian Ding U. C. Berkeley James R. Lee University of Washington Yuval Peres Microsoft Research TexPoint.
C&O 355 Mathematical Programming Fall 2010 Lecture 17 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A.
Piyush Kumar (Lecture 2: PageRank) Welcome to COT5405.
Approximating the MST Weight in Sublinear Time Bernard Chazelle (Princeton) Ronitt Rubinfeld (NEC) Luca Trevisan (U.C. Berkeley)
Minimal Spanning Trees What is a minimal spanning tree (MST) and how to find one.
Fast, Randomized Algorithms for Partitioning, Sparsification, and
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
Graph Sparsifiers Nick Harvey University of British Columbia Based on joint work with Isaac Fung, and independent work of Ramesh Hariharan & Debmalya Panigrahi.
The Best Algorithms are Randomized Algorithms N. Harvey C&O Dept TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A AAAA.
Complexity of direct methods n 1/2 n 1/3 2D3D Space (fill): O(n log n)O(n 4/3 ) Time (flops): O(n 3/2 )O(n 2 ) Time and space to solve any problem on any.
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A AA A A A A A AAA Fitting a Graph to Vector Data Samuel I. Daitch (Yale)
1 Sublinear Algorithms Lecture 1 Sofya Raskhodnikova Penn State University TexPoint fonts used in EMF. Read the TexPoint manual before you delete this.
Graph Sparsifiers Nick Harvey Joint work with Isaac Fung TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A A.
TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A A A A A A A Image:
PODC Distributed Computation of the Mode Fabian Kuhn Thomas Locher ETH Zurich, Switzerland Stefan Schmid TU Munich, Germany TexPoint fonts used in.
Spanning and Sparsifying Rajmohan Rajaraman Northeastern University, Boston May 2012 Chennai Network Optimization WorkshopSpanning and Sparsifying1.
Spectrally Thin Trees Nick Harvey University of British Columbia Joint work with Neil Olver (MIT  Vrije Universiteit) TexPoint fonts used in EMF. Read.
Discrete Algorithms & Math Department Preconditioning ‘03 Algebraic Tools for Analyzing Preconditioners Bruce Hendrickson Erik Boman Sandia National Labs.
Minimal Spanning Tree Problems in What is a minimal spanning tree An MST is a tree (set of edges) that connects all nodes in a graph, using.
Speeding Up Enumeration Algorithms with Amortized Analysis Takeaki Uno (National Institute of Informatics, JAPAN)
CPSC 536N Sparse Approximations Winter 2013 Lecture 1 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAA.
Vasilis Syrgkanis Cornell University
Graphs, Vectors, and Matrices Daniel A. Spielman Yale University AMS Josiah Willard Gibbs Lecture January 6, 2016.
CS 290H 31 October and 2 November Support graph preconditioners Final projects: Read and present two related papers on a topic not covered in class Or,
1 Algebraic and combinatorial tools for optimal multilevel algorithms Yiannis Koutis Carnegie Mellon University.
C&O 355 Lecture 19 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A A A A A A A A A.
Generating Random Spanning Trees via Fast Matrix Multiplication Keyulu Xu University of British Columbia Joint work with Nick Harvey TexPoint fonts used.
Laplacian Matrices of Graphs: Algorithms and Applications ICML, June 21, 2016 Daniel A. Spielman.
Laplacian Matrices of Graphs: Algorithms and Applications ICML, June 21, 2016 Daniel A. Spielman.
Richard Peng Georgia Tech Michael Cohen Jon Kelner John Peebles
Resparsification of Graphs
Efficient methods for finding low-stretch spanning trees
Solving Linear Systems Ax=b
Parallel Algorithm Design using Spectral Graph Theory
Density Independent Algorithms for Sparsifying
Matrix Martingales in Randomized Numerical Linear Algebra
A Numerical Analysis Approach to Convex Optimization
On Solving Linear Systems in Sublinear Time
Optimization on Graphs
Presentation transcript:

Approaching optimality [FOCS10] An O(mlog2 n) algorithm for solving SDD systems Yiannis Koutis , U of Puerto Rico, Rio Piedras Gary Miller, Richard Peng, CMU TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAA

Optimality achieved…probably An O(mlog n) algorithm for solving SDD systems Yiannis Koutis , U of Puerto Rico, Rio Piedras Gary Miller, Richard Peng, CMU TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAA

Our motivation: Very large sparse linear systems Ax = b: dimension n, m non-zero entries Lower Bound O(m) Matrix inversion O(n!) Symmetric positive definite matrices: O(m n) Planar positive definite matrices: O(n1.5) [LRT79] Planar non-singular matrices: O(n1.5) [AY10] Many open problems!

Laplacian and SDD matrices Symmetric, negative off-diagonals, zero row-sums. SDD matrix: Add a positive diagonal to Laplacian and flip off-diagonal signs, keeping symmetry. 30 2 1 1 20 15

Our motivation: Very large sparse SDD linear systems Spielman and Teng 04: General SDD linear systems can be solved in time O(m log25 n). Planar systems can be solved in time O(m log2 n). KM07: Planar SDD systems can be solved in time O(m). KMP10--11: SDD linear systems in time O(m log n) . (up to lower order terms and error, probability of failure) A powerful algorithmic primitive

The Laplacian paradigm (or, why care for SDD systems? ) Classical scientific computing dealt with SDD’s since the 70s. Certain systems were known to be solvable in linear time. Vaidya sent a paper to FOCS or STOC in 90-91 Vaidya then had a different idea CASI is now the main solver provider to (market cap 3.45B) REJECT

The Laplacian paradigm (or, why care for SDD systems? ) The solver is the main routine in the fastest known algorithms for: Approximate maximum flow, minimum cut problem Christiano, Kelner, Madry, Spielman, Teng 2010 Computation of a few fundamental eigenvectors Spectral methods for image segmentation (Shi and Malik 00, Miller and Tolliver 08) Analysis of protein structures (Liu, Eyal, Bahar 08) Solving elliptic finite element systems Boman, Hendrickson, Vavasis 04, Avron et.al. 2009 Generating a random spanning tree in a graph Madry and Kelner 09 Max flow, generalized lossy flow problems Daitch and Spielman 08

Things to take home #1 A probably optimal and potentially practical linear system solver Central component in several algorithms Solving almost as easy as sorting Think about re-formulating your problem to include an SDD system

Preconditioning Rate of convergence depends on The solver is based on preconditioning Two contradictory goals: Systems with B must be ‘simpler’ than A Condition number must be small Rate of convergence depends on

Recursive Preconditioning Start with matrix A1 Compute preconditioner B1 Greedy-factorize B1 The iteration needs to solve a system in B1 which can be transformed via L to A2 Use recursion on A2 : Solve it with a preconditioned method A1 B1 A2 B2 A3 Preconditioning Chain

Things to take home #2 A good ‘two-level’ preconditioning algorithm implies a fast solver The preconditioner B must satisfy: (up to small constants)

FOCUS ON LAPLACIANS AND GRAPHS FORGET SDD MATRICES FOCUS ON LAPLACIANS AND GRAPHS (SDD systems can be transformed to Laplacian systems)

Combinatorial Preconditioning ‘Traditional’ preconditioners were taken to be sub-matrices of the system. Pravin Vaidya made the paradigm shift: The preconditioner of a graph must be a graph (support graph theory enables deeper understanding of condition numbers)

Graphs as electrical networks The edge weight corresponds to the capacity of the wire. The effective resistance between two nodes u and w is equal to the voltage difference between nodes u and w that is necessary to drive one unit of electric flow between them. Rayleigh’s Monotonicity Law: Dropping edges increases the effective resistance between any u and w. 30 2 1 1 20 15

Graph Sparsification: (the heart of preconditioning) The Sparsification Conjecture (Spielman and Teng) For every graph A there is a sparse graph B, such that:

Graph Sparsification: (the heart of preconditioning) Spielman and Teng’s key theorem: For any Laplacian A, there is a Laplacian B with O(nloga n) edges such that k(A,B)<2. Furthermore B can be computed in nearly-linear O(nlogb n) time. Spielman and Srivastava proved a strong theorem: For any Laplacian A, there is a Laplacian B with O(nlog n) edges such that k(A,B)<2. The graph B can be computed by solving O(log n) systems.

Proof based n a thorem of Rudeslon and Vershynin + Linear Algebra Spectral sparsifiers with O(n logn) edges The algorithm – Simple Sampling procedure Let pe a probability distribution over the edges pe is proportional to we Re, :: Re is the effective resistance of e Let t = e we Re (*it can be shown that t= n-1*) Draw q=O(t log t ) samples from p Each time an edge e is picked add e to B, with weight we/(qpe) Proof based n a thorem of Rudeslon and Vershynin + Linear Algebra

Things to take home #3 Focus on Laplacians/graphs Precondition graphs by graphs The key is graph sparsification A very elegant sampling algorithm works The sampling probabilities depend on the effective resistances, which require a linear system solution

An equality in SS08, becomes an inequality, using Re < R’e Sampling using upper bounds (Input: Graph A, Output: graph B with ) Let pe a probability distribution over the edges pe is proportional to we Re, where Re is the effective resistance of e pe is proportional to we R’e where R’e > Re Let t = e we Re (*it can be shown that t= n-1*) Let t = e we R’e (*t must be as small as possible *) Draw q=O(t log t ) samples from p Each time an edge e is picked add e to B, with weight we/(qpe) An equality in SS08, becomes an inequality, using Re < R’e

Effective resistances hard to compute? Compute good and fast bounds. Fix a spanning tree T Let RT(e) be the effective resistance of the edge e if we “throw out” all edges not in T Rayleigh’s Monotonicity Law :RT(e) > Re For fixed tree the RT(e)’s computed in linear time The product RT(e)*we is the stretch of e by T We want to minimize the total stretch

Low-strecth tree: The best tree preconditioner Vaidya proposed a maximum spanning tree (MST) which gave the first non-trivial bound on condition number Boman and Hendrickson pinned down the right catalytic idea: A low-stretch tree The stretch of e over T The condition of T and A An edge and its weight in A A unique path in T and its effective resistace

Spectral sparsifier with n+m/k edges? It looks that number of samples is O(m log2n) despite the availability a low-stretch tree However we can ‘make’ a related graph with a tree of even lower total stretch. How ? Scale up the edges of the tree by a factor of k>1 This decreases the total stretch and the number of off- tree samples by a factor of k, but incurs a condition number of k.

Algorithm over-samples edges in T and samples mlog2n/k off-tree edges Scaling and sampling proportionally to stretch (Input: Graph A, Output: graph B with ) Let A’ = A + k copies of low-stretch tree T pe is proportional to we R(kT)e where R(kT)e is the effective resistance between the endpoints of e in kT Let t = e we R(kT)e (*t is total stretch = n+ mlog n/k *) Draw O(t log t ) samples from p Each time an edge e is picked add e to B, with weight we/(qpe) Algorithm over-samples edges in T and samples mlog2n/k off-tree edges

Solver follows from k=log4 n Theorem: For each graph A with n nodes and m edges, there is an incremental-sparsifier B that O(k)-approximates A and has n+mlog2 n /k edges. B can be computed in time O(m logn). Solver follows from k=log4 n

Overview Incremental sparsifier is computed by: Computing low-stretch tree Scaling-up low-stretch tree Sampling with probabilities proportional to stretch Incremental sparsification is applied iteratively, interleaved with greedy contractions to produce a preconditioning chain Preconditioning chain is used with a standard recursive iterative method to solve system

O(m log n) solver? O(m log2 n) solver computes a low-stretch tree for every graph in the preconditioning chain. O(m logn) solver computes a low-stretch tree only for the top (input) graph. The same tree can be kept for the whole chain. There are some complications. In usual chain the number of edges goes down by at least O(log2n) between every two graphs in the chain. Stagnation can occur in the new construction. But it all works out.

Open Questions Parallelization ? Practical implementations O(m logc n) work in O(n1/3) time [spaa11] Ideally O(m log n) work in O(log n) time Practical implementations A practical low-stretch tree A practical sparsifier Is it possible to compute sparsifier with O(n log n) edges more efficiently than solving systems?

Thank you!