300 likes | 404 Views
Matching and Routing: Structures and Algorithms. Andr ás Sebő , CNRS, IMAG-Leibniz, Grenoble. x. V 0. x. Reaching with directed paths. X 0 V di-cut if x 0 X 0 and no leaving edge Proposition : x X 0 no (x 0 ,x) path V 0 :={x: x reachable from x 0 }.
E N D
Matching and Routing: Structures and Algorithms András Sebő, CNRS, IMAG-Leibniz, Grenoble
x V0 x Reaching with directed paths X0V di-cut if x0 X0and no leaving edge Proposition: x X0 no (x0,x) path V0:={x: x reachable from x0} Proposition V0 X0 di-cut X0. Thm : V0 is a di-cut. The Most Exclusive ! x0
+ - - + + + a - - b Bidirected Graphs { Defined by Edmonds, Johnson (‘70) to handle a general class of integer linear programs containing matchings and their generalizations and tractable with the samemethods. a bb {0,+1, -1, +2, -2}V , (a,bV, ,b {-1,1} ) +bif x=a=b a bb (x) = if x=ab, bif x=ba 0 if x{a,b} bidirected graph:G=(V,E),eEa,b,a,b:e=abb bidirected (a,bb) path : P E, eP e = abb. Then bb (b) is reachable from a(a).
- - + + How do the Paths Go ?If P is an (a,bb) path, then there exists anorder {e1,…,ep} of its edges so that for all i=1,…p {e1,…,ei} is a path Corollary: v P is reachable from a . Skew Transitivity Lemma: If (a,bb) path and (b-b,cg) path, then: either there is also an (a,cg) path, or both the (a,b-b), (bb,cg) paths exist.
x0 x0’ We proved in case x0 V+ \ V-, eg, if d(x0)=1 • x0 V+ \ V- (ii) V+ V- does not induce any useful edge. (iii) For a component C of G - V+ V- either C V+ V- & 1 useful edge entering C. or C V+ = C V- = & 0 ‘’ ‘’ ‘’ ‘’ x0- V+ \ V- V- \ V+ - - + - + - -- + x’0-
x0‘ It follows immediately for the general case that: • x0 V+ (ii) V+ V- does not induce any useful edge. (iii) For a component C of G - V+ V- either C V+ V- , x0C and 1 useful edge entering C, x0C and no “ “ “ or C V+ = C V- = and 0 useful …. x0
Remark: particular bidirected cuts (i) x0 X+ \ X - (ii) X:= X+ X- does not induce any useful edge. (iii) For a component C of G-X either C X+ X- & 1 useful edge entering C. or C X+ = C X- = and no “ “ “
Bidirected Cuts in General (X+ , X- ) , X+ , X- V is a bi-cut for x0-, if (i) x0 X+ (ii) X:= X+ X- does not induce any useful edge. (iii) For a component C of G-X either C X+ X- , x0C and 1 useful edge entering C, x0C and no “ “ “ or C X+ = C X- =
What do bi-cuts exclude ? Proposition: If (X+ , X- ) is a bi-cut for x0 , then x X+ there is no (x0- , x+) path, x X- there is no (x0- , x-) path. Proof : Choose x V, and P an (x0- , x) path, so that P is a counterexample, and P min … + + X-\X+ X+\X- - - + - + - -- V+:={vV: (x0- ,v+) path},V-:={vV: (x0- ,v-) path} Proposition V+ X+ , V- X- (X+ ,X- ) bi-cut
Theorem(bidirected structure) (V+ , V-)is a bi-cut. + What does a component of G - V+V- look like ? + V- \ V+ V+\ V- - - + - + - -- Proof : x0 V+ , since is an (x0-,x0+) path. If say e=a-b- is useful, a,bV+, let P (x0-,a+) path. Both e P and e P lead to a contradiction. Let e=p+r+ (pV- ) be a useful edge entering C. We show e is the only one and C V+ V- . C not reachable at all entirely +,- reachable
V- pp’ + + e trick: to switch the signs in a point does not change the accessibility of vV . Claim : V+r-(C)= V-r-(C) Enough: : x Vr-+(C), x V+ \ V- xV– If an (x0-,x-)-path enters last on e : DONE If an (x0-,x-)-path enters last on p’r’: contradiction in either case of the Skew Transitivity Lemma. + r + r’ x - +
u< dF < l , u< dF l , u dF < l , (l,u)-factors (l u) + parity constraints in some vertices Find F E with minimum deficiency, where def := {dF(v)-u(v): dF(v)>u(v)} + {l(v)-dF(v): dF(v)<l(v)} x0- F dF > u : + dF < l : - F
V+ \ V- V- \ V+ + - - + - + - -- Lemma: If one of the following statements hold, then F does not have minimum deficiency: a. x0 V+ V- b. xV+: dF(x)<u(x), and not dF(x)+1=u(x)=l(x) c.xV- :dF(x)>l(x), and not dF(x)-1=u(x)=l(x) Lovász’s structure theorem (containing Tutte’s existence theorem, Lovász’s minmax theorem for the deficiency): universal U, L is a ‘Tutte-set’. U: oversat L: undersat OPT: u=l and+-1 (+ odd) feasible
Max Cardinality Factors, Matchings max cardinality (l,u)-factor: min deficiency u-factor V+\ V- ={x0}TUTTE SET x0 V- V- is a stable set (avoided with +,+ loops).
orientations Again: u, l, (+ parity) : l din u x0- u< dout < l , dout > u : - dout < l : + u< dout l , u dout < l , Minmax theorems (Frank, S. Tardos) + structure theorem (best certificate)
The bipartite or network flow cases The odd components disappear if: l<u, or l=u=even, or the graph is bipartite. In this case bipartite matchings or network flows are sufficient. Direct algorithms based on alternating paths can mimic mfmc, eg: Thm:G=(A,B,E) bipartite,r(a)(aA)demands t(h) (hB) number of ressources in hour h. Feasible Y B uUr(u,Y) t(Y), where r(u,Y):=max{r(u)-|N(u)\Y|,0}. The general case is ‘1 floor higher’: ellipsoids, or blossoms, or structure algorithms …
Solution of Exercises 9,10 C(G)={x V(G): no red-red & nored-blue} A(G)={x V(G): no red-red & red-blue} Solution Exercise 9: V \ C(G) : red-red or red-blue • red-red: {xV(G): M x is uncovered} =: D(G) additional red-blue : neighbors of D (D neighbors of D) = V \ C(G) =A(G)
Conclusion about bidirected graphs First, in terms of matchings: Exercise 8: If A is a Tutte set, then from x0 - to xA there is no red-red alternating path - to xC, C even comp of G-A no red-red no red-blue C(G)={x V(G): no red-red & nored-blue} A(G)={x V(G): no red-red & red-blue}
Confusing: A(G) itself is not maximal among Tutte-sets A. (The reason is that it corresponds to V+ \ V- and not V+.) Gallai-Edmonds : A(G) is a Tutte-set. Proof : (V+, V-) is a bidirected cut. S. of Exercise 10: C(G) is max among all C: triv A(G) C(G) is max among all AC (where A is a Tutte-set and C the of even) , because there is no red-red path to AC , and A(G) C(G) is the set of all such vertices.
Conclusion about bidirected graphsand the way they can be applied Thm : (V+, V-) is a bidirected cut. (most excl) This certifies that other vertices are not reachable. Algorithmic proof: (ii) is not satisfied: useful edge induced by X+ X- (iii) ‘’ ‘’ ‘’ : two useful edges leaving a comp: new path by Skew Transitivity. Application: existence or max of subgraphs with constraints on degrees (bounds, parity, Orientation, etc.) Proof of optimality: 1.) Ex 11. 2.)minmax
x0 x0
Theorem: G bipartite, w: E {-1,1}, cons.,x0V Then | l (u) – l (v) | = 1 for all uvE, andfor allD D : d(D) contains 1 negative edge if x0 D0 0 negative edge if x0D Proof (Sketch): Induction with resp. to |V|. If l(b)=min {l(x) : x V} then Exercise 21 proves the statement for {b} D. Contract d(b). The graph remains cons, since if not, there is a 0 circuit through b with b , Apply Exercise 19, contradicting Exercise 21. ~Similarly, the distances do not change. Induction.
conservat. and upper bound for the distances • integer function is a potential (with center x0 ), if (i) p(x0)=0 (ii) | p (u) – p (v) | = 1 for all uvE, (iii) for all D D(p) : d(D) contains 1 negative edge if x0D0 0 negative edge if x0D Algorithm: INPUT: G,w,x0 TASK: Find the distances from x0 While the distances do not form a potential find a better path or a negative circuit.(Ref: Finding …)
Applications Method for solving (in parallel + structure of ) : - Min (weighted) matchings - planar disjoint paths (+ planar max cut, via holes, air transport, Ising model) - the Chinese Postman problem - Minimizing T-joins, T-cuts (including min paths) - weighted algorithms for these, since they can mimic the +-1 bipartite case. ref: A.S., Potentials in Undirected Graphs and Planar multiflows, SIAM J. Computing, March 1997, 582-603
Answers: The algorithm that finds distances from x0 is polynomial: O(n4). It does not know about ‘efficient labelling’. Advantages: - it finds a potential, and The Best one, which helps in some applications to integer mflows. - the ‘classical’ algorithm reduces eg cardinality postman to weighted matchings. - helps in ‘reading’ matching th, and leads to generalizing it to conservative graphs (postman, planar disjoint paths, etc.) – used eg for integer multiflows.
+ path from ij no +path … … X1 X2 Xk … … t1 tk t2 X1 X2 Xk … … t1 tk t2 G=(V,E) graph,TV, k:=|T|. Ref:Schrijver Comb. Opt. T-path: path with different endpoints in T. edge-Mader : max = Min + b1/2 +...+ bp/2 Mader-Structure (with L. Szegő, ‘03) For edge-Mader (simpler): Xi :={v V: opt T-path packing+pathonlyfromti} Follows from matroid matching or the ellipsoid method, but NO ‘NORMAL’ ALG !
Jump systems A jump system (Bouchet, Cunnigham ’93)is a set of integer vectors J so that for everyu,v J and step u+ei from u towards v, either u+ei J or there exists a step u+ei+ej J from u+ei towards J. Examples: matroid independent sets, bases. Degree sequences (B.C.): you have a proof according to Exercise 12 ! The covered vertices of T-path packings (with M. Sadli using Schrijver’s (cf TheBook) simple proof. Insight and generalization of results on graph factors:jump system intersection theorems. There are ‘holes’.