Matching and Routing: Structures and Algorithms András Sebő, CNRS, IMAG-Leibniz, Grenoble.

30
Matching and Routing: Structures and Algorithms András Sebő, CNRS, IMAG-Leibniz, Grenoble

Transcript of Matching and Routing: Structures and Algorithms András Sebő, CNRS, IMAG-Leibniz, Grenoble.

Matching and Routing: Structures and Algorithms

András Sebő,

CNRS, IMAG-Leibniz, Grenoble

Reaching with directed paths

X0 V di-cut if x0 X0 and no leaving edge

Proposition: x X0 no (x0,x) path

V0:={x: x reachable from x0}

x

x

V0

x0

Proposition V0 X0 di-cut X0.

Thm : V0 is a di-cut.

The Most Exclusive !

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 same methods.

a b {0,+1, -1, +2, -2}V , (a,bV, ,{-1,1} )

+if x=a=ba b (x) = if x=ab, if x=ba 0 if x{a,b}

bidirected graph: G=(V,E), eE a,b,,: e=ab

bidirected (a,bpath : P E, eP e = abThen b (b) is reachable from a (a).

{ - + + + a - - b

+ -

How do the Paths Go ?If P is an (a,bpath, 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,bpath and (b-,cpath, then:

either there is also an (acpath, or both the (a,b-), (b,cpaths exist.

--+ +

We proved in case x0 V+ \ V- , eg, if d(x0)=1

(i) 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-- - + - + - - -

x0-

x’0-

V- \ V+

x0’

+

It follows immediately for the general case that:

(i) x0 V+

(ii) V+ V- does not induce any useful edge.

(iii) For a component C of G - V+ V-

either C V+ V- ,

x0 C and 1 useful edge entering C,

x0 C and no “ “ “

or C V+ = C V- = and 0 useful ….

x0‘

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- ,

x0 C and 1 useful edge entering C,

x0 C 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

+ +

- - + - + - - -

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- .

Theorem(bidirected structure) (V+ , V- ) is a bi-cut.+ What does a component of G - V+ V- look like ?

V+ \ V- V- \ V+

entirely +,- reachableC not reachable at all

+

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.

p p’

rr’

+ +

+ +

x -+

eV-

(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-

dF < l : - dF > u : +

F

Fu< dF < l ,

u dF < l ,

u< dF l ,

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’.

- - + - + - - -+V+ \ V- V- \ V+OPT:

U: oversat L: undersat

u=l and+-1 (+ odd) feasible

Max Cardinality Factors, Matchings

x0

V+ \ V- = {x0 } TUTTE SET

max cardinality (l,u)-factor: min deficiency u-factor

V-

V- is a stable set (avoided with +,+ loops).

orientationsAgain: u, l, (+ parity) : l din u

x0-

dout < l : + dout > u : -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

uU r(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 & no red-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 & no red-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

x0

Theorem: G bipartite, w: E {-1,1}, cons.,x0V

Then | (u) – (v) | = 1 for all uvE, and for all

D D : (D) contains 1 negative edge if x0 D 0 0 negative edge if x0 DProof (Sketch): Induction with resp. to |V|.

If (b)=min {(x) : x V} then Exercise 21 proves the statement for {b} D.

Contract (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.

integer function is a potential (with center x0 ), if (i) (x0)=0

(ii) | (u) – (v) | = 1 for all uvE,

(iii) for all D D() : (D) contains

1 negative edge if x0 D 0 0 negative edge if x0 D

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 …)

conservat.

and upper

bound for

the distances

ApplicationsMethod 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.

G=(V,E) graph, T V, 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+path only from ti}

Follows from matroid matching or the ellipsoid method, but NO ‘NORMAL’ ALG !

t2t1 tk

…X1 X2 Xk

t2t1 tk

…X1 X2 Xk

+ path from ij no +path

Jump systemsA jump system (Bouchet, Cunnigham ’93) is a set of integer vectors J so that for every u,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 The Book) simple proof.

Insight and generalization of results on graph factors:jump system intersection theorems. There are ‘holes’.