Block Crossings in Storyline Visualizations Thomas van Dijk, Martin - - PowerPoint PPT Presentation
Block Crossings in Storyline Visualizations Thomas van Dijk, Martin - - PowerPoint PPT Presentation
Block Crossings in Storyline Visualizations Thomas van Dijk, Martin Fink , Norbert Fischer, Fabian Lipp, Peter Markfelder, Alexander Ravsky, Subhash Suri, and Alexander Wolff 3/15 3/15 block crossing 3/15 We want to minimize block crossings!
3/15
3/15
block crossing
3/15
block crossing We want to minimize block crossings!
Previous Results – Simple Crossings
[Kostitsyna et al, GD’15] FPT for #characters upper and lower bounds for some cases with pairwise meetings NP-hardness
4/15
Related Work
Block crossings for metro lines [Fink, Pupyrev, Wolff; 2015]
5/15
Related Work
Block crossings for metro lines [Fink, Pupyrev, Wolff; 2015] Bundled Crossings [Fink et al., 2016]
5/15
Related Work
Block crossings for metro lines [Fink, Pupyrev, Wolff; 2015] Bundled Crossings [Fink et al., 2016] Bundled Crossing Number [Alam, Fink, Pupyrev; next talk]
5/15
Storylines & Block Crossings
block crossing
6/15
Storylines & Block Crossings
block crossing permutations π π′
6/15
Storylines & Block Crossings
block crossing permutations π π′ O(k3) possible block crossings
6/15
Storylines & Block Crossings
block crossing permutations π π′ O(k3) possible block crossings storyline visualization
6/15
Storylines & Block Crossings
block crossing permutations π π′ O(k3) possible block crossings storyline visualization π
6/15
Storylines & Block Crossings
block crossing permutations π π′ O(k3) possible block crossings storyline visualization π π supports meeting
6/15
Storylines & Block Crossings
block crossing permutations π π′ O(k3) possible block crossings storyline visualization π π supports meeting Problem definition:
6/15
Storylines & Block Crossings
block crossing permutations π π′ O(k3) possible block crossings storyline visualization π π supports meeting Given n meetings
- f k characters,
find permutations transformed by
- min. # block crossings.
Problem definition:
6/15
Storylines & Block Crossings
block crossing permutations π π′ O(k3) possible block crossings storyline visualization π π supports meeting Given n meetings
- f k characters,
find permutations transformed by
- min. # block crossings.
(Must support all meetings.)
Problem definition:
6/15
Our Results
recognize crossing-free instances NP-hardness approximation FPT/exact algorithms greedy heuristic for pairwise meetings
7/15
Crossing-Free Storylines Visualizations
8/15
Crossing-Free Storylines Visualizations
π
8/15
Crossing-Free Storylines Visualizations
π supports each meeting
8/15
Crossing-Free Storylines Visualizations
π supports each meeting group hypergraph H = (C, Γ) is interval hypergraph
8/15
Crossing-Free Storylines Visualizations
π supports each meeting group hypergraph H = (C, Γ) is interval hypergraph groups that meet
8/15
Crossing-Free Storylines Visualizations
π supports each meeting group hypergraph H = (C, Γ) is interval hypergraph groups that meet interval hypergraph property can be checked in O(k2) time [Trotter, Moore, 1976]
8/15
Minimizing Block Crossings is NP-hard
Reduction from Sorting by Transpositions v1 v2 v3 v4 v5 v4 v3 v1 v5 v2
9/15
Minimizing Block Crossings is NP-hard
Reduction from Sorting by Transpositions v1 v2 v3 v4 v5 v4 v3 v1 v5 v2 sort fixed permutations with minimum number
- f block crossings
9/15
Minimizing Block Crossings is NP-hard
Reduction from Sorting by Transpositions v1 v2 v3 v4 v5 v4 v3 v1 v5 v2 sort fixed permutations with minimum number
- f block crossings
9/15
Minimizing Block Crossings is NP-hard
Reduction from Sorting by Transpositions v1 v2 v3 v4 v5 v4 v3 v1 v5 v2 sort fixed permutations with minimum number
- f block crossings
fix permutations by repeated meetings
9/15
Minimizing Block Crossings is NP-hard
Reduction from Sorting by Transpositions v1 v2 v3 v4 v5 v4 v3 v1 v5 v2
k=5 times
sort fixed permutations with minimum number
- f block crossings
fix permutations by repeated meetings
k=5 times
9/15
Minimizing Block Crossings is NP-hard
Reduction from Sorting by Transpositions v1 v2 v3 v4 v5 v4 v3 v1 v5 v2
k=5 times
fix permutations by repeated meetings
k=5 times
add frame to prevent reversal v1 v2 v3 v4 v5
9/15
Minimizing Block Crossings is NP-hard
Reduction from Sorting by Transpositions v1 v2 v3 v4 v5 u1 u2 u3 u4 u5 v4 v3 v1 v5 v2 u1 u2 u3 u4 u5
k=5 times
fix permutations by repeated meetings
k=5 times
add frame to prevent reversal
9/15
Approximation Algorithm
all meetings of size ≤ d (constant) no repeated meetings
10/15
Approximation Algorithm
all meetings of size ≤ d (constant) no repeated meetings idea:
- 1. choose starting order π that supports many meetings
- 2. temporarily change order for each unsupported meeting
10/15
Approximation Algorithm
all meetings of size ≤ d (constant) no repeated meetings idea:
- 1. choose starting order π that supports many meetings
- 2. temporarily change order for each unsupported meeting
≤ 2(d − 1) block crossings
10/15
Approximation Algorithm
all meetings of size ≤ d (constant) no repeated meetings idea:
- 1. choose starting order π that supports many meetings
- 2. temporarily change order for each unsupported meeting
≤ 2(d − 1) block crossings meetings supported by π are free
10/15
Approximation Algorithm
all meetings of size ≤ d (constant) no repeated meetings idea:
- 1. choose starting order π that supports many meetings
- 2. temporarily change order for each unsupported meeting
≤ 2(d − 1) block crossings meetings supported by π are free Lemma: starting order π has α unsupported meetings ⇒ at least 4α/(3d2) block crossings necessary
10/15
Approximation Algorithm
all meetings of size ≤ d (constant) no repeated meetings idea:
- 1. choose starting order π that supports many meetings
- 2. temporarily change order for each unsupported meeting
≤ 2(d − 1) block crossings meetings supported by π are free Lemma: starting order π has α unsupported meetings ⇒ at least 4α/(3d2) block crossings necessary approximate αOPT ⇒ approximate block crossings
10/15
Approximation Algorithm
find π minimizing #unsupported meetings
11/15
Approximation Algorithm
find π minimizing #unsupported meetings ↔ remove minimum #meetings so that storyline crossing-free
11/15
Approximation Algorithm
find π minimizing #unsupported meetings ↔ remove minimum #meetings so that storyline crossing-free ↔ remove minimum #hyperedges so that H is interval hypergraph
11/15
Approximation Algorithm
find π minimizing #unsupported meetings ↔ remove minimum #meetings so that storyline crossing-free ↔ remove minimum #hyperedges so that H is interval hypergraph Theorem: Interval Hypergraph Edge Deletion admits a (d + 1)-approximation (constant rank d).
11/15
Approximation Algorithm
find π minimizing #unsupported meetings ↔ remove minimum #meetings so that storyline crossing-free ↔ remove minimum #hyperedges so that H is interval hypergraph Theorem: Interval Hypergraph Edge Deletion admits a (d + 1)-approximation (constant rank d). Theorem: We can find a (3(d2 − 1)d2/2)-approximation for the minimum number of block crossings in storyline visualizations in O(kn) time.
11/15
Interval Hypergraph Edge Deletion
Remove minimum number of hyperedges so that H = (V , E) becomes interval hypergraph
12/15
Interval Hypergraph Edge Deletion
Remove minimum number of hyperedges so that H = (V , E) becomes interval hypergraph NP-hard for graphs: remove all but n − 1 edges → Hamiltonian path
12/15
Interval Hypergraph Edge Deletion
Remove minimum number of hyperedges so that H = (V , E) becomes interval hypergraph characterization of interval hypergraphs by forbidden subhypergraphs O1 O2 F1 C3 C4 F2 Fd−2 M1 M2 Md−1
12/15
Interval Hypergraph Edge Deletion
Remove minimum number of hyperedges so that H = (V , E) becomes interval hypergraph characterization of interval hypergraphs by forbidden subhypergraphs O1 O2 F1 C3 C4 F2 Fd−2 M1 M2 Md−1 C3 C4
12/15
Interval Hypergraph Edge Deletion
Remove minimum number of hyperedges so that H = (V , E) becomes interval hypergraph characterization of interval hypergraphs by forbidden subhypergraphs O1 O2 F1 C3 C4 F2 Fd−2 M1 M2 Md−1
- utline:
– iteratively: search for forbidden subhypergraphs except Cd+2, . . . & completely remove them – result: cyclic generalization of interval hypergraph; break optimally
12/15
Interval Hypergraph Edge Deletion
Remove minimum number of hyperedges so that H = (V , E) becomes interval hypergraph characterization of interval hypergraphs by forbidden subhypergraphs O1 O2 F1 C3 C4 F2 Fd−2 M1 M2 Md−1
- utline:
– iteratively: search for forbidden subhypergraphs except Cd+2, . . . & completely remove them – result: cyclic generalization of interval hypergraph; break optimally ≤ d + 1 hyperedges
12/15
Interval Hypergraph Edge Deletion
Remove minimum number of hyperedges so that H = (V , E) becomes interval hypergraph characterization of interval hypergraphs by forbidden subhypergraphs O1 O2 F1 C3 C4 F2 Fd−2 M1 M2 Md−1
- utline:
– iteratively: search for forbidden subhypergraphs except Cd+2, . . . & completely remove them – result: cyclic generalization of interval hypergraph; break optimally ≤ d + 1 hyperedges Theorem: no forbidden subhypergraph except Cd+2, . . . ⇒ structure proof skipped (several lemmas & case distinctions)
12/15
Interval Hypergraph Edge Deletion
Remove minimum number of hyperedges so that H = (V , E) becomes interval hypergraph characterization of interval hypergraphs by forbidden subhypergraphs O1 O2 F1 C3 C4 F2 Fd−2 M1 M2 Md−1
- utline:
– iteratively: search for forbidden subhypergraphs except Cd+2, . . . & completely remove them – result: cyclic generalization of interval hypergraph; break optimally ≤ d + 1 hyperedges Theorem: no forbidden subhypergraph except Cd+2, . . . ⇒ structure can cut optimally proof skipped (several lemmas & case distinctions) Theorem: Interval Hypergraph Edge Deletion admits a (d + 1)-approximation (constant rank d).
12/15
Exact Algorithm
first idea: modify FPT of Kostitsyna et al. for block crossings
13/15
Exact Algorithm
first idea: modify FPT of Kostitsyna et al. for block crossings permutations meetings
13/15
Exact Algorithm
first idea: modify FPT of Kostitsyna et al. for block crossings permutations meetings
13/15
Exact Algorithm
first idea: modify FPT of Kostitsyna et al. for block crossings permutations meetings cost: #block crossings
13/15
Exact Algorithm
first idea: modify FPT of Kostitsyna et al. for block crossings permutations meetings cost: #block crossings
13/15
Exact Algorithm
first idea: modify FPT of Kostitsyna et al. for block crossings permutations meetings cost: #block crossings find minimum-cost path
13/15
Exact Algorithm
first idea: modify FPT of Kostitsyna et al. for block crossings permutations meetings cost: #block crossings find minimum-cost path runtime: O(k!2n)
13/15
Exact Algorithm
first idea: modify FPT of Kostitsyna et al. for block crossings permutations meetings find minimum-cost path runtime: O(k!2n) new idea: 1 edge ↔ block crossing
13/15
Exact Algorithm
first idea: modify FPT of Kostitsyna et al. for block crossings permutations meetings find minimum-cost path runtime: O(k!2n) new idea: 1 edge ↔ block crossing
13/15
Exact Algorithm
first idea: modify FPT of Kostitsyna et al. for block crossings permutations meetings find minimum-cost path runtime: O(k!2n) new idea: 1 edge ↔ block crossing
13/15
Exact Algorithm
first idea: modify FPT of Kostitsyna et al. for block crossings permutations meetings find minimum-cost path runtime: O(k!2n) new idea: 1 edge ↔ block crossing
13/15
Exact Algorithm
first idea: modify FPT of Kostitsyna et al. for block crossings permutations meetings find minimum-cost path runtime: O(k!2n) new idea: 1 edge ↔ block crossing O(k3) different block crossings Theorem: We can minimize block crossings in O(k!k3n) time and O(k!kn) space.
13/15
Exact Algorithm
first idea: modify FPT of Kostitsyna et al. for block crossings permutations meetings find minimum-cost path runtime: O(k!2n) new idea: 1 edge ↔ block crossing O(k3) different block crossings Theorem: We can minimize block crossings in O(k!k3n) time and O(k!kn) space. also works for single crossings
13/15
Exact Algorithm
first idea: modify FPT of Kostitsyna et al. for block crossings permutations meetings find minimum-cost path runtime: O(k!2n) new idea: 1 edge ↔ block crossing O(k3) different block crossings Alternative: Can minimize block crossings in O(k!kβ(β + kn)) time and O(βk) space, where β = opt. #block crossings Theorem: We can minimize block crossings in O(k!k3n) time and O(k!kn) space. also works for single crossings
13/15
2-Character Meetings – A Greedy Algorithm
- nly pairwise meetings
single block crossing suffices to bring pair together
14/15
2-Character Meetings – A Greedy Algorithm
- nly pairwise meetings
single block crossing suffices to bring pair together
14/15
2-Character Meetings – A Greedy Algorithm
- nly pairwise meetings
single block crossing suffices to bring pair together single block crossing can support several new meetings
14/15
2-Character Meetings – A Greedy Algorithm
- nly pairwise meetings
single block crossing suffices to bring pair together single block crossing can support several new meetings greedily try to support largest prefix of future meetings with single block crossing
14/15
2-Character Meetings – A Greedy Algorithm
- nly pairwise meetings
single block crossing suffices to bring pair together single block crossing can support several new meetings greedily try to support largest prefix of future meetings with single block crossing O(kn)-time algorithm use random or best start permutation
14/15
2-Character Meetings – A Greedy Algorithm
- nly pairwise meetings
single block crossing suffices to bring pair together single block crossing can support several new meetings greedily try to support largest prefix of future meetings with single block crossing O(kn)-time algorithm use random or best start permutation some preliminary experiments; e.g.: greedy with best start permutation for k = 5, n = 12: 56% opt., 38% + 1bc, 5% + 2bc, 1% + 3bc
14/15
Conclusion
can identify crossing-free solution new exact algorithms minimizing block crossings is hard approximation algorithm greedy heuristic for pairwise meetings
15/15
Conclusion
can identify crossing-free solution new exact algorithms minimizing block crossings is hard approximation algorithm greedy heuristic for pairwise meetings Open questions: generalize approximation / approximation for simple crossings? can greedy algorithm be generalized?
15/15
Conclusion
can identify crossing-free solution new exact algorithms minimizing block crossings is hard approximation algorithm greedy heuristic for pairwise meetings Open questions: generalize approximation / approximation for simple crossings? can greedy algorithm be generalized?
Thank you!
15/15