






Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
The concept of total unimodularity in the context of integer programming. Total unimodularity is a property of matrices that guarantees the lp relaxation of an integer programming problem solves the integer problem optimally for certain parameter values. A lemma stating that if the determinant of a submatrix of a total unimodular matrix is equal to 1, then the lp relaxation solves the integer problem. The document also discusses the importance of total unimodularity and provides simple criteria for recognizing total unimodular matrices.
Typology: Study notes
1 / 10
This page cannot be seen from the preview
Don't miss anything!







c c
Fig. 7.1. The optimal solution of the IP on the left can be found by solving its LP relaxation. The IP on the right has a LP relaxation with infinitely many optimal solutions. One of these is the optimal solutions of the IP, but this solution is not found directly by the simplex algorithm, as basic feasible solutions correspond to vertices of the feasible polyhedron.
(IP) max c T^ x s.t. Ax ≤ b x ≥ 0 x ∈ Zn^ ,
where we assume that A ∈ Zm×n^ and b ∈ Zm^ have integer coefficients. It is natural to ask for whether we can recognise problem parameters (A, b) for which the LP relaxation
(LP) max c T^ x s.t. Ax ≤ b x ≥ 0
actually solves the integer programming problem (IP) to optimality, rather than just providing a dual bound. Obviously, for this to happen there must exist an optimal solution of (LP) that is feasible for (IP), see Figure 7.1.
A complete characterisation of such input data is not available, but we can give a partial answer in the case where the LP formulation is not degenerate, that is, where it has a unique optimal solution. In this case a basic feasible optimal solution must do the trick. In Section 2.2 we saw that such a solution is of the form
x∗ B = A− B^1 b, x∗ N = 0
for some nonsingular matrix AB composed of the columns of [ A I ] that correspond to the indices in B, that is, AB = CP for some submatrix C of [ A I ] and some permutation matrix P 3. A first insight is the following:
(^3) For the benefit of completeness, let us briefly recall the concept of permutation matrices. Let σ : { 1 ,... , n} → { 1 ,... , n} be a permutation, and let P = [p (^) ij ] be the n × n matrix defined by p (^) ij = 1 if j = σ(i), and p (^) ij = 0 otherwise. P is called the permutation matrix associated with σ.
Lemma 7.1. If | det(C)| = 1, then (LP) solves (IP). Proof. We note that since det(P ) = ±1, | det(AB )| = | det(C)| · | det(P )| = 1. It suffices to prove that x∗ B = A− B 1 b is an integer vector, and since b has integer
components, it suffices to show that A− B^1 = [β (^) ij ] has integer components β (^) ij. Let AijB be the (m − 1) × (m − 1) matrix obtained by deleting row i and column j from AB. By Cramer’s rule,
β (^) ij =
det(AijB ) det(AB )
A particularly lucky situation occurs when | det(C)| = 1 for all submatrices of [ A^ I^ ] that correspond to a set of basic variables. The following is a stonger notion that guarantees that this is the case:
Definition 7.2. A matrix M is totally unimodular (TU) if every square sub- matrix (of any size) has determinant +1, − 1 or 0.
An immediate consequence of Definition 7.2 is that all components of a TU matrix M must be ∈ { 0 , 1 , − 1 }. To verify this, it suffices to consider submatrices of size 1 ×1.
Example 26. It can be verified by tedious evaluation of the determinants of all square submatrices that the following matrix is TU, 0 1 0 0 0 0 1 1 1 1 1 0 1 1 1 1 0 0 1 0 1 0 0 0 0
We understand that total unimodularity merely gives a sufficient criterion for when the integer programme
(IP) max{c T^ x : Ax ≤ b, x ∈ Zn + }
is solved by its LP relaxation
(LP) max{c T^ x : Ax ≤ b, x ≥ 0 }.
The following result explains how restrictive this criterion is:
If M is a m × n matrix with columns M (^) :, 1 ,... , M (^) :,n then M · P is the m × n matrix with columns M (^) :,σ − (^1) (1) ,... , M (^) :,σ − (^1) (n). In other words, right multiplication with P moves column i into the σ(i)- th position. It is immediate to see that P T^ does the opposite, and hence, P T^ = P −^1. Therefore, det(P )^2 = det(P T^ )· det(P ) = det(I) = 1. By taking transposes it is trivial to see that if M is a n × m matrix with rows M (^1) ,: ,... , M (^) n,: then P T^ ·M is the n×m matrix with rows M (^) σ − (^1) (1),: ,... , M (^) σ − (^1) (n),: , i.e., row i moves into the σ(i)-th place.
Theorem 7.5. A m × n matrix A is TU if and only if any of the following matrices are TU,
i) AT^ , ii)
iii) A · P , where P is a n × n permutation matrix iv) P · A, where P is a m × m permutation matrix, v)
J 2 0
, with Ji = Pi
0 0
Q (^) i , and where I are identity matrices, 0 blocks of zeros, and Pi , Q (^) i permutation matrices of appropriate size. Proof. The proof is tedious but elementary: i) Let R ⊆ { 1 ,... , m} and C ⊆ { 1 ,... , n} be index sets, and let ARC be the submatrix of A obtained by deleting all rows not in R and all columns not in C. By definition, A is TU if and only if det(ARC ) ∈ { 0 , 1 , − 1 } for all R, C that correspond to square submatrices. Since
det
= det
= det(ARC ),
A is TU ⇔ AT^ is TU. iii) Let P be the permutation matrix corresponding to the permutation σ : { 1 ,... , n} → { 1 ,... , n}, and let C = {j 1 ,... , jk }. Then
(AP )RC =
AR,σ − (^1) (j 1 )... AR,σ − (^1) (jk )
Let H = (h 1 ,... , h (^) k ) be the ordered set {σ −^1 (j" ) : # = 1,... , k}, and let Q be the k × k permutation matrix such that [ AR,σ − (^1) (j 1 )... AR,σ − (^1) (jk )
Then det((AP )RC ) = det(ARH ) · det(Q) ∈ (±1) · det(ARH ). It follows that every square submatrix of AP has determinant in { 0 , 1 , − 1 } if and only if every square submatrix of A satisfies this criterion. ii) Every submatrix of A is a submatrix of [ A −A ]. Thus, if the latter is TU, then A is TU. For the converse, note that [ A −A
for some index sets C 1 , C 2 ⊂ { 1 ,... , n}. If C 1 ∩ C 2 += ∅, then the columns of [ A −A ]RC are linearly dependent, and the determinant is zero. Otherwise there exists a permutation matrix P , an index set C˜ and a diagonal matrix D with diagonal entries ±1 such that [ A −A
and then
det(
RC ) = det(AR^ C˜^ ) det(P^ ) det(D)^ ∈^ {^0 ,^1 ,^ −^1 },
since A was assumed to be TU. iv) This follows from a combination of iii) and i).
v) Writing B = P 1 T AQ T 2 , we find
[ A J 1 J 2 0
where
Ii =
Since [ P 1 0 0 P 2
are permutation matrices, it follows from iii) and iv) that we can directly work with the matrix [ B I 1 I 2 0
Furthermore, if we can show the claim for matrices of the form [ B I 1
only, then the claim follows from
B TU ⇔
B being a submatrix of [ B I ], the total unimodularity of the latter clearly implies that the former is TU. If B is TU, then [ B I ]RC is of the form [ BR,C 1 J^ ˜ 1
where J˜ 1 is of the same form as Ji , but possibly smaller. Since BR,C 1 is TU, it thus suffices to assume that [ B I ] is square, show that det([ B I ]) ∈ { 0 , 1 , − 1 }, and apply the argument recursively. But if [ B I ] is square, then det([ B I ]) += 0 only if it is of the form [ B 1 I B 2 0
and then
det([ B I ]) = ± det(B 2 ).
B 2 being a square submatrix of B, and B being TU, it follows that det([ B I^ ]) ∈ { 0 , 1 , − 1 }, as required.
h h
h
h
h
12 24
34
45
51
c
c
c
c
c
b
b
b b
b
1
2
5
3 4
12
24
34
45
51
Fig. 7.3. A network flow problem with production rates bi at each node i, arc rate capacities h (^) ij and rate costs c (^) ij.
7.2. Applications to Network Flows. The minimum cost network flow prob- lem is defined as follows: Given is a directed graph D = (V, A) with arc capacities h (^) ij for all (i, j) ∈ A. At each node i ∈ V , b (^) i units of liquid are produced per unit time (negative production is to be interpreted as consumption). The total consumption equals the total production. Liquid can flow via the network at rates up to the spec- ified capacities h (^) ij , but no spillage can occur. Pumping one unit of liquid per unit of time along arc (i, j) ∈ A incurs a costs c (^) ij. See Figure 7.3 for an example of such a network. The problem is now to determine which feasible flow will minimise the total cost.
We will first formulate the min-cost network flow problem as an LP. Let xij be the rate at which liquid is flowing along arc (i, j). Let V +^ (i) = {j : (i, j) ∈ A} denote the set of nodes to which there is an arc from i (successor nodes), and V −^ (i) = {j : (j, i) ∈ A} the set of nodes from which there is an arc to i (predecessor nodes). We thus obtain the following LP model,
min
(i,j)∈A
c (^) ij xij
s.t.
j∈V +^ (i)
xij −
j∈V −^ (i)
xji = b (^) i (i ∈ V )
0 ≤ xij ≤ h (^) ij ((i, j) ∈ A).
Before proceeding further, let us consider a specific example that will reveal the general structure of the constraint matrices of network flow problems:
Example 28. The digraph (directed graph) with 3 nodes and arcs A = {(1, 2), (1, 3), (2, 1), (2, 3), (3, 2)} with capacities 3 , 2 , 4 , 3 , 6 , transportation costs
2
4
3
2
4
3
1
1
2
3
− (^6 ) 6
Fig. 7.4. The network of Example 28 .
1 , 1 , 2 , 3 , 4 and node production rates 2 , 4 , − 6 is modelled as
min c T^ x
s.t.
(^) x ≤
b −b h
x ≥ 0 ,
where
− 1 0 1 1 − 1 0 − 1 0 − 1 1
, x =
x (^12) x (^13) x (^21) x (^23) x (^31) x (^32)
(^) , b =
4 − 6
, h =
2 4 3 6
, c =
1 2 3 4
It turns out that the constraint matrix is TU.
The findings of Example 28 remain true for general network flow problems:
Proposition 7.7. The constraint matrix arising in a minimum cost network flow problem is totally unimodular.
Proof. In complete analogy to iExample 28, the constraint matrix has the form
It suffices therefore to show that C is TU. Each column of C has exactly two nonzero entries, one +1, the other one -1, because it enters in one constraint as an outgoing arc, and in another as an icoming arc. Therefore, the sufficient criterion of Proposi- tion 1 is satisfied with M 1 = M and M 2 = ∅
1
0
0
0
− 1
3
2
1 1
1
1
1
1 1
1
1
1 2
Fig. 7.5. A shortest path problem interpreted as network flow problem, and an optimal solution revealed in bold arcs.