Topics in Combinatorial Optimization Orlando Lee – Unicamp 4 de junho 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
Independent sets A matroid is a pair M = ( E , I ) in which I ⊆ 2 E that satisfies the following properties: (I1) ∅ ∈ I . (I2) If I ∈ I and I ′ ⊆ I , then I ′ ∈ I . (I3) If I 1 , I 2 ∈ I and | I 1 | < | I 2 | , then there exists e ∈ I 2 − I 1 such that I 1 ∪ { e } ∈ I . (Independence augmenting axiom) We say that the members of I are the independent sets of M . Orlando Lee – Unicamp Topics in Combinatorial Optimization
Matroid intersection We have seen how to determine efficiently (via an independence oracle) a maximum basis (independent set) of a matroid. Let M 1 = ( E , I 1 ) and M 2 = ( E , I 2 ) be two matroids. We are interested in finding a maximum element I ∈ I 1 ∩ I 2 , that is, a maximum common independent set I of both matroids. We consider the unweighted version, in which we want to maximize | I | for I ∈ I 1 ∩ I 2 , and the weighted version in which given c : E �→ R we want to maximum c ( I ) for I ∈ I 1 ∩ I 2 . Let us describe some applications of matroid intersection. Orlando Lee – Unicamp Topics in Combinatorial Optimization
Partition matroids Recall the following definiton. Let E 1 , . . . , E t be a partition of a finite set E and let k 1 , . . . , k t be non-negative integers ( k i � | E i | ). Let I := { I ⊆ E : | I ∩ E i | � k i , i = 1 , . . . , t } . Then M = ( E , I ) is a matroid, called partition matroid. Orlando Lee – Unicamp Topics in Combinatorial Optimization
Matchings in bipartite graphs Let G = ( V , E ) be a bipartite graph with bipartition ( U 1 , U 2 ). For i = 1 , 2 let M i := ( E , I i ) be the matroid in which I ⊆ E is independent if each vertex of U i is covered by at most one edge. In other words, M i is a partition matroid in which we take the partition { δ ( u i 1 ) , . . . , δ ( u i n ) } of E where U i = { u i 1 , . . . , u i n } and an independent set can pick at most one element of each star. So a set of edges that is independent in both partition matroids must be a matching. Hence, a maximum common independent set of both matroids is a maximum matching in G . Orlando Lee – Unicamp Topics in Combinatorial Optimization
Colored trees Let G = ( V , E ) be a graph and let E 1 , . . . , E k be a partition of E . Refer to each E i as a color and so G is k -edge-colored (arbitrarily). We want to find a (non-necessarily spanning) tree with all edges having distinct colors. Such a tree is a common independent set of the graphic matroid M ( G ) and the partition matroid induced by E 1 , . . . , E k (in which each independent set can pick at most one edge of each color). Orlando Lee – Unicamp Topics in Combinatorial Optimization
Arborescences Let D = ( V , A ) be a digraph with V = { v 1 , . . . , v n } and δ in ( v 1 ) = ∅ . Let N the partition matroid induced by the partition { δ in ( v 2 ) , . . . , δ in ( v n ) } of A in which each independent set can pick at most one arc of each in-star. So a spanning v 1 -arborescence in D (assuming that it exists) is a maximum common independent of N and the graphich matroid of the underlying graph of G . Orlando Lee – Unicamp Topics in Combinatorial Optimization
Edmonds’ matroid intersection theorem Theorem. (Edmonds, 1970) Let M 1 = ( E , r 1 ) and M 2 = ( E , r 2 ) be two matroids. Then the maximum size of a common independent set of M 1 and M 2 is equal to X ⊆ E ( r 1 ( X ) + r 2 ( E \ X )) . min To see that max � min let I be a common independent set and let X be an arbitrary subset of E . Then | I | = | I ∩ X | + | I \ X | � r 1 ( X ) + r 2 ( E \ X ) . We show that max � min by describing an algorithm. Orlando Lee – Unicamp Topics in Combinatorial Optimization
Oracle Let I i denote the collection of independent sets of M i , for i = 1 , 2. We assume that each matroid is given by an oracle that given as input an independent set I and a element x ∈ E − I , answer whether I + x is independent or not, and in the latter case, the oracle returns the fundamental circuit C ( I , x ). It is easy to construct such an oracle by using an independence oracle, right? Orlando Lee – Unicamp Topics in Combinatorial Optimization
Auxiliary lemma Lemma. (Simultaneous exchange) Let x 1 , . . . , x k be elements of an independent set I of a matroid M and let y 1 , . . . , y k ∈ E − I such that I + y i is dependent for i = 1 , . . . , k . Suppose that each x i ∈ C ( I , y i ) but x i �∈ C ( I , y j ) whenever j < i . Then I − { x 1 , . . . , x k } ∪ { y 1 , . . . , y k } is independent in M . Proof. We prove by induction on k . For k = 1, the result is obvious. So assume that k � 2 and the result holds for k − 1. By hypothesis, the set I ′ := I − x k + y k is independent, and I ′ + y i ( i � k − 1) contains C ( I , y i ), and hence, C ( I ′ , y i ) = C ( I , y i ). Therefore, I ′ along with { x 1 , . . . , x k − 1 } and { y 1 , . . . , y k − 1 } satisfy the hypotheses and by induction we have that I ′ − { x 1 , . . . , x k − 1 } ∪ { y 1 , . . . , y k − 1 } is independent. Orlando Lee – Unicamp Topics in Combinatorial Optimization
Matroid intersection algorithm We will describe an algorithm that finds a common independent set I and a subset X ⊆ E for which r 1 ( X ) = | I ∩ X | r 2 ( E \ X ) = | I \ X | and whence the result follows. The algorithm consists of at most | E | phases. It starts with any common independent set I (such as the empty set) . In each phase, the algorithm either finds a common independent I ′ for which | I ′ | = | I | + 1 (and go to the next phase) or finds X as above and halts. Orlando Lee – Unicamp Topics in Combinatorial Optimization
Phase Let I be a common independent set. Let E 1 := { e ∈ E − I : I + e ∈ I 1 } and E 2 := { e ∈ E − I : I + e ∈ I 2 } . Note that if e ∈ E 1 ∩ E 2 then I + e is a common independent set and the phase ends. So suppose that E 1 ∩ E 2 = ∅ . Orlando Lee – Unicamp Topics in Combinatorial Optimization
Phase – auxiliary digraph For i = 1 , 2 let C i ( I , e ) denote the fundamental circuit (if any) of I + e in M i . Define the auxiliary digraph D M 1 , M 2 ( I ) whose vertex-set is E and whose arc-set consists of the union of the following sets: { ( u , v ) : u ∈ E − ( I ∪ E 1 ) , v ∈ I , v ∈ C 1 ( I , u ) } and { ( x , y ) : x ∈ I , y ∈ E − ( I ∪ E 2 ) , x ∈ C 2 ( I , y ) } . The algorithm uses breadth-first search to compute the set X of vertices that are reachable from E 2 . We have two cases. Orlando Lee – Unicamp Topics in Combinatorial Optimization
Phase Case 1: E 1 ∩ X = ∅ . Since no arc leaves X , the fundamental circuit C 1 ( I , u ) in M 1 of each u ∈ X − I is contained in X . We claim that I ∩ X is a maximal independent subset of X in M 1 . Suppose for a contradiction that there exists u ∈ X − I such that ( I ∩ X ) + u is independent in M 1 . Because of the hypothesis of the case, we have that I + u is dependent and so some element of C 1 ( I , u ) lies in E − X , which is a contradiction. So r 1 ( X ) = r 1 ( X ). Similarly, C 2 ( I , y ) is contained in E − X for each y ∈ E − ( I ∪ X ). We claim that I \ X is a maximal independent subset of E \ X in M 2 . Suppose for a contradiction that there exists y ∈ E \ X such that ( I \ X ) + y is independent in M 2 . Since E 2 ⊆ X , we have that ( I \ X ) + y is dependent in M 2 and so some element of C 2 ( I , y ) lies in X , which is a contradiction. So r 2 ( E \ X ) = r 2 ( I \ X ). Orlando Lee – Unicamp Topics in Combinatorial Optimization
Phase Case 2: E 1 ∩ X � = ∅ . So there exists a E 2 E 1 -path P and it is a shortest one. Let I ′ := I △ V ( P ). Note that I ′ is larger than I because D ( I ) is bipartite with I being one of the color classes. So it remains to show that I ′ is a common independent set. We only prove that I ′ is independent in M 1 . The proof that I ′ is independent in M 2 is analogous. Let y 1 , x 1 , y 2 , x − 2 , . . . , y k , x k , z denote the vertices of P traversed in this order with y 1 ∈ E 2 and z ∈ E 1 . Let I ′′ := I + z . Now I ′′ , x 1 , . . . , x k , y 1 , . . . , y k satisfy the hypotheses of the Simultaneous Exchange Lemma for M 1 because P is a shortest path. Hence, the Lemma implies that I ′ = I − { x 1 , . . . , x k } ∪ { y 1 , . . . , y k } is independent in M 1 . From the above comments, it follows that the described algorithm returns I and X as desired. So the theorem is proved. Orlando Lee – Unicamp Topics in Combinatorial Optimization
Recommend
More recommend