Professional Documents
Culture Documents
Cross2 Talk
Cross2 Talk
Mathias Weller1
1
Institut für Softwaretechnik und Theoretische Informatik
Technische Universität Berlin, Germany
1 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
2-Layer Planarization
Input: graph G, integer k
Question: ∃S ⊆ E s.t. |S | ≤ k & G − S is biplanar?
Example
2 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
2-Layer Planarization
Input: graph G, integer k
Question: ∃S ⊆ E s.t. |S | ≤ k & G − S is biplanar?
Example
2 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
2-Layer Planarization
Input: graph G, integer k
Question: ∃S ⊆ E s.t. |S | ≤ k & G − S is biplanar?
Example
Observation
G is biplanar ⇐⇒ G is a forest of caterpillars.
2 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
2-Layer Planarization
Input: graph G, integer k
Question: ∃S ⊆ E s.t. |S | ≤ k & G − S is a caterpillar forest?
Example
Observation
G is biplanar ⇐⇒ G is a forest of caterpillars.
2 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
2-Layer Planarization
Input: graph G, integer k
Question: ∃S ⊆ E s.t. |S | ≤ k & G − S is a caterpillar forest?
Example
2-claw
Observation
G is biplanar ⇐⇒ G is a forest of caterpillars
⇐⇒ G does not contain a 2-claw or cycle as subgraph.
2 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
2-Layer Planarization
Input: graph G, integer k
Question: ∃S ⊆ E s.t. |S | ≤ k & G − S is 2-claw- & cycle-free?
Example
2-claw
Observation
G is biplanar ⇐⇒ G is a forest of caterpillars
⇐⇒ G does not contain a 2-claw or cycle as subgraph.
2 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
Motivation
layered graph drawing (Sugyjama approach)
routing in VLSI layout
3 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
Previous Work
NP-hard for bipartite [Eades & Whitesides (TCS 131 (’94))]
polynomial on trees [Shahrokhi et al. (Siam J. Comput. 30 (’01))]
O (k )-vertex kernel, O (6k k + |G |)-time algorithm
[Dujmović et al. (Algorithmica 45 (’06))]
O (5.19276k k 2 + |G |)-time & O (3.562k k + |G |)-time algorithms
[Fernau (J. Graph Algorithms Appl. (’05))], [Suderman (PhD thesis (’05))]
O (f )-vertex kernel, O (6f (f + 1)|G |)-time algorithm
(f =feedback edge set number, f stronger than k )
[Uhlmann & W. (TAMC’10, to appear in TCS)]
3 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
Previous Work
NP-hard for bipartite [Eades & Whitesides (TCS 131 (’94))]
polynomial on trees [Shahrokhi et al. (Siam J. Comput. 30 (’01))]
O (k )-vertex kernel, O (6k k + |G |)-time algorithm
[Dujmović et al. (Algorithmica 45 (’06))]
O (5.19276k k 2 + |G |)-time & O (3.562k k + |G |)-time algorithms
[Fernau (J. Graph Algorithms Appl. (’05))], [Suderman (PhD thesis (’05))]
O (f )-vertex kernel, O (6f (f + 1)|G |)-time algorithm
(f =feedback edge set number, f stronger than k )
[Uhlmann & W. (TAMC’10, to appear in TCS)]
New Results
3.8f poly |G |-time algorithm based on Suderman
3 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
Notation
G
= G − all bridges
G ∗ = maximal 2-connected subgraph of G (“2-core”)
pendant tree = a component (tree) in G − E (G ∗ )
4 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
Notation
G
= G − all bridges
G ∗ = maximal 2-connected subgraph of G (“2-core”)
pendant tree = a component (tree) in G − E (G ∗ )
Reduced Instance
pendant trees constant size
degree-2-paths in G ∗ constant length
feedback set F { #leaves=2|F | { #(degG ∗ ≥ 3)-vertices=2|F |
4 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
Notation
G
= G − all bridges
G ∗ = maximal 2-connected subgraph of G (“2-core”)
pendant tree = a component (tree) in G − E (G ∗ )
Reduced Instance
pendant trees constant size
degree-2-paths in G ∗ constant length
feedback set F { #leaves=2|F | { #(degG ∗ ≥ 3)-vertices=2|F |
4 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
3-Cycle
5 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
CLAW0
5 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
CLAW0 CLAW1
5 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
CLAW0 CLAW1
CLAW2 CLAW3
5 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
CLAW0 CLAW1
CLAW2 CLAW3
6 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
6 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
Pitfalls
cannot branch on bridges
6 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
Pitfalls
cannot branch on bridges
6 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
Pitfalls
cannot branch on bridges
2 deletions { first deletion could make second edge a bridge
6 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
Pitfalls
cannot branch on bridges
2 deletions { first deletion could make second edge a bridge
6 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
6 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
6 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
Observation
{u, v } non-bridge { u has a neighbor w , v
that is connected to v via a path avoiding u
6 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
Observation
{u, v } non-bridge { u has a neighbor w , v
that is connected to v via a path avoiding u
6 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
More Problems
What if there are bridges in all branching-structures?
7 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
More Problems
What if there are bridges in all branching-structures?
7 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
More Problems
What if there are bridges in all branching-structures?
7 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
More Problems
What if there are bridges in all branching-structures?
7 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
More Problems
What if there are bridges in all branching-structures?
1 pendant trees
2 paths in G ∗ − G
7 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
More Problems
What if there are bridges in all branching-structures?
1 pendant trees
2 paths in G ∗ − G
first 3 pendants: always better to delete outside the pendant
7 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
More Problems
What if there are bridges in all branching-structures?
1 pendant trees
2 paths in G ∗ − G
first 3 pendants: always better to delete outside the pendant
{ Idea: mark “permanent” (exclude from branching)
7 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
More Problems
What if there are bridges in all branching-structures?
1 Y-graphs
2 paths in G ∗ − G
first 3 pendants: always better to delete outside the pendant
{ Idea: mark “permanent” (exclude from branching)
7 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
More Problems
What if there are bridges in all branching-structures?
1 Y-graphs (type A)
2 paths in G ∗ − G
(type B)
first 3 pendants: always better to delete outside the pendant
{ Idea: mark “permanent” (exclude from branching)
(from here on: “bridge” means “non-permanent bridge”)
7 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
More Problems
What if there are bridges in all branching-structures?
8 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
More Problems
What if there are bridges in all branching-structures?
8 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
More Problems
What if there are bridges in all branching-structures?
8 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
More Problems
What if there are bridges in all branching-structures?
More Problems
What if there are bridges in all branching-structures?
More Problems
What if there are bridges in all branching-structures?
9 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
More Problems
What if there are bridges in all branching-structures?
9 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
More Problems
What if there are bridges in all branching-structures?
9 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
More Problems
What if there are bridges in all branching-structures?
e1
v1
e2 b
9 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
More Problems
What if there are bridges in all branching-structures?
9 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
More Problems
What if there are bridges in all branching-structures?
9 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
More Problems
What if there are bridges in all branching-structures?
9 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
More Problems
What if there are bridges in all branching-structures?
9 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
More Problems
What if there are bridges in all branching-structures?
9 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
More Problems
What if there are bridges in all branching-structures?
9 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
More Problems
What if there are bridges in all branching-structures?
9 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
More Problems
What if there are bridges in all branching-structures?
10 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
10 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
10 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
x y
10 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
u
Observation
CLAWi 0 not applicable
{ only x and y can have degG
= 3
v
x y
10 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
u
Observation
CLAWi 0 not applicable
{ only x and y can have degG
= 3
v
x y
10 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
u
Observation
CLAWi 0 not applicable
{ only x and y and v can have degG ∗ = 3
v
x y
10 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
u
Observation
CLAWi 0 not applicable
{ only x and y and v can have degG ∗ = 3
v
Lemma
degG ∗ -2 paths: no Y-graphs { branch (1, 1, 1)
x y
10 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
u
Observation
CLAWi 0 not applicable
{ only x and y and v can have degG ∗ = 3
v
Lemma
degG ∗ -2 paths: no Y-graphs { branch (1, 1, 1)
x y
otherwise: optimal deletion in polynomial time
10 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
Conclustion
11 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
Conclustion
Open Question
adapt other branching rules by Suderman (replace CLAW3)
{ O (3.562f poly |G |) time?
11 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
Conclustion
Open Question
adapt other branching rules by Suderman (replace CLAW3)
{ O (3.562f poly |G |) time?
even better parameters:
11 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
Conclustion
Open Question
adapt other branching rules by Suderman (replace CLAW3)
{ O (3.562f poly |G |) time?
even better parameters:
feedback vertex set?
11 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
Conclustion
Open Question
adapt other branching rules by Suderman (replace CLAW3)
{ O (3.562f poly |G |) time?
even better parameters:
feedback vertex set?
multilayer planarization
11 / 12
Intro: 2-Layer Planarization Intro: Suderman Branching Dealing with Bridges Conclusion
Thank you
12 / 12