complexity results for three-dimensional orthogonal
graph drawing
maurizio patrignanithird university of rome
graph drawingdagstuhl 05191-2005
three-dimensional orthogonal GD
• nodes are (distinct) points in 3d space
• edges are composed by sequences of axis-parallel segments
node
bend
edge
• 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
)( nnO
)( nnO
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
[eades, symvonis, and whitesides 2000] [eades, stirk, and whitesides 1996]
[papakostas and tollis 1999]
[di battista, patrignani, and vargiu 2000][eades, symvonis, and whitesides 2000] [biedl 1995]
what we would like to know
two very difficult problems:
1. what happens if a maximum of two bends per edge is allowed?
2. 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
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
25
3
4
planarization
orthogonalization
compaction
61
25
3
4
6
1 25
3
4
1
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
25
3
4
orthogonalization
compaction
1
6
1 25
3
4
simple and not simple shape graphs
simple shape graph(admitting non-intersecting metrics)
not simple shape graph(always intersects)
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
1. existence of a 2-bend drawing
2. 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-hardif 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-hardnesstwo bends per edge + fixed shape NP-hardnesstwo bends per edge + fixed positions NP-hardnesstwo 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)
c1 c2 c3
the 3sat reduction frameworkvariable gadgets
clause gadgets
joint gadgets
variable gadgettrue variable false variable
variable gadget propagating truth values
false variable
joint-gadget
T
T
F
F
joint-gadget
T
T
T
F
F
F
F
T
clause gadget
from the joint gadget
from the joint gadget
from the variable gadget
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
variable gadgetfalse variabletrue variable
variable gadget propagating truth values
variable gadgetto clause gadget c1
to clause gadget c2
to clause gadget c3
joint gadgetfrom the
variable gadget
joint gadgetfrom the
variable gadget
joint gadgetfrom the
variable gadget
to the clause gadget
clause 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?
questions?
title
title
title