Positive linear programs (LPs) model many graph and operations research problems. One can solve for a $(1+\epsilon)$-approximation for positive LPs, for any selected $\epsilon$, in polylogarithmic depth and near-linear work via variations of the multiplicative weight update (MWU) method. Despite extensive theoretical work on these algorithms through the decades, their empirical performance is not well understood. In this work, we implement and test an efficient parallel algorithm for solving positive LP relaxations, and apply it to graph problems such as densest subgraph, bipartite matching, vertex cover and dominating set. We accelerate the algorithm via a new step size search heuristic. Our implementation uses sparse linear algebra optimization techniques such as fusion of vector operations and use of sparse format. Furthermore, we devise an implicit representation for graph incidence constraints. We demonstrate the parallel scalability with the use of threading OpenMP and MPI on the Stampede2 supercomputer. We compare this implementation with exact libraries and specialized libraries for the above problems in order to evaluate MWU's practical standing for both accuracy and performance among other methods. Our results show this implementation is faster than general purpose LP solvers (IBM CPLEX, Gurobi) in all of our experiments, and in some instances, outperforms state-of-the-art specialized parallel graph algorithms.
翻译:正线性规划(LP)可建模许多图论与运筹学问题。通过乘法权重更新(MWU)方法的变体,可以在多对数深度和近线性工作量内,为任意选定的$\epsilon$求得正线性规划问题的$(1+\epsilon)$-近似解。尽管数十年来对这些算法的理论研究十分深入,但其实际表现仍缺乏充分理解。本研究实现并测试了一种解决正线性规划松弛问题的高效并行算法,并将其应用于稠密子图、二分图匹配、顶点覆盖和支配集等图问题。我们通过一种新的步长搜索启发式方法加速了算法。实现过程中采用了稀疏线性代数优化技术,如融合向量运算和使用稀疏格式。此外,我们为图的关联约束设计了一种隐式表示方法。通过在Stampede2超级计算机上使用线程级OpenMP和MPI框架,验证了算法的并行可扩展性。为评估MWU方法在准确性和性能方面相对于其他方法的实际地位,我们将其与上述问题的精确解法库及专用算法库进行了比较。结果表明,在所有实验中,本实现均比通用线性规划求解器(IBM CPLEX、Gurobi)更快,某些情况下甚至优于最先进的专用并行图算法。