You are on page 1of 80

Introduction and Motivation Data Reduction Rules Conclusion

Two-Layer Planarization
Parameterized by Feedback Edge Set

Johannes Uhlmann Mathias Weller

Friedrich-Schiller-Universität Jena
Institut für Informatik
Germany

November 13, 2010

1 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Biplanar Graphs

Definition
A graph is called biplanar if it can be drawn in two layers without
edge crossings (edges drawn as line segments).

Example

2 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Two-Layer Planarization

Two-Layer Planarization (2LP)


Input: A graph G = (V , E ) and an integer k ≥ 0.
Question: Is there an E 0 ⊆ E with |E 0 | ≤ k such that (V , E \ E 0 )
is biplanar?

3 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Two-Layer Planarization

Two-Layer Planarization (2LP)


Input: A graph G = (V , E ) and an integer k ≥ 0.
Question: Is there an E 0 ⊆ E with |E 0 | ≤ k such that (V , E \ E 0 )
is biplanar?

Example

3 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Two-Layer Planarization

Two-Layer Planarization (2LP)


Input: A graph G = (V , E ) and an integer k ≥ 0.
Question: Is there an E 0 ⊆ E with |E 0 | ≤ k such that (V , E \ E 0 )
is biplanar?

Example

3 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Two-Layer Planarization

Two-Layer Planarization (2LP)


Input: A graph G = (V , E ) and an integer k ≥ 0.
Question: Is there an E 0 ⊆ E with |E 0 | ≤ k such that (V , E \ E 0 )
is biplanar?

Example

3 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Biplanar Graphs and Caterpillars

Folklore
A graph is biplanar ⇐⇒ it is a forest of caterpillars.

4 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Biplanar Graphs and Caterpillars

Folklore
A graph is biplanar ⇐⇒ it is a forest of caterpillars.

Example

v1 v2 v3 v4 v5

4 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Biplanar Graphs and Caterpillars

Folklore
A graph is biplanar ⇐⇒ it is a forest of caterpillars.

Example
v1 v3 v5

v2 v4

4 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Biplanar Graphs and Caterpillars

Folklore
A graph is biplanar ⇐⇒ it is a forest of caterpillars.

Example
v1 v3 v5

v2 v4

Two-Layer Planarization (2LP)


Input: A graph G = (V , E ) and an integer k ≥ 0.
Question: Is there an E 0 ⊆ E with |E 0 | ≤ k such that (V , E \ E 0 )
is biplanar?

4 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Biplanar Graphs and Caterpillars

Folklore
A graph is biplanar ⇐⇒ it is a forest of caterpillars.

Example
v1 v3 v5

v2 v4

Two-Layer Planarization (2LP)


Input: A graph G = (V , E ) and an integer k ≥ 0.
Question: Is there an E 0 ⊆ E with |E 0 | ≤ k such that (V , E \ E 0 )
is a forest of caterpillars?

4 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Applications of 2LP

Sugiyama approach to human readable graph drawing


[Mutzel, SIOPT’01]
DNA mapping
[Waterman, Griggs, Bull.Math.Bio.(1986)]
VLSI layout
[Lengauer, 1990]

5 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Known Results
Complexity
NP-hard
(bipartite; vertices in partitions have degree 2 and 3, respectively)
[Eades and Whitesides, Theoret. Comput. Sci. (1994)]
O(|V |)-time algorithm for trees
[Shahrokhi, Sýkora, Székely, Vrťo, SICOMP (2001)]

6 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Known Results
Complexity
NP-hard
(bipartite; vertices in partitions have degree 2 and 3, respectively)
[Eades and Whitesides, Theoret. Comput. Sci. (1994)]
O(|V |)-time algorithm for trees
[Shahrokhi, Sýkora, Székely, Vrťo, SICOMP (2001)]

Algorithmic
O(6k ) search tree + O(k)-vertex kernel
O(k6k + |V | + |E |) time algorithm
[Dujmović et al., Algorithmica (2006)]
O(5.193k ) search tree
[Fernau, JGAA, (2005)]
O(3.562k ) search tree
[Suderman, PhD thesis, (2005)]
6 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Our Contribution

Parameterize by feedback edge set number


f = FES (G )

7 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Our Contribution

Parameterize by feedback edge set number


f = FES (G ) = |E | − |V | + 1

7 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Our Contribution

Parameterize by feedback edge set number


f = FES (G ) = |E | − |V | + 1
Results
O(f )-size problem kernel in O(f |E |) time
O(6f ) search tree

7 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Our Contribution

Parameterize by feedback edge set number


f = FES (G ) = |E | − |V | + 1
Results
O(f )-size problem kernel in O(f |E |) time
O(6f ) search tree

Why FES (G )?
“instances of 2LP for dense graphs are of little interest from a
practical point of view” (since unreadable anyway)
[Dujmović et al., Algorithmica (2006)]
stronger than k (forests: f = 0 but k arbitrary)
yet easy to compute

7 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Characterization of Caterpillars

Folklore
G is a caterpillar ⇐⇒ G is acyclic & 2-claw-free (subgraph)

2-claw

8 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Characterization of Caterpillars

Folklore
G is a caterpillar ⇐⇒ G is acyclic & 2-claw-free (subgraph)

2-claw Example

8 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Overview Kernelization

Two phases:
Tree Reduction
Path Reduction

9 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Overview Kernelization

Two phases:
Tree Reduction
Path Reduction

9 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Overview Kernelization

Two phases:
Tree Reduction
Path Reduction

9 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Tree Reduction

Forbidden

L(v ) = leaves
P2 (v ) = 2-paths
v
Y(v ) = Y-graphs
L(v)
Rule 1: If there is a vertex v with |L(v )| > 1, then delete all O21
but one vertex in L(v ). O21
10 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Tree Reduction

Forbidden

L(v ) = leaves
P2 (v ) = 2-paths
Y(v ) = Y-graphs

Rule 1: If there is a vertex v with |L(v )| > 1, then delete all O21
but one vertex in L(v ). O21
10 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Tree Reduction

Forbidden

L(v ) = leaves
P2 (v ) = 2-paths
Y(v ) = Y-graphs

Rule 1: If there is a vertex v with |L(v )| > 1, then delete all O21
but one vertex in L(v ). O21
10 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Tree Reduction

Forbidden

P2
L(v ) = leaves
P2 (v ) = 2-paths
Y(v ) = Y-graphs
Y
Rule 2: If there is a vertex v with |Y(v )|+|P2 (v )|+|L(v )| > 1 O21
and |Y(v )| ≥ 1 then delete an arbitrary Y ∈ Y(v ). O21
10 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Tree Reduction

Forbidden

P2
L(v ) = leaves
P2 (v ) = 2-paths
Y(v ) = Y-graphs
Y
Rule 2: If there is a vertex v with |Y(v )|+|P2 (v )|+|L(v )| > 1 O21
and |Y(v )| ≥ 1 then delete an arbitrary Y ∈ Y(v ). O21
10 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Tree Reduction

Forbidden

L(v ) = leaves
P2 (v ) = 2-paths
Y(v ) = Y-graphs

Rule 2: If there is a vertex v with |Y(v )|+|P2 (v )|+|L(v )| > 1 O21


and |Y(v )| ≥ 1 then delete an arbitrary Y ∈ Y(v ). O21
10 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Tree Reduction

Forbidden

2-claw
L(v ) = leaves
P2 (v ) = 2-paths
Y(v ) = Y-graphs

Rule 3: If there is a vertex v with |P2 (v )| ≥ 3, then delete O21


all but two P2 ’s in P2 (v ). O21
10 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Tree Reduction

Forbidden

L(v ) = leaves
P2 (v ) = 2-paths
Y(v ) = Y-graphs

Rule 3: If there is a vertex v with |P2 (v )| ≥ 3, then delete O21


all but two P2 ’s in P2 (v ). O21
10 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Tree Reduction

Forbidden

L(v ) = leaves
P2 (v ) = 2-paths
Y(v ) = Y-graphs

Rule 3: If there is a vertex v with |P2 (v )| ≥ 3, then delete O21


all but two P2 ’s in P2 (v ). O21
10 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Tree Reduction

Forbidden

L(v ) = leaves
P2 (v ) = 2-paths
Y(v ) = Y-graphs

Rule 4: If there is a degree-2 vertex v with |Y(v )| = 1, then O21


delete the edge {v , parent(v )}. O21
10 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Tree Reduction

Forbidden

L(v ) = leaves
P2 (v ) = 2-paths
Y(v ) = Y-graphs

Rule 4: If there is a degree-2 vertex v with |Y(v )| = 1, then O21


delete the edge {v , parent(v )}. O21
10 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Tree Reduction

Forbidden

v P

L(v ) = leaves
P2 (v ) = 2-paths
Y(v ) = Y-graphs

Rule 5: If there is a vertex v with exactly two nonleaf neigh- O21


bors and P2 (v ) = {P}, then delete the leaf of P. O21
10 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Tree Reduction

Forbidden

L(v ) = leaves
P2 (v ) = 2-paths
Y(v ) = Y-graphs

Rule 5: If there is a vertex v with exactly two nonleaf neigh- O21


bors and P2 (v ) = {P}, then delete the leaf of P. O21
10 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Tree Reduction

Forbidden

L(v ) = leaves
P2 (v ) = 2-paths
Y(v ) = Y-graphs

Rule 5: If there is a vertex v with exactly two nonleaf neigh- O21


bors and P2 (v ) = {P}, then delete the leaf of P. O21
10 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Tree Reduction

11 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Tree Reduction

11 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Tree Reduction

Tree reduction rules solve Two-Layer Planarization on trees

11 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Tree Reduction

Tree reduction rules solve Two-Layer Planarization on trees but


are insufficient for a kernel in FES (G ).
further data reduction rules are employed.
11 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Path Replacement

...

12 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Path Replacement

...

“Dark blue” vertices linear in f

12 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Path Replacement

...

“Dark blue” vertices linear in f


Goal: reduce “light blue” vertices (cut long “degree-2” paths)

12 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Path Replacement

...

“Dark blue” vertices linear in f


Goal: reduce “light blue” vertices (cut long “degree-2” paths)
Mind the green “pendant trees”
12 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Y -Graphs
consider vertex v on degree-2 path, Y -graph Y attached to v :

Example

13 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Y -Graphs
consider vertex v on degree-2 path, Y -graph Y attached to v :
only 2 optimal ways to destroy the 2-claw at v

Example

13 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Y -Graphs
consider vertex v on degree-2 path, Y -graph Y attached to v :
only 2 optimal ways to destroy the 2-claw at v

Example

13 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Y -Graphs
consider vertex v on degree-2 path, Y -graph Y attached to v :
only 2 optimal ways to destroy the 2-claw at v

Example

13 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Y -Graphs
consider vertex v on degree-2 path, Y -graph Y attached to v :
only 2 optimal ways to destroy the 2-claw at v
we can determine when the first way is optimal!

Example

13 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Y -Graphs
consider vertex v on degree-2 path, Y -graph Y attached to v :
only 2 optimal ways to destroy the 2-claw at v
we can determine when the first way is optimal!
do this if it’s optimal

Example

13 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Y -Graphs
consider vertex v on degree-2 path, Y -graph Y attached to v :
only 2 optimal ways to destroy the 2-claw at v
we can determine when the first way is optimal!
do this if it’s optimal

Example

13 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Y -Graphs
consider vertex v on degree-2 path, Y -graph Y attached to v :
only 2 optimal ways to destroy the 2-claw at v
we can determine when the first way is optimal!
do this if it’s optimal, otherwise shortcut over v

Example

13 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Y -Graphs
consider vertex v on degree-2 path, Y -graph Y attached to v :
only 2 optimal ways to destroy the 2-claw at v
we can determine when the first way is optimal!
do this if it’s optimal, otherwise shortcut over v

Example

13 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Y -Graphs
consider vertex v on degree-2 path, Y -graph Y attached to v :
only 2 optimal ways to destroy the 2-claw at v
we can determine when the first way is optimal!
do this if it’s optimal, otherwise shortcut over v

Example

don’t worry about Y -graphs anymore


13 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Tokens

Lemma
There is an optimal solution that does not contain edges from the
pendant tree of a vertex on a Y -graph-free degree-2 path.

14 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Tokens

Lemma
There is an optimal solution that does not contain edges from the
pendant tree of a vertex on a Y -graph-free degree-2 path.

notion of tokens

14 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Tokens

Lemma
There is an optimal solution that does not contain edges from the
pendant tree of a vertex on a Y -graph-free degree-2 path.

notion of tokens

Example

e1 e2 e3 e4 e5 e6 e7

14 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Tokens

Lemma
There is an optimal solution that does not contain edges from the
pendant tree of a vertex on a Y -graph-free degree-2 path.

notion of tokens

Example

e1 e2 e3 e4 e5 e6 e7

14 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Tokens

Lemma
There is an optimal solution that does not contain edges from the
pendant tree of a vertex on a Y -graph-free degree-2 path.

notion of tokens

Example

e1 e2 e3 e4 e5 e6 e7

14 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Tokens

Lemma
There is an optimal solution that does not contain edges from the
pendant tree of a vertex on a Y -graph-free degree-2 path.

notion of tokens

Example

e1 e2 e3 e4 e5 e6 e7

14 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Tokens

Lemma
There is an optimal solution that does not contain edges from the
pendant tree of a vertex on a Y -graph-free degree-2 path.

notion of tokens

Example

e1 e2 e3 e4 v e5 e6 e7
4

14 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Tokens

Lemma
There is an optimal solution that does not contain edges from the
pendant tree of a vertex on a Y -graph-free degree-2 path.

notion of tokens represent the need to delete an edge

Example

e1 e2 e3 e4 v e5 e6 e7
4

14 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Path Replacement

Definition
A vertex that is not contained in a token is called token seperator.
Paths without token seperators are called chained.

15 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Path Replacement

Definition
A vertex that is not contained in a token is called token seperator.
Paths without token seperators are called chained.

“degree-2” path with token seperator vi

Example

15 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Path Replacement

Definition
A vertex that is not contained in a token is called token seperator.
Paths without token seperators are called chained.

“degree-2” path with token seperator vi “split open” the path

Example
v40 v400

15 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Path Replacement

Definition
A vertex that is not contained in a token is called token seperator.
Paths without token seperators are called chained.

“degree-2” path with token seperator vi “split open” the path


(Tokens remain unchanged)

Example
v40 v400

15 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Path Replacement

Definition
A vertex that is not contained in a token is called token seperator.
Paths without token seperators are called chained.

chained “degree-2” path

Example

15 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Path Replacement

Definition
A vertex that is not contained in a token is called token seperator.
Paths without token seperators are called chained.

chained “degree-2” path “cut” the large center piece

Example

15 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Path Replacement

Definition
A vertex that is not contained in a token is called token seperator.
Paths without token seperators are called chained.

chained “degree-2” path “cut” the large center piece (External


behavior remains unchanged)

Example

15 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Put it Together

Tree Reduction: O(f ) degree-2 paths


Path Reduction: O(1) vertices per degree-2 path
O(f )-size kernel

16 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Put it Together

Tree Reduction: O(f ) degree-2 paths


Path Reduction: O(1) vertices per degree-2 path
O(f )-size kernel (btw: it runs in O(f |E |) time)

16 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Summary

What we saw
Several new data reduction rules.
O(f )-size problem kernel computable in O(f |E |) time.

17 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Summary

What we saw
Several new data reduction rules.
O(f )-size problem kernel computable in O(f |E |) time.

Also in the paper


O(6f )-size search tree algorithm.
solve Two-Layer Planarization in O(6f f 2 + f |E |) time

17 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Further Results ( Long Version)

Node Duplication for Crossing Elemination (NDCE)


Input: A bipartite graph G = (U, V , E ) and an integer k ≥ 0.
Question: Can G be made biplanar with at most k node
duplications of vertices in U?

18 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Further Results ( Long Version)

Node Duplication for Crossing Elemination (NDCE)


Input: A bipartite graph G = (U, V , E ) and an integer k ≥ 0.
Question: Can G be made biplanar with at most k node
duplications of vertices in U?

Example
v v1 v2

18 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Further Results ( Long Version)

Node Duplication for Crossing Elemination (NDCE)


Input: A bipartite graph G = (U, V , E ) and an integer k ≥ 0.
Question: Can G be made biplanar with at most k node
duplications of vertices in U?

Applications
design of molecular quantum-dot cellular automata
[Chaudhary et al., IEEE Trans. on CAD of Integrated Circuits and
Systems, 2005]
visualization of gene ontologies
[Tsiaras, Triantafilou, Tollis, JGAA, 2009]

18 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Further Results ( Long Version)

Node Duplication for Crossing Elemination (NDCE)


Input: A bipartite graph G = (U, V , E ) and an integer k ≥ 0.
Question: Can G be made biplanar with at most k node
duplications of vertices in U?

Applications
design of molecular quantum-dot cellular automata
[Chaudhary et al., IEEE Trans. on CAD of Integrated Circuits and
Systems, 2005]
visualization of gene ontologies
[Tsiaras, Triantafilou, Tollis, JGAA, 2009]

Result
NDCE admits an O(f )-size problem kernel.
18 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Open Questions & Future Work

Challenges
faster algorithm for 2LP with parameter FES (G )
algorithm for 2LP with edge-weights
yet “stronger” parameters (feedback vertex set, treewidth)
algorithm for multilayered version (nLP)

19 / 20
Introduction and Motivation Data Reduction Rules Conclusion

Thank you

20 / 20

You might also like