Introduction to Linear Optimization
Introduction to Linear Optimization
Decomposing Matrices into Blocks
SIAM Journal on Optimization
Branch-And-Price: Column Generation for Solving Huge Integer Programs
Operations Research
Cooperating Sequential Processes, Technical Report EWD-123
Cooperating Sequential Processes, Technical Report EWD-123
Modern Operating Systems
A generic view of Dantzig-Wolfe decomposition in mixed integer programming
Operations Research Letters
Hi-index | 0.00 |
Dantzig--Wolfe Decomposition is recognized as a powerful, algorithmic tool for solving linear programs of block-angular form. While use of the approach has been reported in a wide variety of domains, there has not been a general implementation of Dantzig--Wolfe decomposition available. This article describes an open-source implementation of the algorithm. It is general in the sense that any properly decomposed linear program can be provided to the software for solving. While the original description of the algorithm was motivated by its reduced memory usage, modern computers can also take advantage of the algorithm's inherent parallelism. This implementation is parallel and built upon the POSIX threads (pthreads) library. Some computational results are provided to motivate use of such parallel solvers, as this implementation outperforms state-of-the-art commercial solvers in terms of wall-clock runtime by an order of magnitude or more on several problem instances.