We present a batched first-order method for solving multiple linear programs in parallel on GPUs. Our approach extends the primal-dual hybrid gradient algorithm to efficiently solve batches of related linear programming problems that arise in mixed-integer programming techniques such as strong branching and bound tightening. By leveraging matrix-matrix operations instead of repeated matrix-vector operations, we obtain significant computational advantages on GPU architectures. We demonstrate the effectiveness of our approach on various case studies and identify the problem sizes where first-order methods outperform traditional simplex-based solvers depending on the computational environment one can use. This is a significant step for the design and development of integer programming algorithms tightly exploiting GPU capabilities where we argue that some specific operations should be allocated to GPUs and performed in full instead of using light-weight heuristic approaches on CPUs.
翻译:本文提出一种批量化一阶方法,用于在GPU上并行求解多个线性规划问题。该方法将原始-对偶混合梯度算法扩展至高效求解混合整数规划技术(如强分支与边界紧缩)中产生的相关线性规划问题批次。通过采用矩阵-矩阵运算替代重复的矩阵-向量运算,我们在GPU架构上获得了显著的计算优势。我们在多个案例研究中验证了该方法的有效性,并根据可用计算环境确定了使一阶方法优于传统基于单纯形求解器的问题规模。本研究为充分利用GPU能力的整数规划算法设计与开发迈出了重要一步,我们主张应将特定运算完全分配至GPU执行,而非在CPU上采用轻量级启发式方法。