(05) Polymatroids, Part 1
Total Page:16
File Type:pdf, Size:1020Kb
1 An integer polymatroid P with groundset E is a bounded set of non-negative integer-valued vectors coordinatized by E such that P includes the origin; and any non-neg integer vector is a member of P if it is ≤ some member of F; and for any non-neg integer vector y, every maximal vector x in P which is ≤ y (―an F basis of y”) has the same sum |x| ≡ x(E) ≡ ∑( xj : j ϵ E), called the rank r(y) of vector y in P. Clearly, by definition, the 0–1 valued vectors in an integral polymatroid are the ―incidence vectors‖ of the independent sets J (i.e., J ∈ F) of a matroid M = (E,F). For any vectors x and y in Z+, x ∩ y denotes the maximal integer vector which is ≤ x and ≤ y; x ∪ y denotes the minimal integer vector which is ≥ x and ≥ y. Clearly 0 ≤ r(0) ≤ r(x) ≤ r(y) for x ≤ y. “non-neg & non-decreasing” + Theorem 2: For any x and y in Z , r(x ∪ y) + r(x ∩ y) ≤ r(x) + r(y). “submodular” Proof: Let v be an P-basis of x ∩ y. Extend it to P-basis w of x ∪ y. By the definition of integer polymatroid, r(x ∩ y) = |v| and r(x ∪ y) = |w|. r(x) + r(y) ≥ |w ∩ x| + |w ∩y| = |w ∩ (x ∩ y)| + | w ∩(x ∪ y)| = |v| + |w| = r(x ∪ y) + r(x ∩ y). □ + For subsets S of E define fP(S) to be r(x) where x ϵ Z is very large for coordinates in S and = 0 for coordinates not in S. Corollary: For sets S ⊆ E, fP(S) is non-neg, non-decreasing, and submodular. Such an fP(S) for subsets S ⊆ E, is called a polymatroidal set function. (We will see how, conversely, any polymatroid is given by this set function.) 2 The discussion of polymatroid is the same by omitting everywhere the word ‗integer‘ But including the condition that it be closed and bounded. It will be theorem that a polymatroid is in fact a polytope. A real-valued function f(S), S ⊆ E, Is called a polymatroidal set function if (a) f(∅) = 0 and f(A) ≥ 0 for every A ⊆ E; (b) is non-decreasing: A ≤ B ⇒ f(A) ≤ f(B); and (c) submodular: f(A∪B) + f(A∩B) ≤ f(A) + f(B) for every A ⊆ E and B ⊆ E. Theorem 1. For any polymatroidal set function, f(S), S ⊆ E, the following polyhedron is a polymatroid: P(E, f) ≡ { x= (xj: j ϵ E) ≥ 0 : x(S) ≤ f(S) for every S ⊆ E}. The polymatroidal rank function r of P(E, f), for any a = [aj : j ϵ E] ≥ 0, is r(a) = min [f(S) + a(E - S) : S ⊆ E]. Proof. Clearly r(a) ≤ min [f(S) + a(E - S) : S ⊆ E] (by weak l.p. duality). Let x0 ≥ 0 be any maximal x ≥ 0 such that x ≤ a and x(S) ≤ f(S) for every S ⊆ E. For any sets A and B such that x0(A) = f(A) and x0(B) = f(B), we have x0 (A∪B) + x0 (A∩B) ≤ f(A∪B) + f(A∩B) ≤ f(a) + f(b) = x0(A) + x0(B) = x0 (A∪B) + x0 (A∩B) and so x0 (A∪B) = f(A∪B) and x0 (A∩B) = f(A∩B), and so where S is the union of all sets where equality holds, we have x0(S) = f(S) and x0(E - S) = a(E – S). Hence r(a) = f(S) + a(E – S). By the same argument, where f is integer–valued we get an integer polymatroid. 3 Theorem 3. For any polymatroid P: we have P = P(E, fP ). Thus, all polymatroids are polyhedra, and they correspond precisely to polymatroidal set functions. Any submodular set function f‘(S), S ⊆ E, not necessarily non-neg and non-decreasing, can, for some easily specied vector a ≥ 0, be expressed up to an additive constant as f’(S) = min [f(S) + a(E - S) : S ⊆ E], where f(S) is polymatroidal. Therefore if we have an oracle which tells the value of f‘(S) for any S ⊆ E we can find the minimum of f‘(S) by calculating a maximal vector x such that x ϵ P(E, f) and x ≤ a. The only difficulty in simply pushing x up arbitrarily in the various coordinates, starting with x = 0, until any further push will violate x ≤ a in some coordinate or x(S) ≤ f(S) for some S ⊆ E, is that there are so many inequalities, x(S) ≤ f(S), to check. 4 It is easy to see that an x is not in P(E, f) by showing x(S) > f(S) for one set S ⊆ E, But how can we show that x satisfies x(S) ≤ f(S) for all S ⊆ E? We can get [min f‘(S)] into NP∩coNP relative to the oracle for f‘(S) by getting a good description of when x ϵ P(E, f). We will do that by getting a good description of the vertices of P(E, f). Then we can show that x ϵ P(E, f) by using Cartheodory‘s theorem to show x as a convex combination of a small number of vertices of P(E, f). Let j(1), j(2), …, j(k), be an arbitrary ordering of a subset of E. For each integer i, 1 ≤ i ≤ k, let Ai = {j(1), j(2), . , j(i)}. Theorem 4. The vertices of P(E, f) are precisely the vectors of the form x where xj(1) = f(A1); xj(i) = f(Ai) − f(Ai−1) for 2 ≤ i ≤ k; xj(i) = 0 for k < i ≤ |E|. 5 For the linear program, maximize cx = (∑cjxj: j ϵ E) over x ∈ P(E, f), let j(1), j(2), . be an ordering of E such that cj(1) ≥ cj(2) ≥ · · · cj(k) > 0 ≥ cj(k+1) ≥ · · · The dual l.p. is to Minimize f y = ∑[ f(A)y(A): A⊆ E] where y(A) ≥ 0; and for every j ∈ E, ∑ [y(A): j∈A] ≥ cj . Theorem 5. (The Greedy Algorithm). cx is maximized over x ∈ P(E, f) by the vector x of the form in Theorem 4. (The Dual Greedy Algorithm) An optimum solution, y = [y(A)], A⊆E, to the dual l.p.is y(Ai) = cj(i) − cj(i+1) for 1 ≤ i ≤ k − 1; y(Ak) = cj(k) ; and y(A) = 0 for all other A⊆E. Where f is the rank function of a matroid M = (E,F), Theorem 4 implies that the vertices of P(E, f) are precisely the incidence vectors of the independent sets J ϵ F of matroid M. Such a P(E, f) is called a matroid polytope. (For matroids the greedy algorithm takes a more familiar looking form.) 6 Let f be a polymatroidal function on S ⊆ E. A set A ⊆ E is called f-closed or an f-flat, when f(A) < f(C) for any C ⊆ E which properly contains A . Theorem 6.1. If A and B are f-closed then A ∩ B is f-closed. (In particular, when f is the rank function of a matroid the f-flats form a ―matroid lattice‖.) A set A ⊆ E is called f-separable when f(A) = f(A1) + f(A2) for some partition of A into non-empty subsets A1 and A2. Otherwise A is called f-inseparable. Theorem 6.2. Any A ⊆ E partitions in only one way into a family of f-inseparable sets Ai such that f(A) = ∑f(Ai). The Ai‘s are called the f-blocks of A. If a polyhedron P is full dimensional then there is a unique minimal system of linear inequalities having P as its set of solutions. These inequalities are called the facets of P. It is obvious that a polymatroid P(E, f) has dimension |E| if and only if the empty set ∅ is f-closed. It is obvious that an inequality x(A) ≤ f(A) is a facet of P(E, f) only if A is f-closed and f-inseparable. Theorem 6.3. Where f is a polymatroidal function such that the empty set is f-closed, the facets of polymatroid P(E, f) are: xj ≥ 0 for every j ∈ E; and x(A) ≤ f(A) for every A ⊆ E which is f-closed and f-inseparable. 7 Let each Vp, p = 1 and 2, be a family of mutually disjoint subsets of H. Where [aij ], i ∈ E, j ∈ E, is the 0–1 incidence matrix of V1 ∪ V2, the following l.p. is known in O.R. as the ―Hitchcock transportation problem‖. Maximize cx = ∑]cjxj: j∈E] , where (31.) xj ≥ 0 for every j ∈ E, and ∑[aijxj: j∈E] ≤ bi for every i ∈ H. The dual l.p. is Minimize by = ∑biyi, where (33.) yi ≥ 0 for every i ∈ H, and ∑[aijyi: i∈H] ≥ cj for every j ∈ E. Denote the polyhedron of solutions of a system Q of linear inequalities by P[Q]. The following properties of the Hitchcock problem are important in its combinatorial use. Theorem 7. Where the bi‘s are integers, the vertices of P[(31)] are integer-valued. Where the cj ‘s are integers, the vertices of P[(33)] are integervalued. This is essentially Egervary‘s Theorem. 8 Theorem 8. Integer Polymatroid Intersection: For any two integral polymatroids P1 = P(E, f1) and P2 = P(E, f2), the vertices of P1 ∩ P2 are integer-valued.