Share your thoughts, 1 month free Claude Pro on usSee more
WorkDL logo mark

Practical Large-Scale Linear Programming using Primal-Dual Hybrid Gradient

About

We present PDLP, a practical first-order method for linear programming (LP) that can solve to the high levels of accuracy that are expected in traditional LP applications. In addition, it can scale to very large problems because its core operation is matrix-vector multiplications. PDLP is derived by applying the primal-dual hybrid gradient (PDHG) method, popularized by Chambolle and Pock (2011), to a saddle-point formulation of LP. PDLP enhances PDHG for LP by combining several new techniques with older tricks from the literature; the enhancements include diagonal preconditioning, presolving, adaptive step sizes, and adaptive restarting. PDLP improves the state of the art for first-order methods applied to LP. We compare PDLP with SCS, an ADMM-based solver, on a set of 383 LP instances derived from MIPLIB 2017. With a target of $10^{-8}$ relative accuracy and 1 hour time limit, PDLP achieves a 6.3x reduction in the geometric mean of solve times and a 4.6x reduction in the number of instances unsolved (from 227 to 49). Furthermore, we highlight standard benchmark instances and a large-scale application (PageRank) where our open-source prototype of PDLP, written in Julia, outperforms a commercial LP solver.

David Applegate, Mateo D\'iaz, Oliver Hinder, Haihao Lu, Miles Lubin, Brendan O'Donoghue, Warren Schudy• 2021

Related benchmarks

TaskDatasetResultRank
Linear ProgrammingMIP Relaxations
Solve Time (s)1.4
15
Linear ProgrammingLP benchmark
Solve Time (s)2.2
12
Linear Programming SolvePageRank 10^6 nodes
Solve Time (min)11
2
Showing 3 of 3 rows

Other info

Code

Follow for update