English

An Algorithmic Theory of Integer Programming

Optimization and Control 2022-08-01 v3 Computational Complexity Discrete Mathematics Data Structures and Algorithms Combinatorics

Abstract

We study the general integer programming problem where the number of variables nn is a variable part of the input. We consider two natural parameters of the constraint matrix AA: its numeric measure aa and its sparsity measure dd. We show that integer programming can be solved in time g(a,d)poly(n,L)g(a,d)\textrm{poly}(n,L), where gg is some computable function of the parameters aa and dd, and LL is the binary encoding length of the input. In particular, integer programming is fixed-parameter tractable parameterized by aa and dd, and is solvable in polynomial time for every fixed aa and dd. Our results also extend to nonlinear separable convex objective functions. Moreover, for linear objectives, we derive a strongly-polynomial algorithm, that is, with running time g(a,d)poly(n)g(a,d)\textrm{poly}(n), independent of the rest of the input data. We obtain these results by developing an algorithmic framework based on the idea of iterative augmentation: starting from an initial feasible solution, we show how to quickly find augmenting steps which rapidly converge to an optimum. A central notion in this framework is the Graver basis of the matrix AA, which constitutes a set of fundamental augmenting steps. The iterative augmentation idea is then enhanced via the use of other techniques such as new and improved bounds on the Graver basis, rapid solution of integer programs with bounded variables, proximity theorems and a new proximity-scaling algorithm, the notion of a reduced objective function, and others. As a consequence of our work, we advance the state of the art of solving block-structured integer programs. In particular, we develop near-linear time algorithms for nn-fold, tree-fold, and 22-stage stochastic integer programs. We also discuss some of the many applications of these classes.

Keywords

Cite

@article{arxiv.1904.01361,
  title  = {An Algorithmic Theory of Integer Programming},
  author = {Friedrich Eisenbrand and Christoph Hunkenschröder and Kim-Manuel Klein and Martin Koutecký and Asaf Levin and Shmuel Onn},
  journal= {arXiv preprint arXiv:1904.01361},
  year   = {2022}
}

Comments

Revision 3: - corrections to specified complexities (infinite bounds, feasibility, etc.)