Condensed-space methods for nonlinear programming on GPUs

François Pacaud,Sungho Shin,Alexis Montoison,Michel Schanen,Mihai Anitescu
2024-05-23
Abstract:This paper explores two condensed-space interior-point methods to efficiently solve large-scale nonlinear programs on graphics processing units (GPUs). The interior-point method solves a sequence of symmetric indefinite linear systems, or Karush-Kuhn-Tucker (KKT) systems, which become increasingly ill-conditioned as we approach the solution. Solving a KKT system with traditional sparse factorization methods involve numerical pivoting, making parallelization difficult. A solution is to condense the KKT system into a symmetric positive-definite matrix and solve it with a Cholesky factorization, stable without pivoting. Although condensed KKT systems are more prone to ill-conditioning than the original ones, they exhibit structured ill-conditioning that mitigates the loss of accuracy. This paper compares the benefits of two recent condensed-space interior-point methods, HyKKT and LiftedKKT. We implement the two methods on GPUs using MadNLP.jl, an optimization solver interfaced with the NVIDIA sparse linear solver cuDSS and with the GPU-accelerated modeler ExaModels.jl. Our experiments on the PGLIB and the COPS benchmarks reveal that GPUs can attain up to a tenfold speed increase compared to CPUs when solving large-scale instances.
Optimization and Control
What problem does this paper attempt to address?
The paper primarily focuses on methods for efficiently solving large-scale nonlinear programming problems on graphics processing units (GPUs). Specifically, the research investigates how to effectively utilize the "compressed space" interior point method to address these problems, with particular emphasis on the ill-conditioned issues encountered near the solution. The paper explores two methods—HyKKT and LiftedKKT—both designed to solve specific forms of the Karush-Kuhn-Tucker (KKT) system on GPUs. ### Main Problems Addressed by the Paper 1. **Nonlinear Programming on GPUs**: Traditional sparse matrix decomposition methods are difficult to parallelize on GPUs, especially when dealing with KKT systems that require numerical pivoting, making it complex to solve nonlinear programming problems on GPUs. 2. **Ill-Conditioned Problems**: As the optimal solution is approached, the condition number of the KKT system deteriorates, leading to numerical stability issues. ### Method Overview - **HyKKT**: This method is based on the strategy of Golub and Greif, transforming the KKT system into a positive definite form and solving it using a hybrid direct-iterative method. This approach leverages the advantages of Cholesky decomposition, which does not require numerical pivoting, making it suitable for GPU implementation. - **LiftedKKT**: This method employs an equality relaxation strategy by introducing a relaxation parameter to approximate the equality constraints in the original problem as inequality constraints, resulting in a problem with only inequality constraints. This method also utilizes Cholesky decomposition but requires precise iterative refinement algorithms to ensure reliable convergence behavior. ### Main Contributions - The paper evaluates the current capabilities of modern GPUs in solving large-scale non-convex nonlinear programming problems, particularly through the two compressed space methods, HyKKT and LiftedKKT. - Implemented these two algorithms in the GPU-accelerated optimization solver MadNLP, using the GPU-accelerated automatic differentiation library ExaModels. - Assessed the accuracy and runtime of these methods and compared them with advanced CPU-based methods. - Experimental results indicate that using GPUs can achieve speeds up to 10 times faster than using CPUs when solving large-scale optimal power flow (OPF) instances. However, performance results on the COPS benchmark set are more varied. Through this work, the paper aims to demonstrate the potential of GPUs in solving large-scale nonlinear programming problems and proposes new algorithms and techniques to overcome the challenges in traditional methods.