32
complexity results for three-dimensional orthogonal graph drawing maurizio “titto” patrignani third university of rome graph drawing 2005

complexity results for three-dimensional orthogonal graph drawing

  • Upload
    liuz

  • View
    47

  • Download
    1

Embed Size (px)

DESCRIPTION

complexity results for three-dimensional orthogonal graph drawing. maurizio “titto” patrignani third university of rome graph drawing 2005. three-dimensional orthogonal drawings. nodes are (distinct) points in 3D space edges are composed by sequences of axis-parallel segments. node. edge. - PowerPoint PPT Presentation

Citation preview

Page 1: complexity results for  three-dimensional orthogonal  graph drawing

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

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

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

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

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

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

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

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

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

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

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

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

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

the 3SAT reduction frameworkvariable gadgets

clause gadgets

joint gadgets

Page 15: complexity results for  three-dimensional orthogonal  graph drawing

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

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

variable gadgettrue variable false variable

Page 18: complexity results for  three-dimensional orthogonal  graph drawing

variable gadget propagating truth valuesfalse variable

Page 19: complexity results for  three-dimensional orthogonal  graph drawing

joint-gadget

T

T

F

F

Page 20: complexity results for  three-dimensional orthogonal  graph drawing

joint-gadget

T

T

T

F

F

F

F

T

Page 21: complexity results for  three-dimensional orthogonal  graph drawing

clause gadget

from the joint gadget

from the joint gadget

from the variable gadget

Page 22: complexity results for  three-dimensional orthogonal  graph drawing

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

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

variable gadgetfalse variabletrue variable

Page 25: complexity results for  three-dimensional orthogonal  graph drawing

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

joint gadgetfrom the

variable gadget

Page 27: complexity results for  three-dimensional orthogonal  graph drawing

joint gadgetfrom the

variable gadget

Page 28: complexity results for  three-dimensional orthogonal  graph drawing

joint gadgetfrom the

variable gadgetto the

clause gadget

Page 29: complexity results for  three-dimensional orthogonal  graph drawing

clause gadget

Page 30: complexity results for  three-dimensional orthogonal  graph drawing

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

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

thank you!