Reports of the Academy of Sciences of the USSR
MATHEMATICS
Submitted 1969-01-01 | RussiaRxiv: ru-196901.08422 | Translated from Russian

Abstract

Full Text

Reports of the Academy of Sciences of the USSR
1969. Volume 189, No. 5

UDC 519.3

MATHEMATICS

V. A. TRUBIN

ON A METHOD FOR SOLVING INTEGER LINEAR PROGRAMMING PROBLEMS OF A SPECIAL TYPE

(Presented by Academician V. M. Glushkov, 12 V 1969)

In the work of A. J. Hoffman and J. B. Kruskal ((^{1})), requirements are indicated that are imposed on the conditions of integer linear programming problems, under which the application of methods of linear programming to the solution of these problems always leads to an integer solution.

Below we consider a class of integer linear programming problems whose optimal solution can be obtained by a slightly modified method of successive improvement of the plan ((^{2})) for linear programming problems.

Consider a certain closed polyhedron (T) with set of vertices (S) and edges (R) in (n)-dimensional Euclidean space.

Definition. A subset of vertices (S' \subset S) will be called complete if the set of edges (R') of the polyhedron (T' = L(S')) is contained in (R); a subset consisting of no more than one vertex is complete (here (L(S')) is the convex linear hull of the set of vertices (S')).

Consider the polyhedron defined by the conditions

[
\sum_{j=1}^{n} a_{ij} x_j = 1,\qquad i = 1,2,\ldots,m;
\tag{1}
]

[
0 \leq x_j \leq 1,\qquad j = 1,2,\ldots,n,
\tag{2}
]

where (a_{ij}=0) or (1) are the elements of a given matrix (A).

Theorem. The set of integer vertices of the polyhedron (1), (2) is complete.

The proof follows from two lemmas.

Lemma 1. If the system (1), (2) has two integer solutions
(X^1={x_1^1,x_2^1,\ldots,x_n^1}), (X^2={x_1^2,x_2^2,\ldots,x_n^2}) such that

[
x_j^1 + x_j^2 = 1,\qquad j = 1,2,\ldots,n,
\tag{3}
]

then the matrix (A) is totally unimodular ((^{3})).

Proof. Condition (3) determines a partition of all columns of the matrix (A) into two disjoint sets. The first consists of the columns (j) for which (x_j^1=1), the second of those (j) for which (x_j^2=1). Consider the vector
(\bar X=(X^1+X^2)/2={\bar x_1,\bar x_2,\ldots,\bar x_n}), a solution of the system (1), (2). From (3), (\bar x_j=1/2), (j=1,2,\ldots,n). Substituting (\bar x) into (1), we obtain

[
\sum_{j=1}^{n} a_{ij} = 2,\qquad i = 1,2,\ldots,m,
\tag{4}
]

i.e., each row of the matrix (A) contains exactly two unit elements. Thus the matrix (A) satisfies (up to transposition) the conditions of Theorem 1, Ch. 15 of ((^{3})), which was required to prove.

Lemma 2. If (X^1 \ne X^2) are two integer vertices of the polyhedron (1), (2), belong to some of its (k)-dimensional face ((k \ge 1)), and do not belong to any of its ((k-1))-dimensional faces, then all vertices of the indicated (k)-dimensional face are integer.

Proof. Let (x_j^1 = x_j^2,\ j \in J_1 \subset J={1,2,\ldots,n}), for some coordinates (x_j) in the vertices (X^1) and (X^2). Then

[
x_j=x_j^1,\qquad j\in J_1
\tag{5}
]

for all points of the face under consideration. Otherwise, by adding equations (5) to the system of equations of the face, one can reduce its dimension. Substituting (5) into (1) and deleting from (A) the columns corresponding to (j\in J_1), and the rows that have turned into identities, we see that the remaining variables satisfy conditions of the form (3). Since (X^1\ne X^2), the set (J\setminus J_1) is nonempty. By Lemma 1, the variables (x_j,\ j\in J\setminus J_1), take integer values at all vertices of the face. Hence, and from (5), it follows that all variables take integer values at all vertices of the face under consideration.

Proof of the theorem. It is not difficult to show that all integer points of the polyhedron (1), (2) are its vertices.

If the polyhedron contains no more than one integer vertex, the validity of the theorem follows from the definition of completeness. Suppose there are at least two such vertices. In this case, if the set of integer vertices of the polyhedron is not complete, then on the convex linear hull of this set there will be an edge joining vertices (X^1\ne X^2) that is not an edge of the original polyhedron. Consider the face of minimal dimension to which (X^1, X^2) belong. By Lemma 2 the set of its vertices is integer and, consequently, the edge ([X^1X^2]) is an edge of the original polyhedron. From the contradiction obtained follows the validity of the assertion of the theorem.

Consider the problem of finding the optimal integer value of an arbitrary linear function on the polyhedron (1), (2). To solve it, in the method of successive improvement of the plan ((^2)) we introduce an additional check: whether the vertex adjacent to the given one, which is chosen for the transition at the current iteration with an improvement in the value of the objective function, is integer. If the answer is affirmative, the transition is made; in the case of a negative answer a new suitable column of the matrix of the problem (a new suitable adjacent vertex) is sought. This check is especially simple when using the first algorithm (((^2)), pp. 291–301). If (\theta_0\ne 0), it is equivalent to checking (\theta_0=1).

To construct an initial integer plan, one may use the same techniques as in the problem of linear programming written in canonical form (((^2)), pp. 266–275).

In the form of an integer linear programming problem of the kind considered, many extremal problems of graph theory and scheduling theory are formulated.

Let us list some of them: multistage and multi-index generalizations of the assignment problem (see, for example, ((^4))), determination of the internal stability number of a graph ((^3)), the simplest production-location problem ((^5)), construction of an optimal plan for train formation ((^6)), the traveling-salesman problem ((^7)), colorings of vertices and edges of a graph ((^3)), deliveries ((^8)), and certain other problems.

The use of the approach described for solving the indicated problems is comparable in efficiency with the method of successive improvement of the plan for the same problems without restrictions on the integrality of the variables, and is significantly more efficient than the use, for their solution, of existing methods for integer linear programming problems.

I take this opportunity to sincerely thank Yu. Yu. Finkelstein, N. Z. Shor, and A. A. Votyakov for a very useful discussion of this work.

Institute of Cybernetics
Academy of Sciences of the Ukrainian SSR
Kiev

Received
5 V 1969

REFERENCES

¹ Linear Inequalities and Related Questions, IL, 1959.
² D. B. Yudin, E. G. Golshtein, Linear Programming, Moscow, 1963.
³ C. Berge, The Theory of Graphs and Its Applications, Moscow, 1963.
⁴ W. P. Pierskalla, Oper. Res., 16, No. 2, 422 (1968).
⁵ M. A. Efroimson, T. L. Ray, Oper. Res., 14, No. 3, 361 (1966).
⁶ V. A. Trubin, Application of Mathematical Methods in Economic Research and Planning, No. 1, 3, Kiev, 1968.
⁷ V. A. Trubin, ibid., No. 3, 3 (1969).
⁸ M. L. Balinski, Manag. Sci., 12, No. 3, 253 (1965).

Submission history

Reports of the Academy of Sciences of the USSR