340 likes | 490 Vues
complexity results for three-dimensional orthogonal graph drawing. maurizio patrignani third university of rome graph drawing dagstuhl 05191-2005. node. edge. bend. three-dimensional orthogonal GD. nodes are (distinct) points in 3d space
E N D
complexity results for three-dimensional orthogonal graph drawing maurizio patrignani third university of rome graph drawing dagstuhl 05191-2005
node edge bend three-dimensional orthogonal GD • nodes are (distinct) points in 3d space • edges are composed by sequences of axis-parallel segments • only degree six graphs admit such drawings
what we know (1) • volume is (n3/2) • rosenberg. three-dimensional vlsi: a case study. j acm 1983 • volume is (n3/2) • eades, stirk, and whitesides, the techniques of komolgorov and bardzin for three-dimensional orthogonal graph drawings. ipl 96 • up to 16 bends per edge in time • eades, symvonis, and whitesides, three-dimensional orthogonal graph drawing algorithms. discr. appl. math 2000 • up to 7 bends per edge in time
what we know (2) • if only three bends per edges are allowed • eades, symvonis, and whitesides, three-dimensional orthogonal graph drawing algorithms. discr. appl. math 2000 • linear time complexity in O(n3) volume • papakostas and tollis. algorithms for incremental orthogonal graph drawing in three-dimensions. jgaa 1999 • linear time complexity in O(n3) volume • other algorithms • biedl. heuristics for 3d orthogonal graph drawing. twente workshop 1995 • 14 bends per edge in linear time and O(n2) volume • closson, gartshore, johansen, and wismath. fully dynamic 3-dimensional orthogonal graph drawing. jgaa 2000 • 6 bends per edge in O(n2) volume and linear time, but insertions/deletions in O(1) time • wood. an algorithm for three-dimensional orthogonal graph drawing. gd 1998 • 4 bends per edge in O(n3) time, but less than 7m/3 bends in total • di battista, patrignani, and vargiu. a split&push approach to 3d orthogonal drawing. jgaa 2000 • no bound given
plenty of drawings [papakostas and tollis 1999] [eades, stirk, and whitesides 1996] [eades, symvonis, and whitesides 2000] [di battista, patrignani, and vargiu 2000] [eades, symvonis, and whitesides 2000] [biedl 1995]
what we would like to know two very difficult problems: • what happens if a maximum of two bends per edge is allowed? • can we extend to 3d the topology-shape-metrics approach?
2-bend drawing problem • does a (degree six) graph always admit a 3d orthogonal drawing with at most 2 bends per edge? • a positive answer could provide an algorithm of unprecedented effectiveness • a negative answer was conjectured… • eades, symvonis, and whitesides. two algorithms for three dimensional orthogonal graph drawing. gd’96, 1997 • …but the K7 graph that was thought to require 3 bends turned out to admit a 2-bend drawing • wood. on higher dimensional orthogonal graph drawing. cats’97 • problem #46 of the open problem project • demaine, mitchell, and o’rourke
6 planarization compaction 1 5 2 3 orthogonalization 4 6 5 2 1 3 4 topology-shape-metrics approach in 2d V={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)} 6 1 5 2 3 4
compaction orthogonalization 6 5 1 2 3 4 topology-shape-metrics approach in 3d V={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)} 6 1 5 2 3 4
simple and not simple shape graphs not simple shape graph (always intersects) simple shape graph (admitting non-intersecting metrics)
characterization of simple shapes • known results: • characterization for cycles • di battista, liotta, lubiw, and whitesides. orthogonal drawings of cycles in 3d space, gd’00, 2001 • characterization for paths (with additional constraints) • di battista, liotta, lubiw, and whitesides. embedding problems for paths with direction constrained edges. theor. comp. sci., 2002 • proof that the characterization for cycles is not easy to extend to simple graphs (theta graphs) • di giacomo, liotta, and patrignani. a note on 3d orthogonal drawings with direction constrained edges. ipl, 2004 • characterizing simple shapes is an open problem • problem #20 of brandenburg, eppstein, goodrich, kobourov, liotta, and mutzel. selected open problems in graph drawing. gd 2003
two open problems • existence of a 2-bend drawing • characterization of simple shapes can complexity considerations give us some insight?
what we show given a 6-degree graph we prove that: statement 1: simplicity testing is NP-hard if you fix edge shapes (with a maximum of 2 bends per edge) finding the metrics corresponding to a non intersecting drawing is NP-hard statement 2: 2-bend routing is NP-hard if you fix node positions finding a routing without intersections with a maximum of two bends per edge is NP-hard
consequences of statement 1(simplicity 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 • questions: • are there classes of graphs such that the compaction step is polynomial? • are there families of shape graphs such that each graph is represented and the metrics can always be computed in polynomial time?
consequences of statement 2(2-bend routing is NP-hard) • yet another problem where two bends per edge implies NP-hardness two bends per edge + fixed shape NP-hardness two bends per edge + fixed positions NP-hardness two bends per edge + diagonal layout NP-hardness • wood. minimising the number of bends and volume in 3d orthogonal graph drawings with a diagonal vertex layout. algorithmica, 2004 • question: • what is the problem of finding a 2-bend drawing of a graph?
how we prove the statements reductions 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 lest one true literal? example of 3sat instance: (v1 v3 v4) (v1 v2 v5) (v2 v3 v5) c3 c2 c1
the 3sat reduction framework variable gadgets joint gadgets clause gadgets
variable gadget true variable false variable
variable gadget propagating truth values false variable
joint-gadget T F T F
joint-gadget T F T F F T T F
from the joint gadget clause gadget from the variable gadget from the joint gadget
all literals false intersecting clause gadget F T F T F F T T F F F F F T F T F T F T T T T T
true variable false variable variable gadget
variable gadget propagating truth values to clause gadget c1 variable gadget to clause gadget c2 to clause gadget c3
joint gadget from the variable gadget
joint gadget from the variable gadget
joint gadget to the clause gadget from the variable gadget
conclusions • simplicity testing is NP-hard • 2-bend routing is NP-hard • open problems • classes of graphs for which simplicity testing is polynomial? • classes of shapes for which simplicity testing is polynomial? • complexity of finding 2-bend drawings?