Efficient Algorithms for Graphic Matroid Intersection and Parity

Efficient Algorithms for Graphic Matroid Intersection and Parity

\ 194 - 1 \ Automata, Languages and ~rogrammlng 1 , verifying Concurrent Processes Using 12th Colloquium 18 pages.1982, Nafplion, Greece, July 15-19,1985 iomatisingthe ~ogicof Computer Program- 182. s.Proceedings, 1881. Edited by 0. Kozen. ;iw Techniques I- Requirement6 and Logical 3, 1978, Edited by S.B.Yao, S.B. Navathe, .nit. V. 227 pages, 1982. Design Techniques 11: Proceedings, 1979. T.L.Kunii.V, 229-399 pages. 1992. cificalion. Proceedings, 1981. Edited by J. 366.1982. X2ProgiammingLogic.X,292 pages.108 ~age8.1982. Edited by Wilfried Brauer I on Automated Deduciion, Proceedings veland.VII. 389 pages. 1982. sopoulou. G. Per8ch.G. Goos, M. Daismann rchgassner, An Attribute Grammar lor the ida. IX, 511 pages. 1982. guages and programming.Edited by M. Niel- VII, 614 pages, 1982. 3. Hun, â Zimmermann. GAG: A Practical ', 156 pages. 1982. Springer-Verlag Berlin Heidelberg New York Tokyo Efficient Algorithms for Graphic Matroid Intersection and Parity s (Extended Abstract) algori by shorte impro Harold N.Gabow ' Matthias Stallmanu s Department of Computer Science Department of Computer Science O(n 1 University of Colorado North Carolina State University and c Boulder, CO 80309 Raleigh, NC 27695-8206 for s USA USA well- A Abstract matrc An algorithm for matmid intersection, baaed on the phase approach of Dinic for \ network flow and Hopcmft and Karp for matching, is presented. An implementation for the b graphic matmids uses time O(n1P m) if m is Of# fg n), and similar expressions indep otherwise. An implementation to find k edge-disjoint spanning trees on a graph uses eleme time O(VP nlP m) if m is 0(n lg n) and a similar expression otherwise; when m is main 0(fD I@) this improves the previous bound, 0(t? p2). hpmved algorithms for other undir problems are obtained, including maintaining a minimum spanning tree on a planar graph ( subject to changing edge coats, and finding shortest pairs of disjoint paths in a network. two, An algorithm for graphic matmid parity is presented that runs in time O(n m (a6 n). a pal This improves the previous bound of 0(n2 m). if an, The probl = 0, 1. Introduction. Matroid parity generalizes a broad class of combinatorial optimization problems that ! For i includes network flow and matching [La]. Yet it can still be solved efficiently [Lo,SG]. This paper presents more efficient algorithms for several cases of the parity problem. Section 2 develops a phase algorithm for matroid intersection, the "bipartite" parity 3. T problem. This generalizes the phase algorithms of Dinic for network flow, Hopcmft and Karp for matching, and Even and Tarjan for 0-1 network flow [D,HK,ETL It is shown inter that a phase algorithm for matroid intersection reduces to four matroid problems, the recei static-base/dynamic-base cycle/cocycle problems. Some of the results in Section 2 for 1 overlap recent work of Tovey and Trick [TT), and even more recently Cunningham [C]. inter The overlap (indicated precisely in Section 2) is not adequate to achieve the time bounds for I of this paper. equil An efficient implementation of the intersection algorithm for graphic matmids is presented in Sections 3-5. Section 3 gives an overview and timing analysis. The time is cone 0(n112 m) if m is O(n3fl Ig n). This is identical to the Hopcroft-Karp bound for matching, a special case of graphic matmid intersection. The four matroid problems Defu mentioned above make other cases more difficult. The time is O(n m213 1$13 n) if m is ¡1 a fl(n Ig n) and a similar expression otherwise. f Planar graphs can be handled more efficiently because of duality. Section 3 gives a f bound of 0(n3I2 fg n). The approach also gives an algorithm for maintaining a minimum all t spanning tree on a planar graph subject to changing edge costs. The time is 0(lg n) per update, improving the O(Ig2 n) bound of Frederickson IF]. ace Section 3 also givw an implementation of the intersection algorithm to find k Not6 edge-disjoint spanning trees on a graph. It uses time 0(i31? n1D m) if m is Q(n lg n) and that a similar expression otherwise. When m is O(kIl? nap) this improves the bound of folio O(* n2) due to Roskind and Tarjan [RT]. The, ' This work was supported in part by NSF Grant #MCS-8302648. 21s. Parity Section 4 solves the static-tree cocycle problem used in the graphic intersection algorithm. The solution also speeds an algorithm of Suurballe and Tarjan for finding shortest pairs of disjoint paths in a network [Su TI. The time bound is O(m + n Ig n), improved from 0(m lg^,^ n). Section 6 solves the dynamic-tree cocycle problem. mann Section 6 presents an efficient graphic matroid parity algorithm. The time bound is 1 Com~uterScience 0(n m If n), improving the bound of O(n2 m) of [SG]. In the parity problem the cycle a. State University and cocycle problems involve pairs of edges. This seems to make traditional techniques !7695-8206 for solving cycle and cocycle problems inapplicable. We reduce the problem to a well-studied problem of computational geometry, range searching. Many of the ideas of this paper apply to other matroids, such as job scheduling matroids [GT84] and linear matroids. We will discuss these extensions in a future paper. iroach of Dinic for We close this section with some terminology. The reader is assumed familiar with implementation for the basic notions of matroids (see, e.g., [A, La, W]). It e is an element and B a base (or similar expressions independent set), C(e,Sf denotes the fundamental cycle of e in B. The span of a set of H on a graph uses elements A is denoted q(A). If T C S are seta of elements then S / T denotes the ; when m is matroid restricted to S, with T contracted. A graphic matroid is derived from an ' ilgorithms for other undirected graph; its independent sets are the forests. on a planar graph Consider a matroid M over a set of elements E that is partitioned into blocks of size ~athsin a network. two, called parity pairs. Thus each element e has a mate, denoted 2, such that {e, 2) is time 0(n m If n). a parity pair. A matching M is an independent set consisting of parity pairs, i.e., e â M if and only if s  M. A maximum matching has the greatest number of pairs possible. The (cardinality) parity problem is to find a maximum matching. The matroid intersection problem is the "bipartite" version: M is the direct sum of matroids Mi on elements E', i = 0,1, and every parity pair contains one element from each matroid. T: ;ation problems that Sections 4-6 use these terms for a tree \T\ denotes the number of vertices in T. For edge w of T, v'a subtree is the tree of w containing v. 1 efficiently [Lo,SGL T - jarity problem. ie "bipartite" parity 3. The phane algorithm for matroid htenection. now, ~op~roftand This section derives results that are needed for a phase algorithm for matroid K,ET]. It is shown intersection. It concludes by sketching the algorithm. Some of the results have been itroid problems, the recently obtained using different methods. Tovey and' Trick [TT]derive a phase algorithm esults in Section 2 for polymatroidal network flow. This problem, which generalizes network flow and matroid ly Cunningham [C]. intersection, was introduced by Lawler and Martel [LM], who prove much of the theory eve the time bounds for the phase algorithm. Our Corollary 2.1 is similar to [TT]. Cunningham [C] derives equivalents of our Corollaries 2.1-2.2. graphic matroids is We begin with some facts that apply to the matroid parity problem. The basic lalysis. The time is concept is the augmenting path: >ft-Karp bound for r matroid problems Definition 2.1. An augmenting path for a matching M consists of distinct elements $I3 Iglls n) if m is , B, f M, 0 5 i 5 k, b,, 6. â M, 0 < i 5 k, such that the sets Mf=(M+\)+a,+a,- 6,-8 ,...- ti++(0$i5k),and Section 3 gives a Mi=(M+#,)+a,+a,-b,-8 +~,-~-b,(O<iS.b) staining a minimum ,... all have the same span, sp(M % \)- An diemating path for At is defined similarly, time is 0(lg n) per + + except that the last element may be a, (as in an augmenting path), or a, or b,. lgorithm to ficd k Note that in an augmenting path, Mf is a matching of rank IAfl + 2. In [SG] it is shown ' m is 0(n lg n) and that a nonmaximum matching has an augmenting path. This can be strengthened as ;be bound of follows. Theorem 2.1. In a matroid parity problem, let hi and N be matchings, with IN = IAfl + 2k Then there is a sequence of paths P, ,..., Pi such that Pi is an augmenting path for =M9PI9... 9~.l,q-MCN-M,qnMCM-N,andallpathsPi Suppose i Â¥ are disjoint. by induction ai Proof. For kl, modify N to a matching contained in M U N whose span includes '(e,+,) 5 i t 2, sp(fvf). Then use a swapping argument, as in [SG]. For k>1 use induction. ' Next supy ~~(ff~,~~).by The rest of thii section is restricted to the matroid intersection problem. Recall that in matroid intersection the ground set E is the disjoint union of qronnd sets Ei i = 0.1.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    12 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us