Algorithmic Aspects of Constrained Unit Disk Graphs
Total Page:16
File Type:pdf, Size:1020Kb
ALGORITHMIC ASPECTS OF CONSTRAINED UNIT DISK GRAPHS By Heinz Breu B.Sc. University of British Columbia, 1978 M.Sc. University of British Columbia, 1980 A THESIS SUBMITTED IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF DOCTOR OF PHILOSOPHY in THE FACULTY OF GRADUATE STUDIES COMPUTER SCIENCE We accent this thesis as conforming to the required standard THE UNIVERSITY OF BRITISH COLUMBIA April 1996 © Heinz Breu, 1996 In presenting this thesis in partial fulfillment of the requirements for an advanced degree at the University of British Columbia, I agree that the Library shall make it freely available for reference and study. I further agree that permission for extensive copying of this thesis for scholarly purposes may be granted by the head of my department or by his or her representatives. It is understood that copying or publication of this thesis for financial gain shall not be allowed without my written permission. Computer Science The University of British Columbia 2366 Main Mall Vancouver, Canada V6T 1Z4 Date: Abstract Computational problems on graphs often arise in two- or three-dimensional geometric contexts. Such problems include assigning channels to radio transmitters (graph colour• ing), physically routing traces on a printed circuit board (graph drawing), and modelling molecules. It is reasonable to expect that natural graph problems have more efficient solutions when restricted to such geometric graphs. Unfortunately, many familiar NP- complete problems remain NP-complete on geometric graphs. Indifference graphs arise in a one-dimensional geometric context; they are the inter• section graphs of unit intervals on the line. Many NP-complete problems on arbitrary graphs do have efficient solutions on indifference graphs. Yet these same problems remain NP-complete for the intersection graphs of unit disks in the plane (unit disk graphs), a natural two-dimensional generalization of indifference graphs. What accounts for this situation, and how can algorithms be designed to deal with it? To study these issues, this thesis identifies a range of subclasses of unit disk graphs in which the second spatial dimension is gradually, introduced. More specifically, T- strip graphs "interpolate" between unit disk graphs and indifference graphs; they are the intersection graphs of unit-diameter disks whose centres are constrained to lie in a strip of thickness r. This thesis studies algorithmic and structural aspects of varying the value r for r-strip graphs. The thesis takes significant steps towards characterizing, recognizing, and laying out strip graphs. We will also see how to develop algorithms for several problems on strip graphs, and how to exploit their geometric representation. In particular, we will see that problems become especially tractable when the strips are "thin" (r is small) or "discrete" ii (the number of possible y-coordinates for the disks is small). Note again that indifference graphs are the thinnest (r = 0) and most discrete (one y-coordinate) of the nontrivial r-strip graphs. The immediate results of this research concern algorithms for a specific class of graphs. The real contribution of this research is the elucidation of when and where geometry can be exploited in the development of efficient graph theoretic algorithms. in Table of Contents Abstract ii List of Tables ix List of Figures xi Acknowledgement xvi 1 Introduction 1 1.1 Prologue 1 1.2 Geometric Constraints in Graph Theory 3 1.3 Conventions, Background, and Notation 5 1.3.1 Sets 6 1.3.2 Graphs 10 1.3.3 Geometry 17 1.3.4 Algorithms 19 1.3.5 Unit Disk, Strip, and 2-Level Graphs 24 1.4 Overview: A Reader's Guide 26 2 Related Research 29 2.1 Unit Disk Graphs 29 2.1.1 Cluster Analysis 30 2.1.2 Random Test Case 30 2.1.3 Molecular Graphics and Decoding Noisy Data 31 iv 2.1.4 Radio Frequency Assignment 31 2.2 Geometric Intersection Graphs 32 2.3 Perfect Graphs 34 2.3.1 Cocomparability Graphs 36 2.3.2 Indifference Graphs 40 2.3.3 Grid Graphs 44 2.4 Proximity Graphs 46 2.4.1 The Delaunay Triangulation Hierarchy 47 2.4.2 Sphere of Influence Graphs 48 3 Unit Disk Graphs 50 3.1 Basic Observations 51 3.1.1 Connections with Planarity 52 3.1.2 Every r-Strip Graph is a Cocomparability Graph 54 3.2 Exploiting a Geometric Model 57 3.2.1 Least Vertex-Weight Paths in Unit Disk Graphs 57 3.2.2 Semi-Dynamic Single-Point Circular-Range Queries 67 3.2.3 Building an Adjacency List from a Model 72 3.3 NP-Complete Problems Restricted to Unit Disk Graphs 83 3.3.1 Independent Set 85 3.3.2 Maximum Clique 90 3.3.3 Chromatic Number 94 3.4 Unit Disk Graph Recognition is NP-Hard 104 3.4.1 Coin Graphs 105 3.4.2 A Graph That Simulates SATISFIABILITY 108 3.4.3 Drawing the Graph on the Grid 109 v 3.4.4 Simulating the Drawing with Coins 114 3.4.5 Fabricating Flippers 118 3.4.6 Capacity Arguments 120 3.4.7 The Skeleton of the Graph Gc 123 3.4.8 The Components of the Graph Gc 124 3.4.9 Building and Realizing Gc 135 3.4.10 Extending Coin Graph Recognition 137 3.4.11 Miscellaneous Properties 143 4 Cocomparability Graphs 146 4.1 Introduction 146 4.2 Algorithms for Dominating and Steiner Set Problems . 151 4.2.1 Connected Dominating Sets 153 4.2.2 Minimum Cardinality Dominating Sets 160 4.2.3 Total Dominating Sets 170 4.2.4 Weighted Independent Dominating Sets 177 4.2.5 Weighted Steiner Sets 182 4.2.6 Applications 188 4.3 Transitive Orientation, Implication Classes, and Dominating Paths .... 190 4.3.1 Definitions and Basic Properties 190 4.3.2 Transitive Orientation and Dominating Paths 193 4.3.3 Implications for Cocomparability Graphs 202 5 Strip Graphs 203 5.1 Exploiting a Geometric Model 205 5.1.1 Review of Cocomparability Results 206 5.1.2 Application to Strip Graphs 206 vi 5.2 Characterization Via Cycles in Weighted Digraphs 209 5.2.1 Solving Systems of Difference Constraints 212 5.2.2 Constraint Digraphs Corresponding to r-Strip Graphs 216 5.2.3 An 0(V3) Algorithm for Laying Out Levelled, Complement Ori• ented, Strip Graphs 218 5.3 Stars in Strip-Graphs . 220 5.4 Distinguishing Strip Graphs and Indifference Graphs 227 5.4.1 Dangerous 4-Cycles 228 5.4.2 Connection with Indifference Graph Characterization 234 5.5 A Characterization of Trees in Strip Graphs 235 5.5.1 A Universal Embedding for Caterpillars 236 6 Two-Level Graphs 242 6.1 Definitions 244 6.2 Examples 246 6i3 Exploiting a Geometric Realization 250 6.3.1 &:-Level Graphs and their Oriented Complements 250 6.3.2 An Implicit Representation of the Oriented Complement 251 6.3.3 An Algorithm for Constructing the Representation 254 6.3.4 An Implicit Representation of the Transitive Reduction 257 6.3.5 Weighted Cliques and Independent Dominating Sets 259 6.4 Relation to Indifference Graphs 261 6.4.1 Trapezoid Graphs and PI* Graphs 262 6.4.2 Cross Edges Induce a Bipartite Permutation Graph 267 6.4.3 Short Edges Induce an Indifference Graph 273 vii 6.4.4 Every Two-Level Graph is the Intersection of Two Indifference Graphs 275 6.5 Recognizing Two-Level Graphs 281 6.5.1 Striated Two-Level Graphs 281 6.5.2 Orienting the Complement of a Two-Level Graph 284 6.5.3 There is No Forbidden-Ordered-Triple Characterization of Striated Two-Level Graphs 298 6.5.4 Incomparability Between Different Thicknesses 300 6.6 Determining the Thickness of the Strip 305 7 Conclusion 310 7.1 Epilogue 312 Bibliography 314 Appendix 325 A A Data Structure for Maintaining "Test Tube" Maxima 325 A.l Definitions 325 A.2 Test Tubes, Maxima, and Their Properties 326 A.3 The Data Structure 332 A.4 Building the Data Structure 334 A.5 Deletions 340 Index 346 vm List of Tables 3.1 Algorithm: DIJKSTRA(G,S) 59 3.2 Algorithm: VERTEX-DIJKSTRA(G,S) 61 3.3 Algorithm: MIN-PATH(G,S) 63 3.4 Algorithm: LIST-DELETE(G, u) 65 3.5 Algorithm: ADJ-PLANE-SWEEP(V) 77 3.6 Algorithm: ADJ-DELAUNAY(V, S) 79 3.7 Approximation algorithms 83 3.8 Algorithm: GREEDY(G) 99 4.1 Algorithm: OCC(G) 149 4.2 Complexity of Domination Problems 152 4.3 Algorithm: MCCDS-OCC(G) 158 4.4 Algorithm: MCCDS-CC(G) 159 4.5 Algorithm: AO-MCDS-OCC(G) 166 4.6 Algorithm: Al-MCDS-OCC(G) 167 4.7 Algorithm: A3-MCDS-0CC(G) 167 4.8 Algorithm: A4-MCDS-0CC(G) 168 4.9 Algorithm: A5-MCDS-0CC(G) 168 4.10 Algorithm: Aux-MCDS-OCC(G') 169 4.11 Algorithm: MCDS-OCC(G') 170 4.12 Algorithm: MCTDS-OCC(G) 176 4.13 Algorithm: MWMC-C(G) 181 ix 4.14 Algorithm: MWIDS-CC(G) 182 4.15 Algorithm: MWSS-OCC(G, R) 184 4.16 Algorithm: MWSS-CC(G*, R) 187 5.1 Algorithm: MWSS-OCC(G', R) 207 5.2 Algorithm: STRIP-LAYOUT(G) 219 6.1 Algorithm: INITIALIZE-ORIENTED-COMPLEMENT(V, /) 252 6.2 Algorithm: TWO-LEVEL-F(?, j, p, n, /) 255 6.3 Algorithm: GENERATE-F(V, /) 256 6.4 Algorithm: kTRANS(V, /) 258 6.5 Algorithm: MWMC-k(V, /) 260 6.6 Algorithm: 2STRIAE(G) 308 A.l Algorithm: CHILDREN(u, d(L U R)) 334 A.2 Algorithm: FILL-INTERNAL^) 335 A.3 Algorithm: MERGER, dL, I, dR, r) 337 A.4 Algorithm: BRIDGE(3L, /, dR, r) 338 A.5 Algorithm: DELETE-SITE(p, d(LuR),v) 343 x List of Figures 2.1 A permutation diagram (a) and its corresponding permutation graph (b).