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 Otimiza¸ c˜ ao Combinat´ oria 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
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
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
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
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
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
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 A 0 be the set of 0-arcs. If the subdigraph D 0 := ( V , A 0 ) 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
Chu and Liu’s algorithm Suppose then that D 0 contains no r -arborescence. Then there must be some vertex v which is not reachable from r in D 0 . Claim. D 0 contains a (directed) cycle. Proof. Let S the set of vertices reachable from r in D 0 . 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 D 0 . Let D C be the digraph obtained from D by contracting C to a single vertex v C and let c C the resulting cost function on D C . Orlando Lee – Unicamp Topics in Combinatorial Optimization
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 ( D C , c C ). Moreover, if B ′ is a minimum cost r -arborescence of ( D C , c C ) 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 ( D C , c C ) cannot larger than the minimum in ( D , c ). Let us show the converse. Let B ′ be a minimum cost r -arborescence of ( D C , c C ). Let ( u , v C ) the unique arc of B ′ entering v C 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 of 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
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 D 0 contains an r -arborescence B 4. then return B 5. else 6. let C be a cycle of D 0 B ′ ← ChuLiuMinArb ( D C , c C , r ) 7. extend B ′ to an r -arborescence B of D (see proof) 8. 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
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 of) r -arborescences of a digraph. (We will show that the system describing it is TDI.) Orlando Lee – Unicamp Topics in Combinatorial Optimization
Rooted connector Let D = ( V , A ) be a digraph in which every vertex is reachable from r ∈ V . Let P r -arb ( D ) := conv { χ B : B is an r -arborescence } . Let P ↑ r -arb ( D ) := P r -arb ( D ) + R A + . An r -connector is a subdigraph B of D in which every vertex is reachable from r . Therefore, P r -arb ( D ) = conv { χ B : B is an r -connector } . Orlando Lee – Unicamp Topics in Combinatorial Optimization
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 � r -set y X X : X is an ¯ � for every a ∈ A , s.a X : a ∈ δ in ( X ) y X � c ( 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
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 � r -set y X X : X is an ¯ � for every a ∈ A , s.a X : a ∈ δ in ( X ) y X � c ( 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 y X and each arc a belongs to at most c ( a ) r -cuts in C . Orlando Lee – Unicamp Topics in Combinatorial Optimization
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 ) � � r -set y X . X is an ¯ Proof. � c ( B ) = c ( a ) a ∈ B � � [ y X ] � a ∈ B X : a ∈ δ in ( X ) � | B ∩ δ in ( X ) | y X = X � y X � X is an ¯ r -set Orlando Lee – Unicamp Topics in Combinatorial Optimization
Complementary slackness We have the following optimality criteria (complementary slackness): (CS1) a ∈ B ⇒ c ( a ) = � X : a ∈ δ in ( X ) y X , | B ∩ δ in ( X ) | = 1. ⇒ (CS2) y X > 0 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 optimum c -packing. Orlando Lee – Unicamp Topics in Combinatorial Optimization
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
Recommend
More recommend