Theta graph explained
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]
-graphs were first described by Clarkson
[2] in 1987 and independently by Keil
[3] in 1988.
Construction
-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.
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/(\cos\theta-\sin\theta)
. 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] and
, 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.
Software for drawing Theta graphs
See also
Notes and References
- .
- 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.
- Keil, J. (1988). Approximating the complete Euclidean graph. SWAT 88, 208–213.
- Ruppert, J., & Seidel, R. (1991). Approximating the d-dimensional complete Euclidean graph. In Proc. 3rd Canad. Conf. Comput. Geom (pp. 207–210).
- .
- .
- 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.