### G-2015-26

# Vector space decomposition for solving large-scale linear programs

## Jean-Bertrand Gauthier, Jacques Desrosiers, and Marco E. Lübbecke

This paper describes a vector space decomposition algorithmic framework for linear programming guided by dual feasibility considerations. The resolution process moves from one solution to the next according to an exchange mechanism which is defined by a direction and a post-evaluated step size. The core component of the direction is obtained via a pricing problem devised in primal and dual forms. From the dual perspective, one maximizes the minimum reduced cost that can be achieved upon dividing the set of dual variables in two subsets: one being fixed while the other is optimized. From the primal perspective, one selects a nonnegative combination of variables entering the basis. The direction is uniquely completed by identifying the affected basic variables, if any.

This unified framework is presented in a generic format although it borrows several concepts from network flow problems. Different variants can be extractedseveral of which corresponding to well known algorithms. The most known special case is the primal simplex algorithm where all dual variables are fixed: this results in the choice of a single entering variable commonly leading to degenerate pivots. At the other extreme, we find the so-called minimum weighted cycle-canceling algorithm, a perfect example of network flow analogies introduced in this paper, for which all dual variables are optimized at every iteration. Somewhere in between these two extremes lies another special case, the improved primal simplex algorithm for which one fixes the dual variables associated with the nondegenerate basic variables and optimizes the remaining dual variables. The two last variants both bestow a pricing problem providing necessary and sufficient optimality conditions. As a result, directions yielding strictly positive step sizes at every iteration are also issued from these pricing steps. These directions move on the edges of the polyhedron for the latter while the former can also identify interior directions.

Published **March 2015**
,
26 pages

This cahier was revised in **September 2016**