Exact Algorithms for Minimum Dilation Triangulation
Abstract
We provide a spectrum of new theoretical insights and practical results for finding a Minimum Dilation Triangulation (MDT), a natural geometric optimization problem of considerable previous attention: Given a set of points in the plane, find a triangulation , such that a shortest Euclidean path in between any pair of points increases by the smallest possible factor compared to their straight-line distance. No polynomial-time algorithm is known for the problem; moreover, evaluating the objective function involves computing the sum of (possibly many) square roots. On the other hand, the problem is not known to be -hard.
(1) We provide practically robust methods and implementations for computing an MDT for benchmark sets with up to 30,000 points in reasonable time on commodity hardware, based on new geometric insights into the structure of optimal edge sets. Previous methods only achieved results for up to points, so we extend the range of optimally solvable instances by a factor of .
(2) We develop scalable techniques for accurately evaluating many shortest-path queries that arise as large-scale sums of square roots, allowing us to certify exact optimal solutions, with previous work relying on (possibly inaccurate) floating-point computations.
(3) We resolve an open problem by establishing a lower bound of on the dilation of the regular -gon (and thus for arbitrary point sets), improving the previous worst-case lower bound of and greatly reducing the remaining gap to the upper bound of from the literature. In the process, we provide optimal solutions for regular -gons up to .
Keywords and phrases:
dilation, minimum dilation triangulation, exact algorithms, algorithm engineering, experimental evaluationCopyright and License:
![[Uncaptioned image]](x1.png)
2012 ACM Subject Classification:
Theory of computation Computational geometry ; Theory of computation Discrete optimization ; General and reference Experimentation ; Mathematics of computing Interval arithmetic ; Mathematics of computing Arbitrary-precision arithmeticFunding:
The work presented in this paper was largely funded by the DFG grant “Computational Geometry: Solving Hard Optimization Problems” (CG:SHOP), grant FE 407/21-1.Editors:
Oswin Aichholzer and Haitao WangSeries and Publisher:

1 Introduction
Triangulating a set of points is one of the classical problems in computational geometry. On the practical side, it has natural applications in wireless sensor networks [47, 49], mesh generation [4], computer vision [45], geographic information systems [46] and many other areas [15]. On the theoretical side, finding a triangulation that is optimal with respect to some objective function has also received considerable attention: The Delaunay triangulation maximizes the minimum angle and minimizes the maximum circumcircle of all triangles. Minimizing the maximum edge length is possible in quadratic time [21]. On the other hand, maximizing the minimum edge length is -complete [27]. Famously, Mulzer and Rote [36] showed that computing the Minimum Weight Triangulation (MWT) is -hard.
In this paper, we provide new results and insights for another natural objective that considers triangulations as sparse structures with relative low cost for ensuing detours: The dilation of a triangulation of a point set is the worst-case ratio (among all ) between the shortest --path in and the Euclidean distance between and . The Minimum Dilation Triangulation (MDT) problem asks for a triangulation that minimizes the dilation , see Figure 1 for examples. This problem is closely related to the concept of a Euclidean -spanner: a subgraph with dilation (also called spanning ratio or stretch factor [37]) at most . Spanners have application in areas as robotics, network design [1, 26], sensor networks [10, 25] and design of parallel machines [3] and have been studied extensively [11]. Computing the MDT amounts to computing a plane spanner with smallest spanning ratio, as every plane spanner can be extended into a triangulation. For many types of triangulations, such as the Delaunay triangulation or the MWT, both lower and upper bounds on the worst-case dilation are known. Moreover, a constant upper bound on the worst-case dilation of a triangulation also implies a constant-factor approximation of the MDT. Lower and upper bounds on the worst-case dilation of the MDT have been studied, both for general point sets and for special point sets such as regular polygons or points on a circle; see Section 1.2 for further details.
Despite this importance and attention, actually computing a Minimum Dilation Triangulation is a challenging problem. Its computational complexity is still unresolved, signaling that there may not be a simple and elegant algorithmic solution that scales well. Moreover, actually computing accurate dilations involves computing shortest paths under Euclidean distances between pairs of points requires dealing with another famous challenge [39, 18, 6, 23], as it corresponds to evaluating and comparing numerous sums of many square roots.
1.1 Our contributions
We provide various new contributions, both to theory and practice.
-
1.
We present practically robust methods and implementations for computing an optimal MDT for benchmark sets with up to 30000 points in reasonable time on commodity hardware, based on new geometric insights into the structure of optimal edge sets. Previous methods only achieved results for up to 200 points (involving one computational routine of complexity instead of our improved complexity of ), so we extend the range of practically solvable instances by a factor of 150.
-
2.
We develop scalable techniques for accurately evaluating many shortest-path queries that arise as large-scale sums of square roots, allowing us to certify exact optimal solutions. This differs from previous work, which relied on floating-point computations, without regard for errors resulting from numerical issues.
-
3.
We resolve an open problem from [20] by establishing a lower bound of on the dilation of the regular -gon (and thus for arbitrary point sets). This improves the previous worst-case lower bound of from the regular -gon and greatly reduces the remaining gap to the upper bound of from [43]. In the process, we provide optimal solutions for regular -gons up to .
1.2 Related work
The complexity of finding the MDT is unknown [24]. [28] prove that finding the minimum dilation graph with a limited number of edges is -hard. [12] show that finding a spanning tree of given dilation is also -hard. Kozma [33] proves -hardness for minimizing the expected distance between random points in a triangulation, with edge weights instead of Euclidean distances. For surveys, see Eppstein [24] until 2000 and [38] for more recent results.
On the practical side, the authors of [44] study the problem of finding sparse low dilation graphs for large point sets in the plane. The authors of [9] present an approximation algorithm for the related problem of improving a given graph with a budget of edges such that the dilation is minimized. Regarding the MDT, all practical approaches in the literature are based on fixed-precision arithmetic. Klein [31] used an enumeration algorithm to find an optimal MDT for up to 10 points. The authors of [19] present heuristics for the MDT and evaluate their performance on instances with up to 200 points. Instances with up to 70 points were solved by the authors of [8] using integer linear programming techniques. In their approach, the edge elimination strategy from Knauer and Mulzer [32] was used to eliminate edges from the complete graph. Recently, Sattari and Izadi [41] presented an exact algorithm based on branch and bound that was evaluated on instances with up to 200 points.
The MDT is closely related to finding a plane -spanner; see [34] for an overview. Chew [13] first proved an upper bound of on plane -spanners in the -metric, which he later improved [14] to for the triangular-distance Delaunay graph in the plane. [5] proved that any convex point set admits a plane -spanner. For a centrally symmetric convex point set containing points, Sattari and Izadi [42] give an upper bound of . The best known upper bound on the dilation of arbitrary point sets is by Xia [48], who established and upper bound of 1.998 for the dilation of the Delaunay triangulation.
Mulzer [35] studied the MDT for the set of vertices of a regular -gon and proved an upper bound of . Amarnadh and Mitra [2] improved this bound to for any point set that lies on the boundary of a circle. Sattari and Izadi [43] again improved the bound to . Dumitrescu and Ghosh [20] show that any triangulation of a regular -gon has dilation at least , improving upon the bound of by Mulzer [35] and answering a question posed by Bose and Smit [7] as well as Kanj [30]. Dumitrescu and Ghosh [20] also computed dilations of regular -gon and regular -gon.
2 Preliminaries
Let be a set of points in the plane. We denote the Euclidean distance between two points by . For a connected geometric graph with , we denote the Euclidean shortest path between two points by and its length by , omitting if it is clear from context. The dilation between two points in is the ratio between the shortest path length and the Euclidean distance. The dilation of the graph is defined as the maximum dilation between any two points in , i.e.,
In the remainder of this work, the graph we consider is a triangulation, i.e., a maximal crossing-free graph on . Two edges are said to cross or intersect iff the line segments they induce intersect in their interior. Given a point set , the Minimum Dilation Triangulation problem (MDT) asks to find a triangulation of minimizing .
3 Candidate edge enumeration
Here we describe a novel and practically efficient scheme for enumerating a set of edges that induces a supergraph of the MDT. We start with the underlying theoretical ideas for this supergraph, followed by an algorithm for computing a supergraph of any triangulation with dilation strictly less than a given bound , which we exploit to enumerate a supergraph of the MDT with a (usually) small number of edges. This is further adapted to reductions of the dilation bound . We also discuss the computation of lower bounds on the dilation of the MDT. Some additional implementation details can be found in the full version.
3.1 Theoretical background
Our supergraph is based on the well-known ellipse property (used in [8, 28, 32]) that all edges of a triangulation with dilation below must satisfy.
Definition 1.
A pair of points has the ellipse property with respect to a point set and a dilation bound if, for any pair of points such that and intersect, .
Recall that the set of points that have the same sum of distances to two points with is an ellipse with as its focal points (or foci); thus, all paths between and with length less than must lie strictly inside this ellipse.
If a pair of points does not have the ellipse property, then there is a pair of points such that cuts through all paths between and that could have dilation less than ; see Figure 2. We call such a pair of points an exclusion certificate for .
Observation 2.
Let be some dilation bound and let be a triangulation containing the edge for points that do not have the ellipse property w.r.t. and . Then, .
3.2 High-level description
Preliminary experiments showed that a brute-force check of each of the pairs of potential edges is impractical for large , dominating the overall runtime time even for early versions of our solution approach.
We therefore developed a more efficient scheme to enumerate a superset of the edges that satisfy the ellipse property. This scheme performs a filtered incremental nearest-neighbor search from each point to identify all candidate edges of the form , i.e., looking for all possible neighbors of . This search is efficiently implemented on a quadtree containing all points. While enumerating candidates, we construct so-called dead sectors, i.e., regions of the plane that cannot contain possible neighbors of . We exclude all points that lie in dead sectors; we also use dead sectors to prune entire nodes of the quadtree and to terminate the search early if it has become clear that all remaining points must be in a dead sector. This usually avoids considering most points as potential neighbors of individually. The algorithm has a runtime of , where is the average number of points and quadtree vertices considered individually from each point. At worst, this can be ; in practice, is often much lower than . A related, slightly less complex enumeration algorithm applied to minimum-weight triangulations by Haas [29] scales to points. In the following, we describe the components of the enumeration scheme in more detail.
3.3 Dead sectors
We begin by giving a definition of the dead sectors we use.
Definition 3.
Given a dilation , a source point and two points , the dead sector is the region of all points such that intersects and neither nor lie in the ellipse with foci and focal distance sum .
Depending on , , and , is either empty (if is in the ellipse) or it is bounded by two rays and an elliptic arc; see Figure 3. In that case, it can also be interpreted as an elliptic arc and an interval of polar angles around .
During our enumeration we construct many dead sectors, the union of which can become quite complex, making it cumbersome and inefficient to work with directly. We instead chose to simplify the shape of our dead sectors, giving up a small fraction of excluded area in exchange for a simple and efficient representation. We replace the elliptic arc by a single disk centered on , whose radius is at least the maximum distance from to any point on the elliptic arc. We can hence represent each non-empty simplified dead sector by a polar angle interval around and a single radius called activation distance ; see Figure 3.
We initially attempted to compute fairly precise upper bounds on the activation distance; however, due to computational and numerical issues described in the full version, we decided to use a more robust and efficient approach. Instead of using the elliptic arc, we compute an upper bound using a minimal rectangle containing the ellipse with sides are parallel and perpendicular to . We only need to check the extreme points of and its intersections with the rays and to compute an upper bound ; see Figure 3.
In the worst case, these simplifications may lead to additional candidate edges. While this cannot make the resulting graph exclude any edges that satisfy the ellipse property, it is still undesirable; we use additional checks for further reductions later on.
3.4 Quadtree
We use a quadtree containing all points in for the filtered incremental search. The points are stored in a contiguous array outside the tree. Each quadtree node is associated with a contiguous subrange of represented by two pointers. This subrange contains the points in the subtree rooted at . Each node also has a bounding box that contains all points in . Each interior node has precisely four children; each leaf node contains at most a small constant number of points. To allow the contiguity of the subranges, points are reordered during tree construction. This has the added benefit of spatially sorting the points, improving the probability that geometrically close points are near each other in memory [29].
3.5 Enumeration process
One can think of the filtered incremental search from as a process of continuously growing a disk centered at starting with a radius of . As in the sweep-line paradigm, one encounters different types of events at discrete disk radii. We primarily encounter events when the disk first touches a point of or the bounding box of a quadtree node.
Observe that, during a search from a point , the dead sectors have two states: either their activation distance is not yet reached, in which case they are inactive and do not exclude any points, or they are active and exclude all points in a certain polar angle interval around . We therefore also introduce events when the disk radius reaches the activation distance of a dead sector. This enables efficient management of active dead sectors as a set of polar angle intervals around ; see the full version for a discussion of the ensuing numerical issues.
When we first encounter a point , we have to determine whether is in any dead sector by checking the active dead sector data structure. If it is not, we have to report it as potential neighbor of , adding it to a set of points sorted by polar angle around . Furthermore, to construct new dead sectors, we combine with other points of ; which points we use is decided by a heuristic discussed in the full version.
When we encounter a quadtree node , we have to determine whether ’s bounding box is fully contained in the union of all dead sectors and can thus be pruned; we thus again check the active dead sectors. Otherwise, we have to take ’s children, or the points it contains if it is a leaf, into account; they are then considered as future events.
3.6 Initialization and postprocessing
We initially compute the Delaunay triangulation of the point set and compute its dilation. We also optionally attempt to improve the dilation of the triangulation by a simple improvement heuristic. The heuristic is based on computing constrained Delaunay triangulations, greedily adding shortcut edges as constraints to reduce the length of the path currently defining the dilation. We then use the resulting dilation as bound for the enumeration process outlined in the previous sections, enumerating only edges that could locally be in a triangulation with dilation strictly below .
After the initial enumeration process is complete, we are left with a set of possible edges and can safely ignore all other edges. We postprocess these as follows. For each possible edge , we compute the set of possible edges intersecting it. We need this information later on to model the problem of finding a triangulation on the set of possible edges. For each pair , of intersecting edges, we explicitly check whether either pair is an exclusion certificate for the other. In many cases, this postprocessing gets us very close to the edge set that would be obtained by the trivial edge candidate enumeration algorithm; see the experiment section for details. We mark each edge that does not have intersecting possible edges as certain; certain edges must be part of any triangulation with dilation less than .
3.7 Dilation thresholds
We also compute a dilation threshold for each possible edge . Let be the set of possible edges intersecting . For each , we can compute a lower bound on the dilation of the shortest path connecting to , should be present, as
see Figure 4.
The dilation threshold of is then .
Observation 4.
If an edge has dilation threshold , it is not in any triangulation with dilation .
This allows us to quickly exclude further edges if we lower the dilation bound we aim for, without reenumerating edges or recomputing intersections.
3.8 Lower bounds
We use the dilation thresholds to bound the minimum dilation. For each edge , either or some edge crossing it must be in any triangulation. Thus, the minimum of all dilation thresholds among is a lower bound on the minimum dilation. Combining all edges, we obtain the following lower bound:
We use interval arithmetic to compute a safe lower bound on this value in time per intersection between two edges resulting from our enumeration.
Furthermore, by computing the points on the convex hull, we also know the number of edges of any triangulation. This also gives us a lower bound on the minimum dilation by considering the lowest dilation thresholds. We also use Kruskal’s algorithm to compute the lowest dilation threshold that admits a connected graph.
4 Exact algorithms
Now we present two exact algorithms: IncMDT is an incremental method that uses a SAT solver for iterative improvement, until it can prove that no better solution exists. BinMDT is based on a binary search for the optimal dilation ; once the lower and upper bound are reasonably close, the approach falls back to IncMDT to reach a provably optimal solution.
4.1 Triangulation supergraph
Both algorithms rely on the MDT supergraph mentioned in Section 3. As part of this computation, we also obtain an initial triangulation and its dilation, as well the intersecting possible edges for each possible edge . In both algorithms, we may gradually discover triangulations with lower dilation; these are used to exclude additional edges using the precomputed dilation thresholds . To keep track of the status of each edge, we insert all points and possible edges into a graph data structure we call triangulation supergraph. In this structure, we mark each edge as possible, impossible or certain. Initially, all enumerated edges are possible. If, at any point, all edges intersecting an edge become impossible, becomes certain. If an impossible edge becomes certain or vice versa, the graph does not contain a triangulation any longer. If this happens, we say we encounter an edge conflict.
4.2 SAT formulation
Given a triangulation supergraph , we model the problem of finding a triangulation on possible and certain edges using the following simple SAT formulation. Let be the set of non-impossible edges when the SAT formulation is constructed. For each edge , we have a variable . We use the following clauses in our formulation.
(1) | ||||
(2) |
Clauses (1) ensure crossing-freeness and clauses (2) ensure maximality. When an edge becomes certain, we add the clause ; similarly, when an edge becomes impossible, we add the clause . Both algorithms are based on this simple formulation; in the following, we describe how they use and modify it to find an MDT.
4.3 Clause generation
The following subproblem, which we call dilation path separation, arises in both our algorithms: Given a dilation bound , a triangulation supergraph excluding only edges that cannot be in any triangulation with dilation less than , a current triangulation and a pair of points such that , find a clause that is (a) violated by and (b) satisfied by any triangulation with .
Lemma 5.
Assuming a polynomial-time oracle for comparing sums of square roots, there is a polynomial-time algorithm that solves the dilation path separation problem.
Proof.
Let be the set of all --paths in with . We begin by observing that, along every path , there is an edge that is not in ; otherwise, we get a contradiction to . Let be a set of edges such that for each , there is an edge on . Then, is a clause that satisfies the requirements; note that if is empty, the empty clause can be returned.
contains no edge from , so is violated by . Furthermore, if a triangulation with does not contain any of the edges in , it contains none of the paths in . Therefore, uses an edge that is not in , which has been excluded from all triangulations with dilation less than ; a contradiction. can be computed by repeatedly computing shortest --paths ; as long as , we find an edge on , add to and forbid it in future paths. The number of edges bounds the number of iterations of this process; using the comparison oracle, we can efficiently perform each iteration.
For a description of how we compute in practice, see the full version.
4.4 Incremental algorithm
Based on the SAT formulation and the algorithm for the dilation path separation problem, IncMDT is simple. Given an initial triangulation with dilation , we enumerate the set of candidate edges and construct a triangulation supergraph with bound . We construct the initial SAT formula and solve it; if it is unsatisfiable, the initial triangulation is optimal. Otherwise, we repeat the following until the model becomes unsatisfiable or we encounter an edge conflict, keeping track of the best triangulation found, see Figure 5.
We extract the new triangulation from the SAT solver and compute the dilation and a pair of points realizing . If is better than the best previously found dilation , we update and mark all edges with as impossible. We then set and solve the dilation path separation problem for , , , and . We add the resulting clause to and let the SAT solver find a new solution.
4.5 Binary search
Preliminary experiments with IncMDT showed that we spend almost all runtime for computing dilations, even for instances for which we could rely exclusively on interval arithmetic, requiring no exact computations. For many instances, most iterations of IncMDT resulted in tiny improvements of the dilation. To reduce the number of iterations (and thus, dilations computed), we considered the binary search-based algorithm BinMDT.
4.5.1 High-level idea
At any point in time, aside from the dilation of the best known triangulation, BinMDT maintains a lower bound on the dilation, initialized as described in Section 3.
As long as for a small threshold value , BinMDT performs a binary search. It computes a new dilation bound . It then uses the SAT model in a similar way as IncMDT to determine whether a triangulation with exists. If it does, it updates ; otherwise, it updates .
Once falls below , BinMDT falls back to a slightly modified version of IncMDT to find the MDT, starting from the best known triangulation with dilation .
In the following, we describe and motivate the differences between how IncMDT and BinMDT use the SAT formulation; for more details, see the full version.
4.5.2 Dilation sampling
To further reduce the time spent on computing dilations, observe the following. When a node of some graph is expanded in Dijkstra’s algorithm from source , we know the shortest path from to and thus the dilation . Because , we can compute a lower bound on the dilation much faster than the precise value by only performing a constant number of node expansions from each point . We call this sampling of the dilation. Given a bound on the dilation, we can sample a triangulation for violations, i.e., pairs of points with . We observed that a dilation-defining path usually consisted of few edges; thus, we have a good chance of finding it by sampling.
If it is likely that a new-found triangulation violates a given bound , we can thus expect to save time by sampling for violations instead of computing the dilation exactly. Sampling also allows us to use multiple violations to construct multiple clauses in each iteration, potentially further reducing the number of iterations. BinMDT uses sampling after each SAT call with a small constant limit on the number of violations. If violations are found, no full dilation computation is required and violations are used to construct clauses. Only if no violations are found, we compute the exact dilation; ideally, this only happens once for each upper bound reduction in the binary search, namely once we find a triangulation satisfying the current bound. We also sample in the final improvement phase of BinMDT. For an experimental overview on the number of times sampling was sufficient in comparison to the number of times the dilation had to be computed exactly, see the full version.
5 Empirical evaluation
Now we present experiments to evaluate our algorithms. We used Python 3.12, with a core module written in C++20 for all computationally heavy tasks; the code was compiled with GCC 13.2.0 in release mode. We use CGAL 5.6.1 for geometric primitives and exact number types, Boost 1.83 for utility functions and pybind11 2.12 for Python bindings and use the incremental SAT solver CaDiCaL 1.9.5 via the PySAT interface for solving the SAT models. All experiments were performed on Linux workstations equipped with AMD Ryzen 9 7900 CPUs with 12 cores/24 threads and 96GiB of DDR5-5600 RAM running Ubuntu 24.04.1.
5.1 Research questions
Our experimental evaluation aims to answer the following questions.
-
Q1
How does the edge enumeration algorithm from Section 3 compare to the brute force enumeration in terms of runtime and the number of edges eliminated? Can we solely rely on this algorithm or should we reconsider using the brute force enumeration?
-
Q2
What is the quality of the initial solutions computed by the Delaunay triangulation and the constrained Delaunay triangulations from Section 3 compared to the optimal solution?
-
Q3
How do our approaches compare to existing algorithms for the MDT w.r.t. runtime and solution quality? Can we solve instances with thousands of points to provable optimality?
-
Q4
How do BinMDT and IncMDT compare? Which should be used for large instances?
5.2 Experiment design
To answer our questions, we collected and generated a large set of instances, consisting of instances from the following instance classes. In all cases, the coordinates of points in the instances are either integers or double precision floating-point numbers.
- random-small
-
We include instances from the work of [8]. The instances have fixed sizes and were generated by placing uniformly random points inside a square. For each size a total of instances were generated.
- random
-
We include two sets of randomly generated instances. These encompass a set of instances with points with float coordinates chosen uniformly between and , ranging from 50 to 10000 points. This resulted in a total of 800 instances.
- public
-
We include instances from all well-known publicly available benchmark instance sets we could locate. These include point sets previously used in the CG:SHOP challenges [17, 16], TSPLIB instances [40], instances from a VLSI dataset111https://www.math.uwaterloo.ca/tsp/vlsi/index.html and point sets from the Salzburg Database of Polygonal Inputs [22]. In total, we collected 486 instances with up to 10000 points and an additional 38 with up to 30000 points.
5.3 Q1: Edge enumeration
We first compare the edge enumeration algorithm from Section 3 to the brute force enumeration of all possible edges on the random instance set. Both preprocessing options include finding all pairwise intersections between the enumerated segments. Due to the runtime, we only consider instances with up to 1000 points; see Figure 6.
The algorithm precisely identifies all edges that have the ellipse property; it can hence only eliminate more edges than the edge enumeration algorithm from Section 3. However, for our test instances, the number of edges that can be eliminated by our approach is almost identical to the algorithm; see Figure 6 for an example. The runtime makes the algorithm infeasible for larger instances; it takes more than 250s for instances with only 1000 points, compared to for our more efficient approach.
5.4 Q2: Initial solutions
Better initial solutions can reduce the number of candidate edges further than bad ones and thus affect the runtime of the overall algorithm. Delaunay triangulations are a natural choice for the initial solution, but we suspect that they can be improved by adding shortcut edges. Figure 7 shows that the relative dilation gap between the Delaunay triangulation and the optimal solution for the random instance set. It can be seen that the introduction of shortcut edges can indeed reduce the gap to the MDT to around 1.5%.
5.5 Q3: Comparison to state-of-the-art
We compare our approaches to two exact state-of-the-art algorithms for the MDT. Note that both of these use floating-point arithmetic and are not guaranteed to find the optimal solution. However, we can confirm that all previous solutions are within a small relative error of our optimal solution. The first approach is an integer programming (IP) approach by [8] that used the commercial software CPLEX to solve the MDT. The second comparison is with the most recent exact algorithm (BnB) from Sattari and Izadi [41]. For both approaches the source code is no longer available, so we cannot compare our results on the same hardware. Also for BnB [41] the instance data and results are no longer available. For both approaches we therefore use the data the authors published in their papers. Note that the drastic runtime difference that we see in our experiments cannot be attributed to improved hardware alone.
For random-small, both IncMDT and BinMDT outperform the IP and BnB approach by a large margin (up to four orders of magnitude), see Figure 7. All instances were solvable in less than 0.1s. Additionally, Sattari and Izadi [41] provided results for TSPLIB [40] instances (part of our public instance set) with up to 200 points. Our approach is significantly faster than theirs, solving each of these instances to provable optimality in less than 1s instead of up to 1248s; a table with all instances and runtimes can be found in the full version.
5.6 Q4: Algorithm comparison
We now compare IncMDT to BinMDT. Recall that BinMDT aims to reduce the time spent on dilation computations by reducing the number of dilation computations and merely sampling the dilation whenever that suffices. The first experiment was conducted on the random instances with up to 10000 points; this experiment confirms that BinMDT indeed achieves a significantly lower runtime, requires fewer dilation computations, and that sampling is sufficient in most cases, see Figure 8.
After we confirmed that BinMDT is superior, we conducted an additional experiment with two different initial solution strategies on the public instances up to 10000 points, see Figure 9. The first strategy uses the Delaunay triangulation as an initial solution; the second strategy uses the improved Delaunay triangulation with shortcut edges. The improved Delaunay triangulation significantly reduces the runtime of BinMDT for almost all instances. Detailed results for all public instances, as well as an additional experiment on the public instance set showing that BinMDT can solve instances with up to 30000 points in less than 17h to provable optimality, can be found in the full version.
6 Improved bounds for regular -gons
Vertex sets of regular -gons are particularly challenging, as there are no points in the interior to serve as Steiner points for shortcuts, making local heuristics less successful. They are also natural candidates for worst-case dilation, as each diagonal constitutes an obstacle for the separated points. Thus, they have received considerable attention [35, 20, 43], with a lower bound of (see [20]) and an upper bound of (see [43]) on their worst-case dilation. Improving this gap is an open question posed by [20, Problem 1], originating from [7, 30]. With the help of our exact algorithm (see the full version), we were able to compute bounds for , answering the problem by Dumitrescu and Ghosh.
Our implementation currently uses floating-point precision to represent the coordinates of the input points. Thus, we cannot exactly represent the necessarily irrational points of any regular -gon () in our solver. However, we can compute the MDT of a rational point set that is a good approximation of a regular -gon. We can then bound the error and thus obtain a rigorous lower bound on the dilation of the regular -gon.
Theorem 6.
Let be a set of points placed at the vertices of a regular -gon. Then the dilation of the MDT of is .
Proof.
Let be the point set of a regular -gon and be a point set that contains floating-point approximations of the points of . There is a bijection with inverse that maps each point in to the closest point in . For a given triangulation or path of , we write to denote the triangulation or path where the points are transformed by pointwise application of . Neither nor contain collinear points and all points are in convex position, therefore is a triangulation of iff is a triangulation of .
Let be a bound on the maximum absolute error on distances and let be a chosen such that
Let be the MDT of with dilation . Let be a dilation-defining pair in with path . Because has dilation , we have (i) . As has at most edges, we have (ii) and thus the following upper bound on the MDT of .
Using exact calculations done with sympy, we computed and , which, combined with the lower bound on the dilation of from our solver gives us .
7 Conclusion
We have presented exact algorithms for minimum dilation triangulations, greatly outperforming previous methods from the literature. This has also yielded insights into the intricate structure of optimal solutions for regular -gons, together with new lower bounds on the worst-case dilation of triangulations. This demonstrates the value of computational tools for gaining analytic insights that seem out of reach with purely manual analysis.
On the theoretical side, one tantalizing open question remains the complexity of the MDT; here the intricate structure of solutions for regular -gons may show the way for hardness constructions even for convex arrangements. An equally fascinating problem is the worst-case dilation of triangulations; here we conjecture that the asymptotic dilation for regular -gons corresponds to the worst-case dilation for general point sets, implying a value between and , with a better lower bound achievable via even larger -gons.
On the practical side, the runtime of our algorithms is dominated by repeatedly computing the dilation of a triangulation. With sums of square roots handled as described, this does not appear to be a difficult problem per se, so appropriately tailored algorithms or data structures for carrying out huge numbers of dilation queries would be extremely helpful.
References
- [1] Khaled M. Alzoubi, Xiang-Yang Li, Yu Wang, Peng-Jun Wan, and Ophir Frieder. Geometric spanners for wireless ad hoc networks. IEEE Trans. Parallel Distributed Syst., 14(4):408–421, 2003. doi:10.1109/TPDS.2003.1195412.
- [2] Narayanasetty Amarnadh and Pinaki Mitra. Upper bound on dilation of triangulations of cyclic polygons. In Computational Science and Its Applications - ICCSA 2006, volume 3980 of Lecture Notes in Computer Science, pages 1–9. Springer, 2006. doi:10.1007/11751540_1.
- [3] Boris Aronov, Mark de Berg, Otfried Cheong, Joachim Gudmundsson, Herman J. Haverkort, Michiel H. M. Smid, and Antoine Vigneron. Sparse geometric graphs with small dilation. Comput. Geom., 40(3):207–219, 2008. doi:10.1016/J.COMGEO.2007.07.004.
- [4] Marshall Bern and David Eppstein. Mesh generation and optimal triangulation. In Computing in Euclidean geometry, pages 47–123. World Scientific, 1995.
- [5] Ahmad Biniaz, Mahdi Amani, Anil Maheshwari, Michiel H. M. Smid, Prosenjit Bose, and Jean-Lou De Carufel. A plane 1.88-spanner for points in convex position. J. Comput. Geom., 7(1):520–539, 2016. doi:10.20382/JOCG.V7I1A21.
- [6] Johannes Blömer. Computing sums of radicals in polynomial time. In Symposium on Foundations of Computer Science (FOCS), pages 670–677, 1991. doi:10.1109/SFCS.1991.185434.
- [7] Prosenjit Bose and Michiel H. M. Smid. On plane geometric spanners: A survey and open problems. Comput. Geom., 46(7):818–830, 2013. doi:10.1016/J.COMGEO.2013.04.002.
- [8] Aléx F. Brandt, Miguel M. Gaiowski, Cid C. de Souza, and Pedro J. de Rezende. Minimum dilation triangulation: Reaching optimality efficiently. In Proceedings of the 26th Canadian Conference on Computational Geometry, CCCG 2014, Halifax, Nova Scotia, Canada, 2014. Carleton University, Ottawa, Canada, 2014. URL: http://www.cccg.ca/proceedings/2014/papers/paper09.pdf.
- [9] Kevin Buchin, Maike Buchin, Joachim Gudmundsson, and Sampson Wong. Bicriteria approximation for minimum dilation graph augmentation. In Timothy M. Chan, Johannes Fischer, John Iacono, and Grzegorz Herman, editors, 32nd Annual European Symposium on Algorithms, ESA 2024, volume 308 of LIPIcs, pages 36:1–36:15. Schloss Dagstuhl – Leibniz-Zentrum für Informatik, 2024. doi:10.4230/LIPICS.ESA.2024.36.
- [10] Leizhen Cai and Derek G. Corneil. Tree spanners. SIAM J. Discret. Math., 8(3):359–387, 1995. doi:10.1137/S0895480192237403.
- [11] Barun Chandra, Gautam Das, Giri Narasimhan, and José Soares. New sparseness results on graph spanners. Int. J. Comput. Geom. Appl., 5:125–144, 1995. doi:10.1142/S0218195995000088.
- [12] Otfried Cheong, Herman J. Haverkort, and Mira Lee. Computing a minimum-dilation spanning tree is NP-hard. Comput. Geom., 41(3):188–205, 2008. doi:10.1016/J.COMGEO.2007.12.001.
- [13] Paul Chew. There is a planar graph almost as good as the complete graph. In Proceedings of the Second Annual ACM SIGACT/SIGGRAPH Symposium on Computational Geometry, pages 169–177. ACM, 1986. doi:10.1145/10515.10534.
- [14] Paul Chew. There are planar graphs almost as good as the complete graph. J. Comput. Syst. Sci., 39(2):205–219, 1989. doi:10.1016/0022-0000(89)90044-5.
- [15] Mark de Berg, Otfried Cheong, Marc J. van Kreveld, and Mark H. Overmars. Computational Geometry: Algorithms and Applications, 3rd Edition. Springer, 2008. doi:10.1007/978-3-540-77974-2.
- [16] Erik D Demaine, Sándor P Fekete, Phillip Keldenich, Dominik Krupke, and Joseph S. B. Mitchell. Computing convex partitions for point sets in the plane: The CG:SHOP Challenge 2020. arXiv preprint, 2020. arXiv:2004.04207.
- [17] Erik D Demaine, Sándor P. Fekete, Phillip Keldenich, Dominik Krupke, and Joseph S. B. Mitchell. Area-optimal simple polygonalizations: The CG Challenge 2019. Journal of Experimental Algorithmics (JEA), 27(2):1–12, 2022.
- [18] Erik D. Demaine, Joseph S. B. Mitchell, and Joseph O’Rourke. The open problems project: Problem #33, 2001. URL: http://topp.openproblem.net/.
- [19] Maria Gisela Dorzán, Mario Guillermo Leguizamón, Efrén Mezura-Montes, and Gregorio Hernández-Peñalver. Approximated algorithms for the minimum dilation triangulation problem. J. Heuristics, 20(2):189–209, 2014. doi:10.1007/S10732-014-9237-2.
- [20] Adrian Dumitrescu and Anirban Ghosh. Lower bounds on the dilation of plane spanners. Int. J. Comput. Geom. Appl., 26(2):89–110, 2016. doi:10.1142/S0218195916500059.
- [21] Herbert Edelsbrunner and Tiow Seng Tan. A quadratic time algorithm for the minimax length triangulation. SIAM J. Comput., 22(3):527–551, 1993. doi:10.1137/0222036.
- [22] Günther Eder, Martin Held, Steinþór Jasonarson, Philipp Mayer, and Peter Palfrader. Salzburg database of polygonal data: Polygons and their generators. Data in Brief, 31:105984, 2020. doi:10.1016/j.dib.2020.105984.
- [23] Friedrich Eisenbrand, Matthieu Haeberle, and Neta Singer. An improved bound on sums of square roots via the subspace theorem. In Symposium on Computational Geometry (SoCG), 2024.
- [24] David Eppstein. Spanning trees and spanners. In Jörg-Rüdiger Sack and Jorge Urrutia, editors, Handbook of Computational Geometry, pages 425–461. North Holland / Elsevier, 2000. doi:10.1016/B978-044482537-7/50010-3.
- [25] Kai-Wei Fan, Sha Liu, and Prasun Sinha. Scalable data aggregation for dynamic events in sensor networks. In Andrew T. Campbell, Philippe Bonnet, and John S. Heidemann, editors, Proceedings of the 4th International Conference on Embedded Networked Sensor Systems, SenSys 2006, pages 181–194. ACM, 2006. doi:10.1145/1182807.1182826.
- [26] Arthur M. Farley, Andrzej Proskurowski, Daniel Zappala, and Kurt J. Windisch. Spanners and message distribution in networks. Discret. Appl. Math., 137(2):159–171, 2004. doi:10.1016/S0166-218X(03)00259-2.
- [27] Sándor P. Fekete, Winfried Hellmann, Michael Hemmer, Arne Schmidt, and Julian Troegel. Computing maxmin edge length triangulations. J. Comput. Geom., 9(1):1–26, 2018. doi:10.20382/JOCG.V9I1A1.
- [28] Panos Giannopoulos, Rolf Klein, Christian Knauer, Martin Kutz, and Dániel Marx. Computing geometric minimum-dilation graphs is NP-hard. Int. J. Comput. Geom. Appl., 20(2):147–173, 2010. doi:10.1142/S0218195910003244.
- [29] Andreas Haas. Solving large-scale minimum-weight triangulation instances to provable optimality. In 34th International Symposium on Computational Geometry, SoCG 2018, volume 99 of LIPIcs, pages 44:1–44:14. Schloss Dagstuhl – Leibniz-Zentrum für Informatik, 2018. doi:10.4230/LIPICS.SOCG.2018.44.
- [30] Iyad Kanj. Geometric spanners: Recent results and open directions. In Third International Conference on Communications and Information Technology, ICCIT 2013, pages 78–82. IEEE, 2013. doi:10.1109/ICCITECHNOLOGY.2013.6579526.
- [31] Alexander Klein. Effiziente Berechnung einer dilationsminimalen Triangulierung. Master’s thesis, Diplomarbeit, Rheinische Friedrich-Wilhelms-Universität Bonn, 2006.
- [32] Christian Knauer and Wolfgang Mulzer. An exclusion region for minimum dilation triangulations. In (Informal) Proceedings of the 21st European Workshop on Computational Geometry (EuroCG 2005), pages 33–36. Technische Universiteit Eindhoven, 2005. URL: http://www.win.tue.nl/EWCG2005/Proceedings/9.pdf.
- [33] László Kozma. Minimum average distance triangulations. In Leah Epstein and Paolo Ferragina, editors, 20th Annual European Symposium on Algorithms (ESA 2012), volume 7501 of Lecture Notes in Computer Science, pages 695–706. Springer, 2012. doi:10.1007/978-3-642-33090-2_60.
- [34] Joseph SB Mitchell and Wolfgang Mulzer. Proximity algorithms. In Handbook of Discrete and Computational Geometry, pages 849–874. CRC Press, Inc., 2017.
- [35] Wolfgang Mulzer. Minimum dilation triangulations for the regular n-gon. Master’s Thesis. Freie Universität Berlin, Germany., 2004.
- [36] Wolfgang Mulzer and Günter Rote. Minimum-weight triangulation is NP-hard. J. ACM, 55(2):11:1–11:29, 2008. doi:10.1145/1346330.1346336.
- [37] Giri Narasimhan and Michiel H. M. Smid. Approximating the stretch factor of euclidean graphs. SIAM J. Comput., 30(3):978–989, 2000. doi:10.1137/S0097539799361671.
- [38] Giri Narasimhan and Michiel H. M. Smid. Geometric spanner networks. Cambridge University Press, 2007.
- [39] Joseph O’Rourke. Advanced problem 6369. Amer. Math. Monthly, 88(10):769, 1981.
- [40] G. Reinelt. TSPLIB–A Traveling Salesman Problem Library. ORSA Journal of Computing, 3(4):376–384, 1991. doi:10.1287/IJOC.3.4.376.
- [41] Sattar Sattari and Mohammad Izadi. An exact algorithm for the minimum dilation triangulation problem. J. Glob. Optim., 69(2):343–367, 2017. doi:10.1007/S10898-017-0517-X.
- [42] Sattar Sattari and Mohammad Izadi. Upper bounds for minimum dilation triangulation in two special cases. Inf. Process. Lett., 133:33–38, 2018. doi:10.1016/J.IPL.2018.01.001.
- [43] Sattar Sattari and Mohammad Izadi. An improved upper bound on dilation of regular polygons. Comput. Geom., 80:53–68, 2019. doi:10.1016/J.COMGEO.2019.01.009.
- [44] FNU Shariful, Justin Weathers, Anirban Ghosh, and Giri Narasimhan. Engineering an algorithm for constructing low-stretch geometric graphs with near-greedy average-degrees. CoRR, 2023. doi:10.48550/arXiv.2305.11312.
- [45] Israel Vite Silva, Nareli Cruz Cortés, Gregorio Toscano Pulido, and Luis Gerardo de la Fraga. Optimal triangulation in 3D computer vision using a multi-objective evolutionary algorithm. In Applications of Evolutinary Computing, EvoWorkshops 2007, volume 4448 of Lecture Notes in Computer Science, pages 330–339. Springer, 2007. doi:10.1007/978-3-540-71805-5_36.
- [46] Victor J. D. Tsai. Delaunay triangulations in TIN creation: An overview and a linear-time algorithm. Int. J. Geogr. Inf. Sci., 7(6):501–524, 1993. doi:10.1080/02693799308901979.
- [47] Chun-Hsien Wu, Kuo-Chuan Lee, and Yeh-Ching Chung. A delaunay triangulation based method for wireless sensor network deployment. Comput. Commun., 30(14-15):2744–2752, 2007. doi:10.1016/J.COMCOM.2007.05.017.
- [48] Ge Xia. The stretch factor of the delaunay triangulation is less than 1.998. SIAM J. Comput., 42(4):1620–1659, 2013. doi:10.1137/110832458.
- [49] Hongyu Zhou, Hongyi Wu, Su Xia, Miao Jin, and Ning Ding. A distributed triangulation algorithm for wireless sensor networks on 2d and 3d surface. In 30th IEEE International Conference on Computer Communications (INFOCOM 2011), pages 1053–1061. IEEE, 2011. doi:10.1109/INFCOM.2011.5934879.