Academia.eduAcademia.edu

Convex Matroid Optimization

2003, SIAM Journal on Discrete Mathematics

We consider a problem of optimizing convex functionals over matroid bases. It is richly expressive and captures certain quadratic assignment and clustering problems. While generally NP-hard, we show it is polynomial time solvable when a suitable parameter is restricted.

arXiv:math/0207136v1 [math.CO] 16 Jul 2002 Convex Matroid Optimization Shmuel Onn ∗ Abstract We consider a problem of optimizing convex functionals over matroid bases. It is richly expressive and captures certain quadratic assignment and clustering problems. While generally NP-hard, we show it is polynomial time solvable when a suitable parameter is restricted. 1 Introduction Let M = (N, B) be a matroid over N := {1, . . . , n} with collection of bases B ⊆ 2N . Let d be a weighting of matroid elements by vectors in d-space. For any subset J ⊆ N w : N −→ RP let w(J) := j∈J w(j) with w(φ) := 0. Finally, let c : Rd −→ R be a convex functional on Rd . We consider the following algorithmic problem. Convex matroid optimization. Given data as above, find a basis B ∈ B maximizing c(w(B)). We begin with some examples of specializations of this problem. Example 1.1 Linear matroid optimization. This is the special case of our problem with d = 1, w : N −→ R a weighting of elements by scalars, and c : R −→ R : x 7→ x the identity. The problem is to find a basis of maximum weight, and is quickly solvable by the greedy algorithm. Example 1.2 Positive semidefinite quadratic assignment. This is the NP-hard problem [6] of finding a vector x ∈ {0, 1}n maximizing ||W x||2 = xT W T W x with W a given d × n matrix. For fixed d it is solvable in polynomial time [3]. The variant of this problem in which one asks for x with restricted support |supp(x)| = r is the special case of our problem with M := Unr the uniform matroid of rank r over N , with w(j) := W j the jth column of W for all j ∈ N , and with c : Rd −→ R : x 7→ ||x||2 the l2 -norm (squared or not). The positive semidefinite quadratic assignment problem can be solved by solving the variant for r = 0, . . . , n and picking the best x. ∗ Research supported in part by a grant from ISF - the Israel Science Foundation, by a VPR grant at the Technion, and by the Fund for the Promotion of Research at the Technion. 1 2 Convex Matroid Optimization Example 1.3 Balanced clustering. This is the problem of partitioning a given set {w1 , . . . , wn } of points in Rd into two clusters C1 , C2 of equal size m := n2 so as to minimize the sum of cluster variances given by 1 X 1 X ||wj − ( wj )||2 m m wj ∈C1 wj ∈C1 + 1 X 1 X ||wj − ( wj )||2 . m m wj ∈C2 wj ∈C2 It can be shown by suitable manipulation of the variance expression that this is the special case of our problem with M the uniform matroid of rank n2 over N ,P with w(j) := wj for all j ∈ N , and with c : Rd −→ R : x 7→ ||x||2 + ||w(N ) − x||2 with w(N ) = nj=1 wj the sum of all points. While the linear matroid optimization problem (Example 1.1) is greedily solvable (cf. [4]), the general convex matroid optimization problem is NP-hard as indicated by Example 1.2. Nevertheless, in this article we show that, so long as d is fixed, the problem can be solved in polynomial time for an arbitrary matroid M and an arbitrary convex functional c. We assume that c is presented by an evaluation oracle that given x ∈ Rd returns c(x), and that M is presented by an independence oracle that given J ⊆ N asserts whether or not J is an independent set of M . In this article we establish the following theorem. Theorem 1.4 For any fixed d, the convex matroid optimization problem with oracle presented matroid M over N := {1, . . . , n}, weighting w : N −→ Rd , and oracle presented convex functional c : Rd −→ R, can be solved in polynomial oracle time using O(n2d−1 log n) operations and queries. The computational complexity is measured in terms of the number of real arithmetic operations and oracle queries. For rational input the algorithm is (strongly) polynomial time in the Turing computation model where the input includes the binary encoding of the weighting w : N −→ Qd and the binary encoding of an upper bound U := maxJ⊆N c(w(J)) on the relevant values of the convex functional, but we do not dwell on the details here. The special case of the convex matroid optimization problem for uniform matroids coincides with the special case of the so-called shaped partition problem [7] for two parts. Therefore, the specializations to two-parts of the lower bounds of [1, 2] imply a lower bound of Ω(nd−1 ) on the complexity of the convex matroid optimization problem. It would be very interesting to further study a plausible common generalization of the convex matroid optimization problem for arbitrary matroids and the shaped partition problem for arbitrary number of parts. 2 Proof of the theorem For a matroid M = (N, B) and a weighting w : N −→ Rd , consider the following convex polytope PwM := conv { w(B) : B ∈ B } ⊂ Rd . The convex matroid problem can be reduced to maximizing the convex functional c over PwM : there will always be an optimal basis B ∈ B for which w(B) is a vertex of PwM and so the 3 Shmuel Onn problem can be solved by picking the best such vertex. However, as the number of matroid bases is typically exponential in n it is not possible to construct PwM directly in polynomial time. To overcome this we consider the following zonotope: X Pw := [−1, 1] · (w(i) − w(j)) ⊂ Rd . 1≤i<j≤n Proposition 2.1 Fix any d. Then the number of vertices of the zonotope Pw is O( n2(d−1) ). Further, in polynomial time using that many arithmetic operations, all its vertices can be listed, each vertex v along with a linear functional a(v) ∈ Rd uniquely maximized over Pw at v.  Proof. The zonotope Pw is the Minkowski sum of m := n2 line segments in Rd and therefore (cf. [5, 8]) has O(md−1 ) = O(n2(d−1) ) vertices which can all be enumerated, each v along with a vector a(v) uniquely maximized at v, using that many arithmetic operations. LetP P M := conv{1B : B ∈ B} ⊂ Rn be the basis polytope of the matroid M = (N, B), where 1B := j∈B ej is the incidence vector of B ∈ B with ej the jth standard unit vector in Rn . We include the short proof of the following statement. Proposition 2.2 Every edge of the basis polytope is equal to ei − ej for some pair i, j ∈ N . Proof. Consider any pair A, B ∈ B of bases such that [1A , 1B ] is an edge (that is, a 1-face) of P M , and let a ∈ Rn be a linear functional uniquely maximized over P M at that edge. If A \ B = {i} is a singleton then B \ A = {j} is a singleton as well in which case 1A − 1B = ei − ej and we are done. Suppose then, indirectly, that it is not, and pick an element i in the symmetric difference A∆B := (A \ B) ∪ (B \ A) of A and B of minimum value ai . Without loss of generality assume i ∈ A \ B. Then there is a j ∈ B \ A such that C := A \ {i} ∪ {j} is a basis of M . Since |A∆B| > 2, C is neither A nor B. By the choice of i, this basis satisfies a · 1C = a · 1A − ai + aj ≥ a · 1A , and hence 1C is also a maximizer of a over P M so lies in the 1-face [1A , 1B ]. But no {0, 1}-vector is a convex combination of others, yielding a contradiction. The normal cone of a face at a polyhedron P in Rd is the relatively open cone of those linear functionals a ∈ Rd uniquely maximized over P at that face. The collection of normal cones of all faces of P is called the normal fan of P . A polyhedron P is a refinement of a polyhedron Q if the normal fan of P is a refinement of that of Q, that is, the closure of each normal cone of Q is the union of closures of normal cones of P . We have the following lemma. Lemma 2.3 The zonotope Pw is a refinement of the polytope PwM . Proof. Let π : Rn −→ Rd : ej 7→ w(j) be the natural projection sending the unit vector ej corresponding to the matroid element j ∈ N to the vector w(j) ∈ Rd . Then for each B ∈ B we have π(1B ) = w(B) and hence PwM = conv{ w(B) : B ∈ B } = conv{ π(1B ) : B ∈ B } = π(P M ) 4 Convex Matroid Optimization so PwM is a projection of P M . Thus, each edge of PwM is the projection of some edge of P M and hence, by Proposition 2.2, is equal to π(ei − ej ) = w(i) − w(j) for some pair i, j ∈ N . Thus, the P zonotope Pw = 1≤i<j≤n [−1, 1]·(w(i)−w(j)) is the Minkowski sum of a set of segments containing all edge directions of PwM and hence its normal fan is a refinement of the normal fan of PwM . We are now in position to prove our theorem. Proof of Theorem 1.4. Given data M, w, c, the algorithm proceeds with the following steps: first, compute via Proposition 2.1 the list of O( n2(d−1) ) vertices v of Pw , each v along with a linear functional a(v) ∈ Rd uniquely maximized over Pw at v. Second, for each v do the following: let a := a(v) and define the following weighting of matroid elements by scalars: b : M −→ R : j 7→ a · w(j) = d X ai w(j)i ; i=1 now apply a greedy algorithm to obtain a basis B(v) ∈ B of maximum weight b(B), that is, sort N by decreasing b-value (using O(n log n) operations) and find, using at most n calls to the independence oracle presenting M , the lexicographically first basis B(v). Third, for each v compute the value c(w(B(v))) using the evaluation oracle presenting c; an optimal basis for the convex matroid optimization problem is any B(v) achieving maximal such value among the bases B(v) of vertices v of Pw . The complexity is dominated by the second step which takes O(n log n) operations and queries and is repeated O( n2(d−1) ) times, giving the claimed bound. We now justify the algorithm. First, we claim that each vertex u of PwM satisfies u = w(B(v)) for some B(v) produced in the second step of the algorithm. Consider any such vertex u. Since Pw refines PwM by Lemma 2.3, the normal cone of u at PwM contains the normal cone of some (possibly more than one) vertex v of Pw . Then a := a(v) is uniquely maximized over PwM at u. Now, consider the second step of the algorithm applied to v and let b be the corresponding scalar weighting of matroid elements. Then the b-weight of any basis B satisfies X X b(B) = a · w(j) = a · w(j) = a · w(B) ≤ a · u j∈B j∈B with equality if and only if w(B) = u. Thus, the maximum b-weight basis B(v) produced by the greedy algorithm will satisfy u = w(B(v)). Thus, as claimed, each vertex u of PwM is obtained as u = w(B(v)) for some B(v). Now, since c is convex, the maximum value c(w(B)) of any basis B ∈ B will occur at some vertex u = w(B(v)) of PwM = conv{ w(B) : B ∈ B }. Therefore, any basis B(v) with maximum value c(w(B(v))) is an optimal solution to the convex matroid optimization problem. The third step of the algorithm produces such a basis and so the algorithm is justified. References Shmuel Onn 5 [1] N. Alon and S. Onn, Separable partitions, Discrete Applied Mathematics, 91:39–51, 1999. [2] S. Aviran and S. Onn, Momentopes and the vertex complexity of partition polytopes, Discrete and Computational Geometry, 27:409–417, 2002. [3] K. Allemand, K. Fukuda, T.M. Liebling and E. Steiner, A polynomial case of unconstrained zer-one quadratic optimization, Mathematical Programming Series A, 91:49–52, 2001. [4] W.J. Cook, W.H. Cunningham, W.R. Pulleyblank and A. Schrijver, Combinatorial Optimization, John Wiley & Sons, 1997. [5] P. Gritzmann and B. Sturmfels, Minkowski addition of polytopes: complexity and applications to Gröbner bases, SIAM Journal on Discrete Mathematics, 6:246–269, 1993. [6] L.P. Hammer, P. Hansen, P.M. Pardalos and D.J. Rader, Maximizing the product of two linear functions in 0 − 1 variables, RUTCOR Research Report, Rutgers University, 1997. [7] F.K. Hwang, S. Onn and U.G. Rothblum, A polynomial time algorithm for shaped partition problems, SIAM Journal on Optimization, 10:70–81, 1999. [8] S. Onn and L.J. Schulman, The vector partition problem for convex objective functions, Mathematics of Operations Research, 26:583–590, 2001. Shmuel Onn Technion - Israel Institute of Technology, 32000 Haifa, Israel, and University of California at Davis, Davis, CA 95616, USA. email: [email protected], [email protected], http://ie.technion.ac.il/∼onn