Theta graph

Last updated

In computational geometry, the Theta graph, or -graph, is a type of geometric spanner similar to a Yao graph. The basic method of construction involves partitioning the space around each vertex into a set of cones, which themselves partition the remaining vertices of the graph. Like Yao Graphs, a -graph contains at most one edge per cone; where they differ is how that edge is selected. Whereas Yao Graphs will select the nearest vertex according to the metric space of the graph, the -graph defines a fixed ray contained within each cone (conventionally the bisector of the cone) and selects the nearest neighbor with respect to orthogonal projections to that ray. The resulting graph exhibits several good spanner properties. [1]

Contents

-graphs were first described by Clarkson [2] in 1987 and independently by Keil [3] in 1988.

Construction

Example cone of a
Th
{\displaystyle \Theta }
-graph emanating from
p
{\displaystyle p}
with orthogonal projection line
l
{\displaystyle l} Theta-cone.svg
Example cone of a -graph emanating from with orthogonal projection line

-graphs are specified with a few parameters which determine their construction. The most obvious parameter is , which corresponds to the number of equal angle cones that partition the space around each vertex. In particular, for a vertex , a cone about can be imagined as two infinite rays emanating from it with angle between them. With respect to , we can label these cones as through in a counterclockwise pattern from , which conventionally opens so that its bisector has angle 0 with respect to the plane. As these cones partition the plane, they also partition the remaining vertex set of the graph (assuming general position) into the sets through , again with respect to . Every vertex in the graph gets the same number of cones in the same orientation, and we can consider the set of vertices that fall into each.

Considering a single cone, we need to specify another ray emanating from , which we will label . For every vertex in , we consider the orthogonal projection of each onto . Suppose that is the vertex with the closest such projection, then the edge is added to the graph. This is the primary difference from Yao Graphs which always select the nearest vertex; in the example image, a Yao Graph would include the edge instead.

Construction of a -graph is possible with a sweepline algorithm in time. [1]

Properties

-graphs exhibit several good geometric spanner properties.

When the parameter is a constant, the -graph is a sparse spanner. As each cone generates at most one edge per cone, most vertices will have small degree, and the overall graph will have at most edges.

The stretch factor between any pair of points in a spanner is defined as the ratio between their metric space distance, and their distance within the spanner (i.e. from following edges of the spanner). The stretch factor of the entire spanner is the maximum stretch factor over all pairs of points within it. Recall from above that , then when , the -graph has a stretch factor of at most . [1] If the orthogonal projection line in each cone is chosen to be the bisector, then for , the spanning ratio is at most . [4]

For , the -graph forms a nearest neighbor graph. For , it is easy to see that the graph is connected, as each vertex will connect to something to its left, and something to its right, if they exist. For [5] , [6] , [7] , [8] and , [4] the -graph is known to be connected. Many of these results also give upper and/or lower bounds on their spanning ratios.

When is an even number, we can create a variant of the -graph known as the half--graph, where the cones themselves are partitioned into even and odd sets in an alternating fashion, and edges are only considered in the even cones (or, only the odd cones). Half--graphs are known to have some very nice properties of their own. For example, the half--graph (and, consequently, the -graph, which is just the union of two complementary half--graphs) is known to be a 2-spanner. [8]

Software for drawing Theta graphs

See also

Related Research Articles

<span class="mw-page-title-main">Cube</span> Solid object with six equal square faces

In geometry, a cube is a three-dimensional solid object bounded by six square faces, facets or sides, with three meeting at each vertex. Viewed from a corner it is a hexagon and its net is usually depicted as a cross.

This is a glossary of graph theory. Graph theory is the study of graphs, systems of nodes or vertices connected in pairs by lines or edges.

<span class="mw-page-title-main">Spanning tree</span> Tree which includes all vertices of a graph

In the mathematical field of graph theory, a spanning treeT of an undirected graph G is a subgraph that is a tree which includes all of the vertices of G. In general, a graph may have several spanning trees, but a graph that is not connected will not contain a spanning tree. If all of the edges of G are also edges of a spanning tree T of G, then G is a tree and is identical to T.

A randomized algorithm is an algorithm that employs a degree of randomness as part of its logic or procedure. The algorithm typically uses uniformly random bits as an auxiliary input to guide its behavior, in the hope of achieving good performance in the "average case" over all possible choices of random determined by the random bits; thus either the running time, or the output are random variables.

<span class="mw-page-title-main">Independent set (graph theory)</span> Unrelated vertices in graphs

In graph theory, an independent set, stable set, coclique or anticlique is a set of vertices in a graph, no two of which are adjacent. That is, it is a set of vertices such that for every two vertices in , there is no edge connecting the two. Equivalently, each edge in the graph has at most one endpoint in . A set is independent if and only if it is a clique in the graph's complement. The size of an independent set is the number of vertices it contains. Independent sets have also been called "internally stable sets", of which "stable set" is a shortening.

<span class="mw-page-title-main">Graph (abstract data type)</span> Abstract data type in computer science

In computer science, a graph is an abstract data type that is meant to implement the undirected graph and directed graph concepts from the field of graph theory within mathematics.

<span class="mw-page-title-main">Arrangement of lines</span> Subdivision of the plane by lines

In geometry, an arrangement of lines is the subdivision of the plane formed by a collection of lines. Bounds on the complexity of arrangements have been studied in discrete geometry, and computational geometers have found algorithms for the efficient construction of arrangements.

<span class="mw-page-title-main">Euclidean minimum spanning tree</span> Shortest network connecting points

A Euclidean minimum spanning tree of a finite set of points in the Euclidean plane or higher-dimensional Euclidean space connects the points by a system of line segments with the points as endpoints, minimizing the total length of the segments. In it, any two points can reach each other along a path through the line segments. It can be found as the minimum spanning tree of a complete graph with the points as vertices and the Euclidean distances between points as edge weights.

A geometric spanner or a t-spanner graph or a t-spanner was initially introduced as a weighted graph over a set of points as its vertices for which there is a t-path between any pair of vertices for a fixed parameter t. A t-path is defined as a path through the graph with weight at most t times the spatial distance between its endpoints. The parameter t is called the stretch factor or dilation factor of the spanner.

<span class="mw-page-title-main">Random geometric graph</span> In graph theory, the mathematically simplest spatial network

In graph theory, a random geometric graph (RGG) is the mathematically simplest spatial network, namely an undirected graph constructed by randomly placing N nodes in some metric space and connecting two nodes by a link if and only if their distance is in a given range, e.g. smaller than a certain neighborhood radius, r.

In theoretical computer science, the Aanderaa–Karp–Rosenberg conjecture is a group of related conjectures about the number of questions of the form "Is there an edge between vertex and vertex ?" that have to be answered to determine whether or not an undirected graph has a particular property such as planarity or bipartiteness. They are named after Stål Aanderaa, Richard M. Karp, and Arnold L. Rosenberg. According to the conjecture, for a wide class of properties, no algorithm can guarantee that it will be able to skip any questions: any algorithm for determining whether the graph has the property, no matter how clever, might need to examine every pair of vertices before it can give its answer. A property satisfying this conjecture is called evasive.

In computational geometry and computer science, the minimum-weight triangulation problem is the problem of finding a triangulation of minimal total edge length. That is, an input polygon or the convex hull of an input point set must be subdivided into triangles that meet edge-to-edge and vertex-to-vertex, in such a way as to minimize the sum of the perimeters of the triangles. The problem is NP-hard for point set inputs, but may be approximated to any desired degree of accuracy. For polygon inputs, it may be solved exactly in polynomial time. The minimum weight triangulation has also sometimes been called the optimal triangulation.

<span class="mw-page-title-main">Beta skeleton</span>

In computational geometry and geometric graph theory, a β-skeleton or beta skeleton is an undirected graph defined from a set of points in the Euclidean plane. Two points p and q are connected by an edge whenever all the angles prq are sharper than a threshold determined from the numerical parameter β.

In the mathematical field of graph theory, the intersection number of a graph is the smallest number of elements in a representation of as an intersection graph of finite sets. In such a representation, each vertex is represented as a set, and two vertices are connected by an edge whenever their sets have a common element. Equivalently, the intersection number is the smallest number of cliques needed to cover all of the edges of .

<span class="mw-page-title-main">Yao graph</span> Undirected graph with graph distances linearly bounded w.r.t. Euclidean distances

In computational geometry, the Yao graph, named after Andrew Yao, is a kind of geometric spanner, a weighted undirected graph connecting a set of geometric points with the property that, for every pair of points in the graph, their shortest path has a length that is within a constant factor of their Euclidean distance.

<span class="mw-page-title-main">Hyperbolic geometric graph</span>

A hyperbolic geometric graph (HGG) or hyperbolic geometric network (HGN) is a special type of spatial network where (1) latent coordinates of nodes are sprinkled according to a probability density function into a hyperbolic space of constant negative curvature and (2) an edge between two nodes is present if they are close according to a function of the metric (typically either a Heaviside step function resulting in deterministic connections between vertices closer than a certain threshold distance, or a decaying function of hyperbolic distance yielding the connection probability). A HGG generalizes a random geometric graph (RGG) whose embedding space is Euclidean.

The k-semi-Yao graph (k-SYG) of a set of n objects P is a geometric proximity graph, which was first described to present a kinetic data structure for maintenance of all the nearest neighbors on moving objects. It is named for its relation to the Yao graph, which is named after Andrew Yao.

In geometry, a partition of a polygon is a set of primitive units, which do not overlap and whose union equals the polygon. A polygon partition problem is a problem of finding a partition which is minimal in some sense, for example a partition with a smallest number of units or with units of smallest total side-length.

<span class="mw-page-title-main">Greedy geometric spanner</span>

In computational geometry, a greedy geometric spanner is an undirected graph whose distances approximate the Euclidean distances among a finite set of points in a Euclidean space. The vertices of the graph represent these points. The edges of the spanner are selected by a greedy algorithm that includes an edge whenever its two endpoints are not connected by a short path of shorter edges. The greedy spanner was first described in the PhD thesis of Gautam Das and conference paper and subsequent journal paper by Ingo Althöfer et al. These sources also credited Marshall Bern (unpublished) with the independent discovery of the same construction.

<span class="mw-page-title-main">Guillotine partition</span> Process of partitioning a rectilinear polygon

Guillotine partition is the process of partitioning a rectilinear polygon, possibly containing some holes, into rectangles, using only guillotine-cuts. A guillotine-cut is a straight bisecting line going from one edge of an existing polygon to the opposite edge, similarly to a paper guillotine.

References

  1. 1 2 3 Narasimhan, Giri; Smid, Michiel (2007), Geometric Spanner Networks, Cambridge University Press, ISBN   978-0-521-81513-0 .
  2. K. Clarkson. 1987. Approximation algorithms for shortest path motion planning. In Proceedings of the nineteenth annual ACM symposium on Theory of computing (STOC '87), Alfred V. Aho (Ed.). ACM, New York, NY, USA, 56–65.
  3. Keil, J. (1988). Approximating the complete Euclidean graph. SWAT 88, 208–213.
  4. 1 2 Ruppert, J., & Seidel, R. (1991). Approximating the d-dimensional complete Euclidean graph. In Proc. 3rd Canad. Conf. Comput. Geom (pp. 207–210).
  5. Aichholzer, Oswin; Bae, Sang Won; Barba, Luis; Bose, Prosenjit; Korman, Matias; van Renssen, André; Taslakian, Perouz; Verdonschot, Sander (October 2014), "Theta-3 is connected", Computational Geometry , 47 (9): 910–917, doi: 10.1016/j.comgeo.2014.05.001 {{citation}}: CS1 maint: date and year (link)
  6. Barba, Luis; Bose, Prosenjit; De Carufel, Jean-Lou; van Renssen, André; Verdonschot, Sander (2013), "On the stretch factor of the theta-4 graph", Algorithms and data structures, Lecture Notes in Computer Science, vol. 8037, Heidelberg: Springer, pp. 109–120, arXiv: 1303.5473 , doi: 10.1007/978-3-642-40104-6_10 , MR   3126350 .
  7. Bose, Prosenjit; Morin, Pat; van Renssen, André; Verdonschot, Sander (2015), "The θ5-graph is a spanner", Computational Geometry , 48 (2): 108–119, arXiv: 1212.0570 , doi: 10.1016/j.comgeo.2014.08.005 , MR   3260251 .
  8. 1 2 Bonichon, N., Gavoille, C., Hanusse, N., & Ilcinkas, D. (2010). Connections between theta-graphs, Delaunay triangulations, and orthogonal surfaces. In Graph Theoretic Concepts in Computer Science (pp. 266–278). Springer Berlin/Heidelberg.