Proceedings of the forty-second ACM symposium on Theory of computing
Accurate byzantine agreement with feedback
Proceedings of the 30th annual ACM SIGACT-SIGOPS symposium on Principles of distributed computing
Journal of the ACM (JACM)
Accurate byzantine agreement with feedback
OPODIS'11 Proceedings of the 15th international conference on Principles of Distributed Systems
Erdős-Rényi sequences and deterministic construction of expanding cayley graphs
LATIN'12 Proceedings of the 10th Latin American international conference on Theoretical Informatics
Faster and simpler width-independent parallel algorithms for positive semidefinite programming
Proceedings of the twenty-fourth annual ACM symposium on Parallelism in algorithms and architectures
Epsilon-net method for optimizations over separable states
ICALP'12 Proceedings of the 39th international colloquium conference on Automata, Languages, and Programming - Volume Part I
A matrix hyperbolic cosine algorithm and applications
ICALP'12 Proceedings of the 39th international colloquium conference on Automata, Languages, and Programming - Volume Part I
Multiplicative updates in coordination games and the theory of evolution
Proceedings of the 4th conference on Innovations in Theoretical Computer Science
Hi-index | 0.01 |
Algorithms based on convex optimization, especially linear and semidefinite programming, are ubiquitous in Computer Science. While there are polynomial time algorithms known to solve such problems, quite often the running time of these algorithms is very high. Designing simpler and more efficient algorithms is important for practical impact.In this thesis, we explore applications of the Multiplicative Weights method in the design of efficient algorithms for various optimization problems. This method, which was repeatedly discovered in quite diverse fields, is an algorithmic technique which maintains a distribution on a certain set of interest, and updates it iteratively by multiplying the probability mass of elements by suitably chosen factors based on feedback obtained by running another algorithm on the distribution.We present a single meta-algorithm which unifies all known applications of this method in a common framework. Next, we generalize the method to the setting of symmetric matrices rather than real numbers. We derive the following applications of the resulting Matrix Multiplicative Weights algorithm: (1) The first truly general, combinatorial, primal-dual method for designing efficient algorithms for semidefinite programming. Using these techniques, we obtain significantly faster algorithms for obtaining O( logn ) approximations to various graph partitioning problems, such as S PARSEST CUT, BALANCED SEPARATOR in both directed and undirected weighted graphs, and constraint satisfaction problems such as MIN UNCUT and MIN 2CNF Deletion. (2) An Õ( n3) time derandomization of the Alon-Roichman construction of expanders using Cayley graphs. The algorithm yields a set of Õ (log n) elements which generates an expanding Cayley graph in any group of n elements. (3) An Õ (n3) time deterministic O(log n) approximation algorithm for the quantum hypergraph covering problem. (4) An alternative proof of a result of Aaronson that the γ-fat-shattering dimension of quantum states on n qubits is O( ng2 ). Using our framework for the classical Multiplicative Weights Update method, we derive the following algorithmic applications: (1) Fast algorithms for approximately solving several families of semidefinite programs which beat interior point methods. Our algorithms rely on eigenvector computations, which are very efficient in practice compared to the Cholesky decompositions needed by interior point methods. We also give a matrix sparsification algorithm to speed up the eigenvector computation using the Lanczos iteration. (2) O( logn ) approximation to the SPARSEST CUT and the BALANCED SEPARATOR problems in undirected weighted graphs in Õ(n 2) time by embedding expander flows in the graph. This improves upon the previous Õ(n4.5) time algorithm of Arora, Rao, and Vazirani, which was based on semidefinite programming.