A simpler and parallelizable O(√(log n))-approximation algorithm for Sparsest Cut
Currently, the best known tradeoff between approximation ratio and complexity for the Sparsest Cut problem is achieved by the algorithm in [Sherman, FOCS 2009]: it computes O(√((log n)/ε))-approximation using O(n^εlog^O(1)n) maxflows for any ε∈[Θ(1/log n),Θ(1)]. It works by solving the SDP relaxation of [Arora-Rao-Vazirani, STOC 2004] using the Multiplicative Weights Update algorithm (MW) of [Arora-Kale, JACM 2016]. To implement one MW step, Sherman approximately solves a multicommodity flow problem using another application of MW. Nested MW steps are solved via a certain “chaining” algorithm that combines results of multiple calls to the maxflow algorithm. We present an alternative approach that avoids solving the multicommodity flow problem and instead computes “violating paths”. This simplifies Sherman's algorithm by removing a need for a nested application of MW, and also allows parallelization: we show how to compute O(√((log n)/ε))-approximation via O(log^O(1)n) maxflows using O(n^ε) processors. We also revisit Sherman's chaining algorithm, and present a simpler version together with a new analysis.
READ FULL TEXT