880 research outputs found

    An Algorithmic Theory of Integer Programming

    Full text link
    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.Comment: Revision 2: - strengthened dual treedepth lower bound - simplified proximity-scaling algorith

    A polynomial oracle-time algorithm for convex integer minimization

    Full text link
    In this paper we consider the solution of certain convex integer minimization problems via greedy augmentation procedures. We show that a greedy augmentation procedure that employs only directions from certain Graver bases needs only polynomially many augmentation steps to solve the given problem. We extend these results to convex NN-fold integer minimization problems and to convex 2-stage stochastic integer minimization problems. Finally, we present some applications of convex NN-fold integer minimization problems for which our approach provides polynomial time solution algorithms.Comment: 19 pages, 1 figur

    A polynomial-time algorithm for optimizing over N-fold 4-block decomposable integer programs

    Full text link
    In this paper we generalize N-fold integer programs and two-stage integer programs with N scenarios to N-fold 4-block decomposable integer programs. We show that for fixed blocks but variable N, these integer programs are polynomial-time solvable for any linear objective. Moreover, we present a polynomial-time computable optimality certificate for the case of fixed blocks, variable N and any convex separable objective function. We conclude with two sample applications, stochastic integer programs with second-order dominance constraints and stochastic integer multi-commodity flows, which (for fixed blocks) can be solved in polynomial time in the number of scenarios and commodities and in the binary encoding length of the input data. In the proof of our main theorem we combine several non-trivial constructions from the theory of Graver bases. We are confident that our approach paves the way for further extensions

    Convex Combinatorial Optimization

    Full text link
    We introduce the convex combinatorial optimization problem, a far reaching generalization of the standard linear combinatorial optimization problem. We show that it is strongly polynomial time solvable over any edge-guaranteed family, and discuss several applications

    Strongly polynomial algorithm for a class of minimum-cost flow problems with separable convex objectives

    Get PDF
    A well-studied nonlinear extension of the minimum-cost flow problem is to minimize the objective ijECij(fij)\sum_{ij\in E} C_{ij}(f_{ij}) over feasible flows ff, where on every arc ijij of the network, CijC_{ij} is a convex function. We give a strongly polynomial algorithm for the case when all CijC_{ij}'s are convex quadratic functions, settling an open problem raised e.g. by Hochbaum [1994]. We also give strongly polynomial algorithms for computing market equilibria in Fisher markets with linear utilities and with spending constraint utilities, that can be formulated in this framework (see Shmyrev [2009], Devanur et al. [2011]). For the latter class this resolves an open question raised by Vazirani [2010]. The running time is O(m4logm)O(m^4\log m) for quadratic costs, O(n4+n2(m+nlogn)logn)O(n^4+n^2(m+n\log n)\log n) for Fisher's markets with linear utilities and O(mn3+m2(m+nlogn)logm)O(mn^3 +m^2(m+n\log n)\log m) for spending constraint utilities. All these algorithms are presented in a common framework that addresses the general problem setting. Whereas it is impossible to give a strongly polynomial algorithm for the general problem even in an approximate sense (see Hochbaum [1994]), we show that assuming the existence of certain black-box oracles, one can give an algorithm using a strongly polynomial number of arithmetic operations and oracle calls only. The particular algorithms can be derived by implementing these oracles in the respective settings

    Integer Programming: Optimization and Evaluation Are Equivalent

    Get PDF
    Link to conference publication published by Springer: http://dx.doi.org/10.1007/978-3-642-03367-4We show that if one can find the optimal value of an integer linear programming problem in polynomial time, then one can find an optimal solution in polynomial time. We also present a proper generalization to (general) integer programs and to local search problems of the well-known result that optimization and augmentation are equivalent for 0/1-integer programs. Among other things, our results imply that PLS-complete problems cannot have “near-exact” neighborhoods, unless PLS = P.United States. Office of Naval Research (ONR grant N00014-01208-1-0029

    N-fold integer programming in cubic time

    Full text link
    N-fold integer programming is a fundamental problem with a variety of natural applications in operations research and statistics. Moreover, it is universal and provides a new, variable-dimension, parametrization of all of integer programming. The fastest algorithm for nn-fold integer programming predating the present article runs in time O(ng(A)L)O(n^{g(A)}L) with LL the binary length of the numerical part of the input and g(A)g(A) the so-called Graver complexity of the bimatrix AA defining the system. In this article we provide a drastic improvement and establish an algorithm which runs in time O(n3L)O(n^3 L) having cubic dependency on nn regardless of the bimatrix AA. Our algorithm can be extended to separable convex piecewise affine objectives as well, and also to systems defined by bimatrices with variable entries. Moreover, it can be used to define a hierarchy of approximations for any integer programming problem

    A Combinatorial, Strongly Polynomial-Time Algorithm for Minimizing Submodular Functions

    Full text link
    This paper presents the first combinatorial polynomial-time algorithm for minimizing submodular set functions, answering an open question posed in 1981 by Grotschel, Lovasz, and Schrijver. The algorithm employs a scaling scheme that uses a flow in the complete directed graph on the underlying set with each arc capacity equal to the scaled parameter. The resulting algorithm runs in time bounded by a polynomial in the size of the underlying set and the largest length of the function value. The paper also presents a strongly polynomial-time version that runs in time bounded by a polynomial in the size of the underlying set independent of the function value.Comment: 17 page
    corecore