Vector Space Decomposition for Solving Large-Scale Linear Programs
提出一个基于对偶最优性考虑的线性规划算法框架,通过方向与步长的交换机制移动可行解,可特化为多种已知算法,包括原始单纯形法及其改进版本,适用于大规模问题求解。
We develop an algorithmic framework for linear programming guided by dual optimality considerations. The solution process moves from one feasible solution to the next according to an exchange mechanism that is defined by a direction and a resulting step size. Part 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 from splitting the set of dual variables in two subsets: one being fixed while the other is optimized. From the primal perspective, this amounts to selecting a nonnegative combination of variables entering the basis. The direction is uniquely complemented by identifying the affected basic variables, if any. The framework is presented in a generic format motivated by and alluding to concepts from network flow problems. It specializes to a variety of algorithms, several of which are well known. The most prominent 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 an algorithm for which all dual variables are optimized at every iteration. Somewhere in between these two extremes lies the improved primal simplex algorithm for which one fixes the dual variables associated with the nondegenerate basic variables and optimizes the remaining ones. 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.