Download presentation
Presentation is loading. Please wait.
Published byDamon Blankenship Modified over 6 years ago
1
Algorithms for Finding Distance-Edge-Colorings of Graphs
Takehiro Ito Akira Kato Xiao Zhou Takao Nishizeki Tohoku University
2
Distance between two edges
# of edges in a shortest path between two edges Distance = 2
3
Distance between two edges
# of edges in a shortest path between two edges Distance = 1
4
Distance between two edges
# of edges in a shortest path between two edges Distance = 0
5
Distance-Edge-Coloring or l-Edge-Coloring
for a given bounded integer l, any two edges within distance l have different colors l = 1 Not 1-edge-coloring 1-edge-coloring with six colors
6
Distance-Edge-Coloring or l-Edge-Coloring
for a given bounded integer l, any two edges within distance l have different colors 0-edge-coloring ordinary edge-coloring l = 1 1-edge-coloring strong edge-coloring 1-edge-coloring with six colors
7
l-Edge-Coloring Problem
find an l-edge-coloring with min # of colors The ordinary edge-coloring problem is NP-hard The l-edge-coloring problem is NP-hard in general ? restricted class Partial k-trees
8
Class of Partial k-Trees
All Graphs k=O(1) Partial k-trees (bounded tree-width) k=2 Series-parallel outerplanar graph k=1 Trees Forests
9
Related Results on Partial k-Trees
(ordinary edge-coloring problem) Linear-time algorithm [Zhou et al. 1996] l = 1 (strong edge-coloring problem) Polynomial-time algorithm [Salavatiour 2004] ? l-edge-coloring problem
10
Our Results O( n a O(1) ) Partial k-Trees (k, l : constant)
Polynomial-time exact algorithm O( n a O(1) ) partial k-tree has an l-edge-coloring with a colors? n: # of vertices
11
Our Results O( n a O(1) ) 22(k+1)(l+1)+1 Partial k-Trees
(k, l : constant) Polynomial-time exact algorithm 22(k+1)(l+1)+1 = O(1) O( n a O(1) ) partial k-tree has an l-edge-coloring with a colors? n: # of vertices
12
Our Results O( n a O(1) ) Partial k-Trees (k, l : constant)
Polynomial-time exact algorithm O( n a O(1) ) partial k-tree has an l-edge-coloring with a colors? min # of colors a ≤ (# of edges) a = O(1) O(n) time n: # of vertices
13
Polynomial-time exact algorithm
Our Results Partial k-Trees Polynomial-time exact algorithm Planar Graphs Polynomial-time 2-approximation algorithm
14
Class of Partial k-Trees
All Graphs Planar Graph k=O(1) Partial k-trees (bounded tree-width) k=2 Series-parallel outerplanar graph k=1 Trees Forests
15
Polynomial-time exact algorithm
Our Results Partial k-Trees Polynomial-time exact algorithm Planar Graphs Polynomial-time 2-approximation algorithm
16
k-tree (recursive definition)
Partial k-Trees k-tree (recursive definition) 1 2 3 k+1 k 4 (k+1)-clique G : k-tree k-clique k v A graph obtained from G by adding a new vertex v and joining it with each of the k vertices is a k-tree. A complete graph with k+1 vertices is a k-tree.
17
1 2 4 3 Tree-decomposition node 1 4 2 3 4-clique 3-tree
18
Tree-decomposition 1 2 4 3 1 4 5 1 2 3 5 2 3 3-clique 3-tree
19
Tree-decomposition 1 2 4 3 1 4 6 6 4 3 2 1 2 3 5 2 3 5 3-tree
20
Tree-decomposition 3-tree 1 4 7 2 3 6 5 1 2 4 3 6 4 3 2 1 2 3 5 5 1 2
21
Tree-decomposition 3-tree 1 4 7 2 3 6 8 5 1 2 4 3 6 4 3 2 1 2 3 5 5 1
22
Tree-decomposition 3-tree 1 4 7 2 3 6 8 5 9 1 2 4 3 6 4 3 2 1 2 3 5 5
23
Tree-decomposition 3-tree 1 4 7 2 3 10 6 8 5 9 1 2 4 3 6 4 3 2 1 2 3 5
24
Tree-decomposition Partial k-Tree 3-tree a subgraph of k-tree 9 5 8 7
10 3 5 8 2 9 1 7 6 4 1 2 4 3 9 5 8 7 6 10 4 1 3 2 1 4 6 4 3 2 1 2 3 5 7 2 3 6 8 5 1 2 7 2 8 3 5 5 9 10 10 3 5 8 2 8 5 9 Partial k-Tree a subgraph of k-tree 3-tree
25
Tree-decomposition Partial 3-tree 1 4 7 2 3 6 8 5 9 10 1 4 2 3 1 2 3 5
26
Algorithm for Partial k-Trees
Dynamic Programming 10 3 5 8 2 9 6 4 1 7 leaves root
27
Corresponding Subgraphs
Algorithm for Partial k-Trees What should we store in the table for the problem ? DP table 9 5 8 10 3 2 7 1 2 8 3 5 1 7 DP table DP table Nodes of Tree-decomposition Corresponding Subgraphs
28
Corresponding Subgraphs
Algorithm for Partial k-Trees Tree-Decomposition Corresponding Subgraphs
29
Corresponding Subgraph
Algorithm for Partial k-Trees Tree-Decomposition Corresponding Subgraph
30
Corresponding Subgraph
Algorithm for Partial k-Trees store all colors which are assigned to edges with (distance from a vertex) ≦ l Tree-Decomposition Corresponding Subgraph
31
Algorithm for Partial k-Trees
store all colors which are assigned to edges with (distance from a vertex) ≦ l v2 v1 vk+1 v1 v2 … vk+1 color 1 l
32
Algorithm for Partial k-Trees
store all colors which are assigned to edges with (distance from a vertex) ≦ l v2 v1 vk+1 v1 v2 … vk+1 color 1 l …
33
Algorithm for Partial k-Trees
store all colors which are assigned to edges with (distance from a vertex) ≦ l v2 v1 vk+1 v1 v2 … vk+1 color 1 l … …
34
Algorithm for Partial k-Trees
store all colors which are assigned to edges with (distance from a vertex) ≦ l v2 v1 vk+1 v1 v2 … vk+1 color 1 l … … … … … … …
35
Algorithm for Partial k-Trees
store all colors which are assigned to edges with (distance from a vertex) ≦ l v2 v1 vk+1 v1 v2 … vk+1 color 1 l … … … … … … …
36
Algorithm for Partial k-Trees
store all colors which are assigned to edges with (distance from a vertex) ≦ l v2 v1 vk+1 v1 v2 … vk+1 colors 1 l … … … …
37
Algorithm for Partial k-Trees
store all colors which are assigned to edges with (distance from a vertex) ≦ l v2 v1 vk+1 v1 v2 … vk+1 colors 1 l … … … … … … … … … … … … …
38
v1 v2 vk+1 v1 v2 vk+1 exponential size l … 1 vk+1 v2 v1 l … 1 vk+1 v2
colors l … 1 vk+1 v2 v1 colors l … 1 vk+1 v2 v1 v1 v2 vk+1 v1 v2 vk+1 exponential size
39
v1 v2 vk+1 v1 v2 vk+1 Permutation same color pattern l … 1 vk+1 v2 v1
colors l … 1 vk+1 v2 v1 colors l … 1 vk+1 v2 v1 v1 v2 vk+1 v1 v2 vk+1 Permutation same color pattern
40
v1 v2 vk+1 v1 v2 vk+1 same color pattern l … 1 vk+1 v2 v1 l … 1 vk+1
colors l … 1 vk+1 v2 v1 colors l … 1 vk+1 v2 v1 v1 v2 vk+1 v1 v2 vk+1 same color pattern
41
v1 v2 vk+1 v1 v2 vk+1 Permutation same color pattern l … 1 vk+1 v2 v1
colors l … 1 vk+1 v2 v1 colors l … 1 vk+1 v2 v1 v1 v2 vk+1 v1 v2 vk+1 Permutation same color pattern
42
colors l … 1 vk+1 v2 v1 # of colors 1 2 v1 v2 vk+1
43
Algorithm for Partial k-Trees
2 l … 1 vk+1 other sets of { , } # v2 v1 2O(1) (k+1)(l+1) = O(1) a color pattern
44
color pattern: 2O(1) rows {0, 1, …, a}
Algorithm for Partial k-Trees 2 l … 1 vk+1 other sets of { , } # v2 v1 2O(1) color pattern: 2O(1) rows {0, 1, …, a}
45
Algorithm for Partial k-Trees
2 l … 1 vk+1 other sets of { , } # v2 v1 2 l … 1 vk+1 3 other sets of { , } # v2 v1 1 l … vk+1 2 other sets of { , } 4 # v2 v1 1 l … vk+1 2 other sets of { , } 3 # v2 v1 O( a O(1) ) 2O(1)
46
Corresponding Subgraphs
Algorithm for Partial k-Trees time O( a O(1) ) DP table 9 5 8 10 3 2 7 1 2 8 3 5 1 7 size O( a O(1) ) DP table size O( a O(1) ) DP table Nodes of Tree-decomposition Corresponding Subgraphs
47
Algorithm for Partial k-Trees
10 3 5 8 2 9 6 4 1 7 leaves root # of nodes = O(n) time O( a O(1) ) time O( n a O(1) )
48
Polynomial-time exact algorithm
Our Results Partial k-Trees Polynomial-time exact algorithm Planar Graphs Polynomial-time 2-approximation algorithm
49
Planar Graphs planar graph non-planar graph
50
2-Approx. Algorithm for Planar Graphs
Planar graph can be partitioned into layers
51
2-Approx. Algorithm for Planar Graphs
Planar graph can be partitioned into layers layer 1
52
2-Approx. Algorithm for Planar Graphs
Planar graph can be partitioned into layers layer 2
53
2-Approx. Algorithm for Planar Graphs
Planar graph can be partitioned into layers layer 3
54
2-Approx. Algorithm for Planar Graphs
Planar graph can be partitioned into layers
55
colorings of components can be found separately
2-Approx. Algorithm for Planar Graphs given planar graph G (l+2) layers G’ G’’ colorings of components can be found separately
56
2-Approx. Algorithm for Planar Graphs
(l+2)-outerplanar graph (l+2)-outerplanar graph G’ G’’
57
2-Approx. Algorithm for Planar Graphs
(l+2)-outerplanar graph (l+2)-outerplanar graph G’ G’’
58
2-Approx. Algorithm for Planar Graphs
(l+2)-outerplanar graphs partial (3l+5)-trees Poly.-time exact Algorithm (l+2)-outerplanar graph (l+2)-outerplanar graph G’ G’’ OPT(G’) colors OPT(G’’) colors
59
APPRO = OPT(G’) + OPT(G’’)
2-Approx. Algorithm for Planar Graphs given planar graph G G’ G’’ APPRO = OPT(G’) + OPT(G’’) OPT(G’) ≤ OPT(G) OPT(G’) colors OPT(G’’) ≤ OPT(G) OPT(G’’) colors
60
2-Approx. Algorithm for Planar Graphs
given planar graph G G’ G’’ APPRO = OPT(G’) + OPT(G’’) ≤ OPT(G) + OPT(G) APPRO = OPT(G’) + OPT(G’’) ≤ OPT(G) + OPT(G) = 2 OPT(G) OPT(G’) ≤ OPT(G) OPT(G’) colors OPT(G’’) colors OPT(G’’) ≤ OPT(G)
61
Conclusions Partial k-Trees Planar Graphs
Polynomial-time exact algorithm Polynomial-time 2-approximation algorithm It is easy to modify all algorithms so that it actually finds an l-edge-coloring.
62
END
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.