Topics in Combinatorial Optimization Orlando Lee Unicamp 15 de - - PowerPoint PPT Presentation

topics in combinatorial optimization
SMART_READER_LITE
LIVE PREVIEW

Topics in Combinatorial Optimization Orlando Lee Unicamp 15 de - - PowerPoint PPT Presentation

Topics in Combinatorial Optimization Orlando Lee Unicamp 15 de abril de 2014 Orlando Lee Unicamp Topics in Combinatorial Optimization Agradecimentos Este conjunto de slides foram preparados originalmente para o curso T opicos de


slide-1
SLIDE 1

Topics in Combinatorial Optimization

Orlando Lee – Unicamp 15 de abril de 2014

Orlando Lee – Unicamp Topics in Combinatorial Optimization

slide-2
SLIDE 2

Agradecimentos

Este conjunto de slides foram preparados originalmente para o curso T´

  • picos de Otimiza¸

c˜ ao Combinat´

  • ria no primeiro

semestre de 2014 no Instituto de Computa¸ c˜ ao da Unicamp. Preparei os slides em inglˆ es simplesmente porque me deu vontade, mas as aulas ser˜ ao em portuguˆ es (do Brasil)! Agradecimentos especiais ao Prof. M´ ario Leston Rey. Sem sua ajuda, certamente estes slides nunca ficariam prontos a tempo. Qualquer erro encontrado nestes slide ´ e de minha inteira responsabilidade (Orlando Lee, 2014).

Orlando Lee – Unicamp Topics in Combinatorial Optimization

slide-3
SLIDE 3

Arborescences

Let D = (V , A) be a digraph and let r ∈ V be a designated root. An r-arborescence of D is a connected subdigraph B of D such that: (a) r has indegree zero in B, and (b) v has indegree one in B for every v ∈ V − {r}. Equivalently, an r-arborescence is a directed spanning tree rooted at r (Exercise). We say that a nonempty set X is an ¯ r-set if X ⊆ V − {r}. In this case we say that δin(X) is an r-cut.

Orlando Lee – Unicamp Topics in Combinatorial Optimization

slide-4
SLIDE 4

Arborescences

Equivalently, an r-arborescence of D is a minimal subdigraph B of D such that |δin

B (X)| ≥ 1

for every ¯ r-set X. Equivalently, an r-arborescence is a minimal subdigraph of D that intersects every r-cut.

  • Lemma. A digraph D contains an r-arborescence if and only if

there exists an rv-path in D for every v ∈ X − {r}.

Orlando Lee – Unicamp Topics in Combinatorial Optimization

slide-5
SLIDE 5

MInimum cost arborescences

We usually make no distinction between an r-arborescence B and its arc set A(B). Suppose we are given a cost function c : A → R+. We define the cost of B as c(B) =

a∈B c(a).

We are interested in the following problem. MinCost Arborescence Problem. Given a digraph D = (V , A) be in which every vertex is reachable from a designated root r ∈ V and a cost function c : A → R+, find a minimum cost r-arborescence B in (D, c). Why can we always assume that c 0?

Orlando Lee – Unicamp Topics in Combinatorial Optimization

slide-6
SLIDE 6

Minimum cost arborescence

MinCost Arborescence Problem. Given a digraph D = (V , A) in which every vertex is reachable from a designated root r ∈ V and a cost function c : A → R+, find a minimum cost r-arborescence B in (D, c). This problem generalizes the following problems: (a) Shortest st-path problem (add an arc (t, v) of cost zero for each vertex v) and (b) Minimum spanning tree problem (replace each edge e by two oppositely directed arcs, each with cost equal to the cost of e).

Orlando Lee – Unicamp Topics in Combinatorial Optimization

slide-7
SLIDE 7

Chu and Liu’s algorithm

We begin presenting Chu and Liu’s algorithm (1965). First note that we can assume that there exists no arc entering r in D. Consider the following operation: DecreaseArcs(c, v)

  • 1. Let α ← min{c(a) : a ∈ δin(v)}
  • 2. Let c′ ← c − αχδin(v)
  • 3. return c′

Namely, it decreases the cost of each arc entering v by α units while mantaining the costs non-negative and zeroing at least one

  • arc. Note that this decreases the cost of any r-arborescence by α

units.

Orlando Lee – Unicamp Topics in Combinatorial Optimization

slide-8
SLIDE 8

Chu and Liu’s algorithm

  • Lemma. Let (D, c′) be the result of an application of

DecreaseArcs to some vertex of (D, c). Then B is a minimum cost r-arborescence of (D, c) if and only B is a minimum cost r-arborescence of (D, c′). So we can apply DecreaseArcs(c, v) to each vertex v. In the resulting digraph (D, c), there exists at least an arc of zero cost entering each vertex distinct from r. Call such arcs 0-arcs. Let A0 be the set of 0-arcs. If the subdigraph D0 := (V , A0) contains an r-arborescence B, then B is a minimum cost r-arborescence of the original digraph (c 0).

Orlando Lee – Unicamp Topics in Combinatorial Optimization

slide-9
SLIDE 9

Chu and Liu’s algorithm

Suppose then that D0 contains no r-arborescence. Then there must be some vertex v which is not reachable from r in D0.

  • Claim. D0 contains a (directed) cycle.
  • Proof. Let S the set of vertices reachable from r in D0. So V − S

is nonempty and no 0-arcs leaves S in D. Since there exists a 0-arc entering each vertex distinct from r, then the subdigraph induced by V − S must contain a cycle. Let C be a cycle of D0. Let DC be the digraph obtained from D by contracting C to a single vertex vC and let cC the resulting cost function on DC.

Orlando Lee – Unicamp Topics in Combinatorial Optimization

slide-10
SLIDE 10

Chu and Liu’s algorithm

  • Claim. The cost of a minimum r-arborescece of (D, c) is equal to

the cost of a minimum r-arborescence of (DC, cC). Moreover, if B′ is a minimum cost r-arborescence of (DC, cC) then B′ can be extended to a minimum cost r-arborescence of (D, c).

  • Proof. By contracting the arcs of C that lie in an optimum

solution of (D, c), we have that the minimum in (DC, cC) cannot larger than the minimum in (D, c). Let us show the converse. Let B′ be a minimum cost r-arborescence of (DC, cC). Let (u, vC) the unique arc of B′ entering vC and let a = (u, v) be the corresponding original arc in D (so v ∈ V (C)). Let F be the subset of A corresponding to the arcs of B′. Let P be the subpath

  • f C starting at v. Since all arcs of P are 0-arcs, B := B′ ∪ P is an

r-arborescence of (D, c) with the same cost of B′.

Orlando Lee – Unicamp Topics in Combinatorial Optimization

slide-11
SLIDE 11

Chu and Liu’s algorithm

ChuLiuMinArb(D, c, r) ⊲ No arc enters r

  • 1. for each v ∈ V − {r} do

2. c ← DecreaseArcs(c, v)

  • 3. if D0 contains an r-arborescence B

4. then return B 5. else 6. let C be a cycle of D0 7. B′ ← ChuLiuMinArb(DC, cC, r) 8. extend B′ to an r-arborescence B of D (see proof) 9. return B

  • Theorem. Given a digraph D = (V , A) in which every vertex is

reachable from r ∈ V and a cost function c : A → R+, Algorithm ChuLiuMinArb returns a minimum cost r-arborescence in polynomial time.

Orlando Lee – Unicamp Topics in Combinatorial Optimization

slide-12
SLIDE 12

Chu and Liu’s algorithm

Consult Frank’s book (p. 108–109) to see a nonrecursive version of Chu and Liu’s algorithm. Now we are going to describe another algorithm for solving the MinCost Arborescence problem. It is a slight modification of Chu and Liu’s algorithm and also avoids contraction of cycles. As a byproduct we will obtain a complete description of the dominant of the polytope generated by all the (incidence vectors

  • f) r-arborescences of a digraph. (We will show that the system

describing it is TDI.)

Orlando Lee – Unicamp Topics in Combinatorial Optimization

slide-13
SLIDE 13

Rooted connector

Let D = (V , A) be a digraph in which every vertex is reachable from r ∈ V . Let Pr-arb(D) := conv{χB : B is an r-arborescence}. Let P↑

r-arb(D) := Pr-arb(D) + RA +.

An r-connector is a subdigraph B of D in which every vertex is reachable from r. Therefore, Pr-arb(D) = conv{χB : B is an r-connector}.

Orlando Lee – Unicamp Topics in Combinatorial Optimization

slide-14
SLIDE 14

Primal-dual formulation

Consider the following LP problem: min

  • a∈A c(a)x(a)

s.a x(δ(X)) 1 for every ¯ r-set X, x(a) 0 for every a ∈ A. and its dual: max

  • X:X is an ¯

r-set y X

s.a

  • X:a∈δin(X ) y X c(a)

for every a ∈ A, y X 0 for every ¯ r-set X. Every {0, 1}-solution x of the LP corresponds to an r-connector. In particular, if c 0, then an optimum {0, 1}-solution corresponds to an r-arborescence.

Orlando Lee – Unicamp Topics in Combinatorial Optimization

slide-15
SLIDE 15

Primal-dual formulation

Consider the following LP problem: min

  • a∈A c(a)x(a)

s.a x(δ(X)) 1 for every ¯ r-set X, x(a) 0 for every a ∈ A. and its dual: max

  • X:X is an ¯

r-set y X

s.a

  • X:a∈δin(X ) y X c(a)

for every a ∈ A, y X 0 for every ¯ r-set X. Every integral dual solution y of the dual LP corresponds to a collection of r-cuts C such that each r-cut δin(X) appears in C with multiplicity yX and each arc a belongs to at most c(a) r-cuts in C.

Orlando Lee – Unicamp Topics in Combinatorial Optimization

slide-16
SLIDE 16

Weak duality theorem

For shortness, we call a dual solution y a c-packing.

  • Lemma. Let B an r-arborescence and y a c-packing. Then

c(B)

X is an ¯ r-set y X.

Proof. c(B) =

  • a∈B

c(a)

  • a∈B

[

  • X:a∈δin(X)

y X] =

  • X

|B ∩ δin(X)|y X

  • X is an ¯

r-set

y X

Orlando Lee – Unicamp Topics in Combinatorial Optimization

slide-17
SLIDE 17

Complementary slackness

We have the following optimality criteria (complementary slackness): (CS1) a ∈ B ⇒ c(a) =

X:a∈δin(X) y X,

(CS2) y X > 0 ⇒ |B ∩ δin(X)| = 1. If B is an r-arborescence and y is a c-packing that satisfy (CS1) and (CS2) then B is a minimum cost r-arborescence and y is an

  • ptimum c-packing.

Orlando Lee – Unicamp Topics in Combinatorial Optimization

slide-18
SLIDE 18

Fulkerson-Frank algorithm

The algorithm consists of two phases. Phase 1. the algorithm constructs y in a greedy manner. (due to Fulkerson) Phase 2. the algorithm constructs B in a greedy manner. (due to Frank)

Orlando Lee – Unicamp Topics in Combinatorial Optimization

slide-19
SLIDE 19

Phase One

This phase modifies c′ (= c at first) at each iteration. A zero arc is an arc a such that c′(a) = 0. Let A0 denote the set of zero arcs and D0 := (V , A0). Note that these definitions depend on c′ but for simplicity, we leave it implicit. Phase1(D, c) ⊲ no arc enters r

  • 1. c′ ← c
  • 2. while D0 contains no r-arborescence do

3. let X be a minimal ¯ r-set such that A0 ∩ δin(X) = ∅ 4. let y X := min{c′(a) : a ∈ δin(X)} 5. c′ ← c′ − yXχδin(X )

  • 6. return (D, c′, y)

Clearly the returned y is a c-packing.

Orlando Lee – Unicamp Topics in Combinatorial Optimization

slide-20
SLIDE 20

How to find X is line 3 of Phase1?

  • Lemma. Let X an ¯

r-set. Then X is a minimal ¯ r-set such that A0 ∩ δin(X) = ∅ if and only if X is a strongly connected component of D0 with no entering arcs.

  • Proof. Note that if every proper subset of X has an entering

zero-arc, then the subdigraph of D0 induced by X is strongly

  • connected. Furthermore, since X has no entering arc, X must be a

strongly connected component of D0. The converse is obvious. So we can find X by using an algorithm for finding the strongly connected components of D0. This can be done using depth-first search.

Orlando Lee – Unicamp Topics in Combinatorial Optimization

slide-21
SLIDE 21

Phase Two

Phase2(D, c′) ⊲ no arc enters r

  • 1. B ← ∅, S ← {r}
  • 2. while B is not an r-arborescence do

3. choose the arc a = (u, v) ∈ A0 ∩ δout(S) which became zero earliest in Phase 1 4. B ← B ∪ {a} 5. S ← S ∪ {v}

  • 6. return B

Clearly B and y satisfy (CS1) since B contains only zero arcs. (Right?)

Orlando Lee – Unicamp Topics in Combinatorial Optimization

slide-22
SLIDE 22

The algorithm

FFMinArb(D, c)

  • 1. (D, c′, y) ← Phase1(D, c)
  • 2. B ← Phase2(D, c′)
  • 3. return B, y

Correctness: We have shown that y is a c-packing and B is an r-arborescence that satisfy (CS1). It remains to show that satify (CS2).

Orlando Lee – Unicamp Topics in Combinatorial Optimization

slide-23
SLIDE 23

Correctness

  • Lemma. B and y satisfy (CS2).
  • Proof. Let X be an ¯

r-set with y X > 0. We must prove that only

  • ne arc of B enters X. Suppose for a contradiction that

|B ∩ δin(X)| ≥ 2. So at some iteration of Phase 2, the partial arborescence B′ contained exactly one zero arc entering X and a new arc a ∈ δin(X) is added to B′. Let S denote the set of vertices of B′ in this iteration. Since some zero arc already enters X, S ∩ X = ∅.

Orlando Lee – Unicamp Topics in Combinatorial Optimization

slide-24
SLIDE 24

Correctness

S a X Moment in which a was added to B. Some arc of B already entered X. So S ∩ X = ∅.

Orlando Lee – Unicamp Topics in Combinatorial Optimization

slide-25
SLIDE 25

Correctness

S a a′ X Consider the moment in which y X became positive in Phase 1. By the choice rule, no zero arc entered X but every proper subset X ′ = ∅ of X had a entering zero arc. In particular, there was some zero arc a′ entering X − S and not entering X.

Orlando Lee – Unicamp Topics in Combinatorial Optimization

slide-26
SLIDE 26

Correctness

S a a′ X Thus a and a′ both leave S and none of them belongs to B at this

  • moment. However, a′ became zero before a, which contradicts the

fact that in Phase 2 the arc a was chosen instead of a′.

Orlando Lee – Unicamp Topics in Combinatorial Optimization

slide-27
SLIDE 27

Consequences

  • Theorem. Given a digraph D = (V , A) in which every vertex is

reachable from r ∈ V and a cost function c : A → R+, Algorithm FFMinArb returns a minimum cost r-arborescence and a maximum c-packing y in polynomial time. Furthermore, if c is integral, then y is integral.

  • Corollary. Let D = (V , A) be a digraph and let r ∈ V . Then the

system x(δ(X)) 1 for every ¯ r-set X, x(a) 0 for every a ∈ A. is TDI. Moreover, it determines P↑

r-arb(D).

Orlando Lee – Unicamp Topics in Combinatorial Optimization

slide-28
SLIDE 28

Consequences

  • Corollary. Let D = (V , A) be a digraph in which every vertex is

reachable from r ∈ V and let c : A → Z+. Then the minimum cost of an r-arborescence is equal to the maximum size of a collection C of r-cuts such that each arc a belongs to at most c(a) elements of C.

Orlando Lee – Unicamp Topics in Combinatorial Optimization

slide-29
SLIDE 29

Question

  • Exercise. The argument used in the proof of correctness of

FFMinArb requires that we refer to certain instants in the execution of the algorithm (Phase 1 and Phase 2). This is somewhat cumbersome in my opinion. Find (and prove) a nice invariant (maybe more than one) that implies the desired result without resorting to such tricks. . .

Orlando Lee – Unicamp Topics in Combinatorial Optimization

slide-30
SLIDE 30

References

You can find more information on the polytopes of arborescences and branchings in Schijver’s book.

  • A. Schrijver, Combinatorial Optimization, Vol. B, Springer.

(chapter 52)

  • A. Frank, Connections in Combinatorial Optimization, Oxford.

(pages 108–110 and 392–394)

Orlando Lee – Unicamp Topics in Combinatorial Optimization