On the Enumeration of Bipartite Minimum Edge Colorings Yasuko Matsui (Tokai Univ. JAPAN) Takeaki Uno (National Institute of Informatics, JAPAN)

Slides:



Advertisements
Similar presentations
Min-Max Relations, Hall’s Theorem, and Matching-Algorithms Graphs & Algorithms Lecture 5 TexPoint fonts used in EMF. Read the TexPoint manual before you.
Advertisements

Connectivity - Menger’s Theorem Graphs & Algorithms Lecture 3.
Covers, Dominations, Independent Sets and Matchings AmirHossein Bayegan Amirkabir University of Technology.
Max- coloring in trees SRIRAM V.PEMMARAJU AND RAJIV RAMAN BY JAYATI JENNIFER LAW.
More Efficient Generation of Plane Triangulations Shin-ichi Nakano Takeaki Uno Gunma University National Institute of JAPAN Informatics, JAPAN 23/Sep/2003.
Presented by Yuval Shimron Course
C&O 355 Mathematical Programming Fall 2010 Lecture 21 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A.
Algorithms and Networks
Midwestern State University Department of Computer Science Dr. Ranette Halverson CMPS 2433 CHAPTER 4 - PART 2 GRAPHS 1.
Lectures on Network Flows
Complexity 16-1 Complexity Andrei Bulatov Non-Approximability.
Coloring k-colorable graphs using smaller palettes Eran Halperin Ram Nathaniel Uri Zwick Tel Aviv University.
1 Discrete Structures & Algorithms Graphs and Trees: II EECE 320.
Introduction to Approximation Algorithms Lecture 12: Mar 1.
Matchings Lecture 3: Jan 18. Bipartite matchings revisited Greedy method doesn’t work (add an edge with both endpoints free)
Vertex Cover, Dominating set, Clique, Independent set
1 Bipartite Matching Lecture 3: Jan Bipartite Matching A graph is bipartite if its vertex set can be partitioned into two subsets A and B so that.
CSE 421 Algorithms Richard Anderson Lecture 4. What does it mean for an algorithm to be efficient?
CTIS 154 Discrete Mathematics II1 8.2 Paths and Cycles Kadir A. Peker.
Coloring Algorithms and Networks. Coloring2 Graph coloring Vertex coloring: –Function f: V  C, such that for all {v,w}  E: f(v)  f(w) Chromatic number.
Randomness in Computation and Communication Part 1: Randomized algorithms Lap Chi Lau CSE CUHK.
Exponential time algorithms Algorithms and networks.
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
Lecture 12-2: Introduction to Computer Algorithms beyond Search & Sort.
A Fast Algorithm for Enumerating Bipartite Perfect Matchings Takeaki Uno (National Institute of Informatics, JAPAN)
Fixed Parameter Complexity Algorithms and Networks.
C&O 355 Mathematical Programming Fall 2010 Lecture 19 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A.
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
Takeaki Uno Tatsuya Asai Yuzo Uchida Hiroki Arimura
Toward Constant time Enumeration by Amortized Analysis 27/Aug/2015 Lorentz Workshop for Enumeration Algorithms Using Structures Takeaki Uno (National Institute.
Foundations of Discrete Mathematics
Edge-disjoint induced subgraphs with given minimum degree Raphael Yuster 2012.
9.2: Graph Terminology. Special Simple Graphs Complete GraphsK 1,… CyclesC 3,… WheelsW 3,… N-cubesQ 1,… Complete bipartiteK 2,2,…
1 CS104 : Discrete Structures Chapter V Graph Theory.
1 The Price of Defense M. Mavronicolas , V. Papadopoulou , L. Michael ¥, A. Philippou , P. Spirakis § University of Cyprus, Cyprus  University of Patras.
An Efficient Algorithm for Enumerating Pseudo Cliques Dec/18/2007 ISAAC, Sendai Takeaki Uno National Institute of Informatics & The Graduate University.
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
New Algorithms for Enumerating All Maximal Cliques
1/24 Introduction to Graphs. 2/24 Graph Definition Graph : consists of vertices and edges. Each edge must start and end at a vertex. Graph G = (V, E)
CS223 Advanced Data Structures and Algorithms 1 Maximum Flow Neil Tang 3/30/2010.
Speeding Up Enumeration Algorithms with Amortized Analysis Takeaki Uno (National Institute of Informatics, JAPAN)
Matching Algorithms and Networks. Algorithms and Networks: Matching2 This lecture Matching: problem statement and applications Bipartite matching Matching.
Chapter 7 Dynamic Programming 7.1 Introduction 7.2 The Longest Common Subsequence Problem 7.3 Matrix Chain Multiplication 7.4 The dynamic Programming Paradigm.
CSE 421 Algorithms Richard Anderson Winter 2009 Lecture 5.
Exponential time algorithms Algorithms and networks.
C&O 355 Lecture 19 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A A A A A A A A A.
CSE 421 Algorithms Richard Anderson Autumn 2015 Lecture 5.
Introduction to Approximation Algorithms
Maximum Flow c v 3/3 4/6 1/1 4/7 t s 3/3 w 1/9 3/5 1/1 3/5 u z 2/2
Richard Anderson Lectures NP-Completeness
Minimum Spanning Tree 8/7/2018 4:26 AM
Algorithms and Networks
Lectures on Network Flows
Vertex Cover, Dominating set, Clique, Independent set
Computability and Complexity
CSE 421: Introduction to Algorithms
Modeling and Simulation NETW 707
Maximum Flow c v 3/3 4/6 1/1 4/7 t s 3/3 w 1/9 3/5 1/1 3/5 u z 2/2
Great Ideas in Computing Average Case Analysis
CSE838 Lecture notes copy right: Moon Jung Chung
Problem Solving 4.
Richard Anderson Autumn 2016 Lecture 5
Output Sensitive Enumeration
Algorithms (2IL15) – Lecture 7
Maximum Flow c v 3/3 4/6 1/1 4/7 t s 3/3 w 1/9 3/5 1/1 3/5 u z 2/2
Text Book: Introduction to algorithms By C L R S
Richard Anderson Lecture 5 Graph Theory
Richard Anderson Winter 2019 Lecture 5
Richard Anderson Autumn 2015 Lecture 6
Lecture 24 Vertex Cover and Hamiltonian Cycle
Presentation transcript:

On the Enumeration of Bipartite Minimum Edge Colorings Yasuko Matsui (Tokai Univ. JAPAN) Takeaki Uno (National Institute of Informatics, JAPAN)

Graph Theory Contents next ・ Problem ・ Our Results ・ Related Work ・ Previous Results ・ Konig’s Theorem ・ Covering Matching ・ Framework of our algorithm ・ How to enumerate covering matchings ・ How to find another covering matching ・ Algorithm & Complexity ・ Avoid Duplications ・ Analysis of Time Complexity ・ Analysis of Space Complexity ・ Main Theorem ・・

Graph Theory Problem Given: A bipartite graph G=(V(=V 1 ∪ V 2 ),E) with multiple edges. Find : All minimum edge colorings of G. next

Graph Theory Our Results We propose an algorithm for finding all minimum edge colorings of a bipartite graph. A simple polynomial delay algorithm. Amortized Time Complexity: O(n) per output Space Complexity: O(m+n) next

Graph Theory Related Work Finding an edge coloring of a bipartite graph G ’82 Cole & Hopcroft O(m log d + n log n log 2 d) ’82 Cole O(m log d + n log n log d) 2-3tree ’99 Rizzi O(m log d + n log n log d) ’99 Schrijver O(m d) ’01 Cole, Ost & Schirra O(m log d) splay tree ’01 Makino, Fujishige & Takabatake O(m log d + n log n log d) ’03 Takabatake O(m log d + n log n) n:|V|, m:|E|, d:max. degree of G next

Graph Theory Previous Results Enumerating edge colorings of a bipartite graph G ’94 Y.Matsui & T.Matsui O(m log d + md N) ’96 Y.Matsui & T.Matsui O(m log d + m log d N) Y.Matsui & Uno O(m log d + n N) Our algorithm can obtain an additional minimum edge coloring in O( n ). n:|V|, m:|E|, d:max. degree of G, N:# of minimum edge colorings of G next

Graph Theory Konig’s Theorem Theorem(Konig) 1 Any minimum edge coloring of a bipartite graph G uses d colors, where d is the maximum degree of G. next Corollary 2 Each matching of an edge coloring of a bipartite graph G covers all the maximum degree vertices of G. d(G)=4 max. degree

Graph Theory Covering Matching A covering matching M of G A matching of G, s.t. M covers all the maximum degree vertices of G. next def Enumerating minimum edge colorings of G by enumerating covering matchings of G

Graph Theory Framework of our algorithm Find a ll covering matching M, For each obtained matching M, Set G(:=G \ M). Enumerate edge colorings in G. Do these operations recursively unless G has no edge. next

Graph Theory How to enumerate covering matchings Construct a directed graph next s a covering matching M another covering matchings M 1 and M 2 Find a directed cycle on G’ by using the depth-first search

Graph Theory How to construct a directed graph Construct a directed graph G* In general, s : the max. degree vertex : the vertex which is covered by a covering matching : o.w. eiei next

Graph Theory How to find another covering matching Find a directed cycle on G* next eiei eiei eiei eiei

Graph Theory How to find another covering matching Modify an algorithm for enumerating bipartite matchings by Fukuda & T.Matsui next Given two matching M,M’(≠M) ∃ ? a matching M’’ (≠M,M’) All matchings includes e i and covers all the max.degree vetices. Find an edge f ∈ M ⊿ M’ (w.l.g. f ∈ M) ∃ ? a matching M’’ (≠M) s.t. f ∈ M’’ ∃ ? a matching M’’ (≠M’) s.t. f ∈ M’’ ◆ Construct two subproblems ◆ Repeat this procedure

Graph Theory Algorithm & Complexity Given: a bipartite graph G Find an edge coloring C of G O(m log d) Choose a covering matching M from C O(m) Construct a directed graph G* O(m) Find another covering matching M’,if exists O(m) Solve two subproblems recursively O(m) Find an edge coloring of C \ M’’, if exists another covering matching M’’ O(m log d) O(m log d + m log d N) time We can reduce the time complexity. O(m log d + nN) time n:|V|, m:|E|, d:max. degree of G, N:# of minimum edge colorings of G next

Graph Theory Avoid Duplications To avoid duplications, we fix colors of edges which incident to a specified max. degree vertex r. Each covering matching M i satisfies the following two conditions. (i) M i includes an edge e i which incidents to r.. (ii) M i covers all the max.degree vertices. ∈ ∈ ∈ ∈ e1e1 e2e2 e4e4 e3e3 e 1 e 2 e 3 e 4 one of max.degree vertex M1M1 M2M2 M3M3 M4M4 r next

Graph Theory Analysis of Time Complexity Lemma 3 Suppose that a given bipartite graph G is not a star andΔ(G)>2. For any covering matching M of G, there are 2 Δ-1 n edge colorings C which include M. ⇒ The computational time for finding an edge coloring C ≦ T(Δ(G) n log n / 2 Δ n ) next

Graph Theory Analysis of Time Complexity Lemma 4 The amortized computational time for finding all covering matchings which were included in an edge coloring = T( 1n log n/n + 2n log n / 2n + ・・・ + 2 Δ-1 n log n / 2 Δ-1 n ) = O(n) next

Graph Theory Analysis of Space Complexity Idea 1 Use a loop instead of generating a recursive call with respect to G* \ e. The depth of the recursive call is at most m+n. Idea 2 Use the minimum possible index edge e to partition the problem. O(m+n) memory next

Graph Theory Main Theorem Theorem 5 Our Algorithm enumerates all minimum edge colorings of a bipartite graph G=(V,E) with multiple edges in O(|V|N) time and O(|E|+|V|) space, where N is the number of minimum edge colorings of G.