🤖 AI Summary
In column generation, pricing subproblems heavily rely on application-specific structural properties, resulting in low reusability of customized solvers. To address this, we propose a domain-agnostic, general-purpose pricing framework that— for the first time—integrates dynamic programming into both the column generation and branch-and-price processes, serving as a transferable pricing solver independent of problem-specific algorithms. Our method uniformly handles diverse combinatorial structures without requiring redesign of pricing logic for each problem class. Evaluated on seven canonical integer programming problems, it consistently outperforms state-of-the-art commercial and open-source solvers in solution quality and runtime, achieving superior scalability and robustness. The framework significantly enhances the generality, reliability, and computational efficiency of large-scale exact optimization.
📝 Abstract
Column generation and branch-and-price are leading methods for large-scale exact optimization. Column generation iterates between solving a master problem and a pricing problem. The master problem is a linear program, which can be solved using a generic solver. The pricing problem is highly dependent on the application but is usually discrete. Due to the difficulty of discrete optimization, high-performance column generation often relies on a custom pricing algorithm built specifically to exploit the problem's structure. This bespoke nature of the pricing solver prevents the reuse of components for other applications. We show that domain-independent dynamic programming, a software package for modeling and solving arbitrary dynamic programs, can be used as a generic pricing solver. We develop basic implementations of branch-and-price with pricing by domain-independent dynamic programming and show that they outperform a world-leading solver on static mixed integer programming formulations for seven problem classes.