complexity results for three-dimensional orthogonal graph drawing
description
Transcript of complexity results for three-dimensional orthogonal graph drawing
![Page 1: complexity results for three-dimensional orthogonal graph drawing](https://reader035.fdocuments.in/reader035/viewer/2022062521/56813d0b550346895da6bb06/html5/thumbnails/1.jpg)
complexity results for three-dimensional orthogonal
graph drawing
maurizio “titto” patrignanithird university of rome
graph drawing 2005
![Page 2: complexity results for three-dimensional orthogonal graph drawing](https://reader035.fdocuments.in/reader035/viewer/2022062521/56813d0b550346895da6bb06/html5/thumbnails/2.jpg)
three-dimensional orthogonal drawings• nodes are (distinct) points in 3D space• edges are composed by sequences of axis-
parallel segments
node
bend
edge
![Page 3: complexity results for three-dimensional orthogonal graph drawing](https://reader035.fdocuments.in/reader035/viewer/2022062521/56813d0b550346895da6bb06/html5/thumbnails/3.jpg)
what we know• existence
– only graphs of maximum degree six admit such drawings– all graphs of maximum degree six admit such drawings
• volume (n3/2) [rosenberg 1983] (n3/2) [eades, stirk, and whitesides 1996]
• bends– in the optimal O(n3/2) volume we can draw with up to 7 bends per
edge in O(n3/2) time [eades, symvonis, and whitesides 2000]– in O(n3) volume we can draw with up to 3 bends per edges in linear
time [papakostas and tollis 1999][eades, symvonis, and whitesides, 2000]
– in O(n2) volume we can draw with 6 bends per edge in linear time and handle insertions/deletions in O(1) time [closson, gartshore, johansen, and wismath. 2000]
![Page 4: complexity results for three-dimensional orthogonal graph drawing](https://reader035.fdocuments.in/reader035/viewer/2022062521/56813d0b550346895da6bb06/html5/thumbnails/4.jpg)
what we do not know
1. is three bends per edge the lower bound?or rather: does every graph admit a 2-bend drawing?
2. can we extend to 3D the topology-shape-metrics approach?
![Page 5: complexity results for three-dimensional orthogonal graph drawing](https://reader035.fdocuments.in/reader035/viewer/2022062521/56813d0b550346895da6bb06/html5/thumbnails/5.jpg)
2-bend drawing problem• an algorithm to produce 2-bends drawings
could be particularly effective for information visualization
• is such algorithm does not exists then the algorithms we have are the best possible
• the K7 graph that was thought to require 3 bends turned out to admit a 2-bend drawing [wood ’97]
• problem #46 of the open problem project [demaine, mitchell, and o’rourke]
![Page 6: complexity results for three-dimensional orthogonal graph drawing](https://reader035.fdocuments.in/reader035/viewer/2022062521/56813d0b550346895da6bb06/html5/thumbnails/6.jpg)
topology-shape-metrics approach in 2DV={1,2,3,4,5,6}E={(1,4),(1,5),(1,6), (2,4),(2,5),(2,6), (3,4),(3,5),(3,6)}
planarization
orthogonalization
compaction
6
1 25
34
1 25
6
3
4
1 25
6
3
4
![Page 7: complexity results for three-dimensional orthogonal graph drawing](https://reader035.fdocuments.in/reader035/viewer/2022062521/56813d0b550346895da6bb06/html5/thumbnails/7.jpg)
topology-shape-metrics approach in 3D
V={1,2,3,4,5}E={(1,2),(1,3),(1,4), (2,3),(2,4),(2,5), (3,4),(3,5)}
orthogonalization
compaction
1
2
3 4
5
1
23 4
5
![Page 8: complexity results for three-dimensional orthogonal graph drawing](https://reader035.fdocuments.in/reader035/viewer/2022062521/56813d0b550346895da6bb06/html5/thumbnails/8.jpg)
simple and not simple shape graphs
simple shape graph(admitting non-intersecting metrics)
not simple shape graph(always intersects)
![Page 9: complexity results for three-dimensional orthogonal graph drawing](https://reader035.fdocuments.in/reader035/viewer/2022062521/56813d0b550346895da6bb06/html5/thumbnails/9.jpg)
simplicity testing in 3D• known results:
– simplicity test for cycles [di battista, liotta, lubiw, and whitesides, ‘01]
– simplicity test for paths (with additional constraints) [di battista, liotta, lubiw, and whitesides, ‘02]
– the above two characterizations are not easy to extend to simple graphs (theta graphs) [di giacomo, liotta, and patrignani, ‘04]
• simplicity testing is an open problem in the general case – problem #20 of [brandenburg, eppstein, goodrich,
kobourov, liotta, and mutzel. ’03]
![Page 10: complexity results for three-dimensional orthogonal graph drawing](https://reader035.fdocuments.in/reader035/viewer/2022062521/56813d0b550346895da6bb06/html5/thumbnails/10.jpg)
two open problems
1. existence of a 2-bend drawing2. simplicity testing
can complexity considerations give us some insight?
![Page 11: complexity results for three-dimensional orthogonal graph drawing](https://reader035.fdocuments.in/reader035/viewer/2022062521/56813d0b550346895da6bb06/html5/thumbnails/11.jpg)
what we showgiven a 6-degree graph we prove that:• simplicity testing is NP-complete
if you fix edge shapes (with a maximum of 2 bends per edge) finding the metrics corresponding to a non intersecting drawing is NP-complete
• 2-bend routing is NP-completeif you fix node positions finding a routing without intersections with a maximum of two bends per edge is NP-complete
![Page 12: complexity results for three-dimensional orthogonal graph drawing](https://reader035.fdocuments.in/reader035/viewer/2022062521/56813d0b550346895da6bb06/html5/thumbnails/12.jpg)
how we prove the statementsreductions from the 3SAT problem:instance: a set of clauses {c1, c2, …, cm} each
containing three literals from a set of boolean variables {v1, v2, …, vn}
question: can truth values be assigned to the variables so that each clause contains at least one true literal?
example of 3SAT instance: (v1 v3 v4) (v1 v2 v5) (v2 v3 v5)
c1 c2 c3
![Page 13: complexity results for three-dimensional orthogonal graph drawing](https://reader035.fdocuments.in/reader035/viewer/2022062521/56813d0b550346895da6bb06/html5/thumbnails/13.jpg)
we consider a generic target problemstructure of the target problem:instance: a graph G and a set of constraints S
expressed with respect to its nodes and edges
question: does G admit a 3D orthogonal drawing satisfying S?
![Page 14: complexity results for three-dimensional orthogonal graph drawing](https://reader035.fdocuments.in/reader035/viewer/2022062521/56813d0b550346895da6bb06/html5/thumbnails/14.jpg)
the 3SAT reduction frameworkvariable gadgets
clause gadgets
joint gadgets
![Page 15: complexity results for three-dimensional orthogonal graph drawing](https://reader035.fdocuments.in/reader035/viewer/2022062521/56813d0b550346895da6bb06/html5/thumbnails/15.jpg)
use of the 3SAT frameworktheoremif these four statements are true
– there is at least one non intersecting drawing for each truth assignment satisfying the 3SAT instance
– in any non intersecting drawing if a variable gadget is true, the corresponding joint gadget is true and vice versa
– in any non intersecting drawing of a clause gadget one of the literals is true
– the construction can be done in polynomial time
then the target problem is NP-hard
![Page 16: complexity results for three-dimensional orthogonal graph drawing](https://reader035.fdocuments.in/reader035/viewer/2022062521/56813d0b550346895da6bb06/html5/thumbnails/16.jpg)
simplicity testing problem
instance: a graph G and a shape for each edgequestion: does G admit a 3D orthogonal
drawing where the edges have the prescribed shape?
![Page 17: complexity results for three-dimensional orthogonal graph drawing](https://reader035.fdocuments.in/reader035/viewer/2022062521/56813d0b550346895da6bb06/html5/thumbnails/17.jpg)
variable gadgettrue variable false variable
![Page 18: complexity results for three-dimensional orthogonal graph drawing](https://reader035.fdocuments.in/reader035/viewer/2022062521/56813d0b550346895da6bb06/html5/thumbnails/18.jpg)
variable gadget propagating truth valuesfalse variable
![Page 19: complexity results for three-dimensional orthogonal graph drawing](https://reader035.fdocuments.in/reader035/viewer/2022062521/56813d0b550346895da6bb06/html5/thumbnails/19.jpg)
joint-gadget
T
T
F
F
![Page 20: complexity results for three-dimensional orthogonal graph drawing](https://reader035.fdocuments.in/reader035/viewer/2022062521/56813d0b550346895da6bb06/html5/thumbnails/20.jpg)
joint-gadget
T
T
T
F
F
F
F
T
![Page 21: complexity results for three-dimensional orthogonal graph drawing](https://reader035.fdocuments.in/reader035/viewer/2022062521/56813d0b550346895da6bb06/html5/thumbnails/21.jpg)
clause gadget
from the joint gadget
from the joint gadget
from the variable gadget
![Page 22: complexity results for three-dimensional orthogonal graph drawing](https://reader035.fdocuments.in/reader035/viewer/2022062521/56813d0b550346895da6bb06/html5/thumbnails/22.jpg)
all literals false intersecting clause gadget
F
F
F
F
F
T F
FF
T
T T
F F T T
T T
F F
T T T T
![Page 23: complexity results for three-dimensional orthogonal graph drawing](https://reader035.fdocuments.in/reader035/viewer/2022062521/56813d0b550346895da6bb06/html5/thumbnails/23.jpg)
2-bend routing problem
instance: a graph G and the coordinates for its nodes
question: does G admit a 2-bend orthogonal drawing where the nodes have such coordinates?
![Page 24: complexity results for three-dimensional orthogonal graph drawing](https://reader035.fdocuments.in/reader035/viewer/2022062521/56813d0b550346895da6bb06/html5/thumbnails/24.jpg)
variable gadgetfalse variabletrue variable
![Page 25: complexity results for three-dimensional orthogonal graph drawing](https://reader035.fdocuments.in/reader035/viewer/2022062521/56813d0b550346895da6bb06/html5/thumbnails/25.jpg)
variable gadget propagating truth valuesvariable gadgetto clause
gadget c1
to clause gadget c2
to clause gadget c3
![Page 26: complexity results for three-dimensional orthogonal graph drawing](https://reader035.fdocuments.in/reader035/viewer/2022062521/56813d0b550346895da6bb06/html5/thumbnails/26.jpg)
joint gadgetfrom the
variable gadget
![Page 27: complexity results for three-dimensional orthogonal graph drawing](https://reader035.fdocuments.in/reader035/viewer/2022062521/56813d0b550346895da6bb06/html5/thumbnails/27.jpg)
joint gadgetfrom the
variable gadget
![Page 28: complexity results for three-dimensional orthogonal graph drawing](https://reader035.fdocuments.in/reader035/viewer/2022062521/56813d0b550346895da6bb06/html5/thumbnails/28.jpg)
joint gadgetfrom the
variable gadgetto the
clause gadget
![Page 29: complexity results for three-dimensional orthogonal graph drawing](https://reader035.fdocuments.in/reader035/viewer/2022062521/56813d0b550346895da6bb06/html5/thumbnails/29.jpg)
clause gadget
![Page 30: complexity results for three-dimensional orthogonal graph drawing](https://reader035.fdocuments.in/reader035/viewer/2022062521/56813d0b550346895da6bb06/html5/thumbnails/30.jpg)
conclusionssimplicity testing is NP-hard
• any characterization of simple orthogonal shapes involves a hard computation
• even if we were able to find simple orthogonal shapes the compaction step would be NP-hard
• open problems:– are there classes of graphs such that the compaction
step is polynomial?– given a generic graph, are there families of shapes such
that the metrics can always be computed in polynomial time?
![Page 31: complexity results for three-dimensional orthogonal graph drawing](https://reader035.fdocuments.in/reader035/viewer/2022062521/56813d0b550346895da6bb06/html5/thumbnails/31.jpg)
conclusions
2-bend routing is NP-hard • yet another problem where two bends per
edge implies NP-hardnesstwo bends per edge + fixed shape NP-hardnesstwo bends per edge + fixed positions NP-hardnesstwo bends per edge + diagonal layout NP-hardness
• [wood, 2004]
• open problem:– what is the problem of finding a 2-bend
drawing of a graph?
![Page 32: complexity results for three-dimensional orthogonal graph drawing](https://reader035.fdocuments.in/reader035/viewer/2022062521/56813d0b550346895da6bb06/html5/thumbnails/32.jpg)
thank you!