A branch of mathematical programming in which one investigates problems of optimization (maximization or minimization) of functions of several variables that are related by a number of equations and (or) inequalities and that satisfy the condition of being integral valued. (Other terms are discrete programming, discrete optimization.) Sources of integer programming problems are technology, economy and defense.
The condition of the variables being integral valued formally reflects: a) the physical indivisibility of the objects (for example, in the distribution of enterprises or in the choice of combat actions); b) the finiteness of the set of feasible variants on which the optimization proceeds (for example, the set of permutations in problems of ordering); and c) the presence of logical conditions, which by holding or not holding exert a change in the form of the objective function and the constraints of the problem.
The most widely studied and most used integer programming problem is the so-called integer linear programming problem: Maximize
subject to
where
The solution methods for integer programming problems (relaxation (cf. Relaxation method), cutting planes, dynamic programming, "branch-and-bound", and others) are based on a reduction in the amount of feasible solutions. The "naive" approach to the solution of integer programming problems, which consists of a complete enumeration of all feasible solutions (if there are finitely many), requires an amount of computational work that grows exponentially with the number of variables and turns out to be impractical. The complexity of theoretical and numerical problems that arise in the solution of integer programming problems can be illustrated by the fact that Fermat's so-called last theorem can be stated in the following equivalent form: Minimize
subject to
where
The central theoretical problem in integer programming is: Can one avoid complete enumeration in solving integer programming problems? One of the mathematical formulations of this problem is: Do the classes
[1] | E.G. Gol'shtein, D.B. Yudin, "New directions in linear programming" , Moscow (1966) (In Russian) |
[2] | A.A. Korbut, Yu.Yu. Finkel'shtein, "Discrete programming" , Moscow (1969) (In Russian) |
[3] | M.R. Garey, D.S. Johnson, "Computers and intractability: a guide to the theory of NP-completeness" , Freeman (1979) |
[4] | G.L. Nemhauser, L.A. Wolsey, "Integer and combinatorial optimization" , Wiley (1988) |
For more information on
Unless
For the solution methods mentioned in the main article see also [4] and [a1], which cover the field.
[a1] | A. Schrijver, "Theory of linear and integer programming" , Wiley (1986) |