Minimum-weight Triangulation
   HOME

TheInfoList



OR:

In computational geometry and
computer science Computer science is the study of computation, information, and automation. Computer science spans Theoretical computer science, theoretical disciplines (such as algorithms, theory of computation, and information theory) to Applied science, ...
, the minimum-weight triangulation problem is the problem of finding a
triangulation In trigonometry and geometry, triangulation is the process of determining the location of a point by forming triangles to the point from known points. Applications In surveying Specifically in surveying, triangulation involves only angle m ...
of minimal total
edge Edge or EDGE may refer to: Technology Computing * Edge computing, a network load-balancing system * Edge device, an entry point to a computer network * Adobe Edge, a graphical development application * Microsoft Edge, a web browser developed by ...
length. That is, an input polygon or the
convex hull In geometry, the convex hull, convex envelope or convex closure of a shape is the smallest convex set that contains it. The convex hull may be defined either as the intersection of all convex sets containing a given subset of a Euclidean space, ...
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 In computational complexity theory, a computational problem ''H'' is called NP-hard if, for every problem ''L'' which can be solved in non-deterministic polynomial-time, there is a polynomial-time reduction from ''L'' to ''H''. That is, assumi ...
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.


History

The problem of minimum weight triangulation of a point set was posed by , who suggested its application to the construction of
triangulated irregular network In computer graphics, a triangulated irregular network (TIN) is a representation of a continuous surface consisting entirely of triangular facets (a triangle mesh), used mainly as Discrete Global Grid in primary elevation modeling. The verti ...
models of land countours, and used a
greedy heuristic A greedy algorithm is any algorithm that follows the problem-solving heuristic of making the locally optimal choice at each stage. In many problems, a greedy strategy does not produce an optimal solution, but a greedy heuristic can yield locally ...
to approximate it. conjectured that the minimum weight triangulation always coincided with the
Delaunay triangulation In computational geometry, a Delaunay triangulation or Delone triangulation of a set of points in the plane subdivides their convex hull into triangles whose circumcircles do not contain any of the points; that is, each circumcircle has its gen ...
, but this was quickly disproved by , and indeed showed that the weights of the two triangulations can differ by a linear factor. The minimum-weight triangulation problem became notorious when included it in a list of open problems in their book on
NP-completeness In computational complexity theory, NP-complete problems are the hardest of the problems to which ''solutions'' can be verified ''quickly''. Somewhat more precisely, a problem is NP-complete when: # It is a decision problem, meaning that for any ...
, and many subsequent authors published partial results on it. Finally, showed it to be NP-hard, and showed that accurate approximations to it can be constructed efficiently.


Complexity

The weight of a triangulation of a set of points in the
Euclidean plane In mathematics, a Euclidean plane is a Euclidean space of Two-dimensional space, dimension two, denoted \textbf^2 or \mathbb^2. It is a geometric space in which two real numbers are required to determine the position (geometry), position of eac ...
is defined as the sum of lengths of its edges. Its decision variant is the problem of deciding whether there exists a triangulation of weight less than a given weight; it was proven to be
NP-hard In computational complexity theory, a computational problem ''H'' is called NP-hard if, for every problem ''L'' which can be solved in non-deterministic polynomial-time, there is a polynomial-time reduction from ''L'' to ''H''. That is, assumi ...
by . Their proof is by reduction from PLANAR-1-IN-3-SAT, a special case of the
Boolean satisfiability problem In logic and computer science, the Boolean satisfiability problem (sometimes called propositional satisfiability problem and abbreviated SATISFIABILITY, SAT or B-SAT) asks whether there exists an Interpretation (logic), interpretation that Satisf ...
in which a
3-CNF In Boolean algebra, a formula is in conjunctive normal form (CNF) or clausal normal form if it is a conjunction of one or more clauses, where a clause is a disjunction of literals; otherwise put, it is a product of sums or an AND of ORs. In au ...
whose graph is planar is accepted when it has a truth assignment that satisfies exactly one literal in each clause. The proof uses complex
gadgets A gadget is a mechanical device or any ingenious article. Gadgets are sometimes referred to as '' gizmos''. History The etymology of the word is disputed. The word first appears as reference to an 18th-century tool in glassmaking that was dev ...
, and involves computer assistance to verify the correct behavior of these gadgets. It is not known whether the minimum-weight triangulation decision problem is
NP-complete In computational complexity theory, NP-complete problems are the hardest of the problems to which ''solutions'' can be verified ''quickly''. Somewhat more precisely, a problem is NP-complete when: # It is a decision problem, meaning that for any ...
, since this depends on the known open problem whether the
sum of radicals In mathematics, a sum of radicals is defined as a finite linear combination of th roots: :\sum_^n k_i\sqrt _i where n, r_i are natural numbers and k_i, x_i are real numbers. A particular special case arising in computational complexity theory is ...
may be computed in polynomial time. However, Mulzer and Rote remark that the problem is NP-complete if the edge weights are rounded to integer values. Although NP-hard, the minimum weight triangulation may be constructed in subexponential time by a dynamic programming algorithm that considers all possible simple cycle separators of O(\sqrt n) points within the triangulation, recursively finds the optimal triangulation on each side of the cycle, and chooses the cycle separator leading to the smallest total weight. The total time for this method is 2^.


Approximation

Several authors have proven results relating the minimum weight triangulation to other triangulations in terms of the
approximation ratio In computer science and operations research, approximation algorithms are efficient algorithms that find approximate solutions to optimization problems (in particular NP-hard problems) with provable guarantees on the distance of the returned sol ...
, the worst-case ratio of the total edge length of the alternative triangulation to the total length of the minimum weight triangulation. In this vein, it is known that the
Delaunay triangulation In computational geometry, a Delaunay triangulation or Delone triangulation of a set of points in the plane subdivides their convex hull into triangles whose circumcircles do not contain any of the points; that is, each circumcircle has its gen ...
has an approximation ratio of \Theta(n), and that the greedy triangulation (the triangulation formed by adding edges in order from shortest to longest, at each step including an edge whenever it does not cross an earlier edge) has an approximation ratio of \Theta(\sqrt n). Nevertheless, for randomly distributed point sets, both the Delaunay and greedy triangulations are within a logarithmic factor of the minimum weight. The hardness result of Mulzer and Rote also implies the NP-hardness of finding an approximate solution with relative approximation error at most O(1/n2). Thus, a fully polynomial approximation scheme for minimum weight triangulation is unlikely. However, a quasi-polynomial approximation scheme is possible: for any constant a solution with approximation ratio can be found in
quasi-polynomial time In computational complexity theory and the analysis of algorithms, an algorithm is said to take quasi-polynomial time if its time complexity is quasi-polynomially bounded. That is, there should exist a constant c such that the worst-case running ...
exp(O((log ''n'')9).


Heuristics

Because of the difficulty of finding the exact solutions of the minimum-weight triangulation, many authors have studied heuristics that may in some cases find the solution although they cannot be proven to work in all cases. In particular, much of this research has focused on the problem of finding sets of edges that are guaranteed to belong to the minimum-weight triangulation. If a subgraph of the minimum-weight triangulation found in this way turns out to be connected, then the remaining untriangulated space may be viewed as forming a simple polygon, and the entire triangulation may be found by using dynamic programming to find the optimal triangulation of this polygonal space. The same dynamic programming approach can also be extended to the case that the subgraph has a bounded number of connected components and the same approach of finding a connected graph and then applying dynamic programming to fill in the polygonal gaps surrounding the graph edges has also been used as part of heuristics for finding low-weight but not minimum-weight triangulations. The graph formed by connecting two points whenever they are each other's nearest neighbors is necessarily a subgraph of the minimum-weight triangulation. However, this mutual nearest neighbor graph is a matching, and hence is never connected. A related line of research finds large subgraphs of the minimum-weight triangulation by using circle-based ''β''-skeletons, the geometric graphs formed by including an edge between two points ''u'' and ''v'' whenever there does not exist a third point ''w'' forming an angle ''uwv'' greater than some parameter θ. It has been shown that, for sufficiently small values of θ, the graph formed in this way is a subgraph of the minimum-weight triangulation. However, the choice of θ needed to ensure this is smaller than the angle for which the ''β''-skeleton is always connected. A more sophisticated technique called the LMT-skeleton was proposed by . It is formed by an iterative process, in which two sets of edges are maintained, a set of edges known to belong to the minimum-weight triangulation and a set of edges that are candidates to belong to it. Initially, the set of known edges is initialized to the
convex hull In geometry, the convex hull, convex envelope or convex closure of a shape is the smallest convex set that contains it. The convex hull may be defined either as the intersection of all convex sets containing a given subset of a Euclidean space, ...
of the input, and all remaining pairs of vertices form candidate edges. Then, in each iteration of the construction process, candidate edges are removed whenever there is no pair of triangles formed by the remaining edges forming a quadrilateral for which the candidate edge is the shortest diagonal, and candidate edges are moved to the set of known edges when there is no other candidate edge that crosses them. The LMT-skeleton is defined to be the set of known edges produced after this process stops making any more changes. It is guaranteed to be a subgraph of the minimum-weight triangulation, can be constructed efficiently, and in experiments on sets of up to 200 points it was frequently connected. However it has been shown that on the average for large point sets it has a linear number of connected components. Other heuristics that have been applied to the minimum weight triangulation problem include
genetic algorithm In computer science and operations research, a genetic algorithm (GA) is a metaheuristic inspired by the process of natural selection that belongs to the larger class of evolutionary algorithms (EA). Genetic algorithms are commonly used to g ...
s
branch and bound Branch and bound (BB, B&B, or BnB) is a method for solving optimization problems by breaking them down into smaller sub-problems and using a bounding function to eliminate sub-problems that cannot contain the optimal solution. It is an algorithm ...
, and
ant colony optimization algorithms In computer science and operations research, the ant colony optimization algorithm (ACO) is a probabilistic technique for solving computational problems that can be reduced to finding good paths through graphs. Artificial ants represent mul ...
.


Variations

A
polygon triangulation In computational geometry, polygon triangulation is the partition of a polygonal area (simple polygon) into a set of triangles, i.e., finding a set of triangles with pairwise non-intersecting interiors whose union is . Triangulations may ...
of minimal weight may be constructed in cubic time using the dynamic programming approach, reported independently by and . In this method, the vertices are numbered consecutively around the boundary of the polygon, and for each diagonal from vertex ''i'' to vertex ''j'' that lies within the polygon, the optimal triangulation is calculated by considering all possible triangles ''ijk'' within the polygon, adding the weights of the optimal triangulations below the diagonals ''ik'' and ''jk'', and choosing the vertex ''k'' that leads to the minimum total weight. That is, if MWT(''i'',''j'') denotes the weight of the minimum-weight triangulation of the polygon below edge ''ij'', then the overall algorithm performs the following steps: *For each possible value of ''i'', from ''n'' − 1 down to 1, do: **For each possible value of ''j'', from ''i'' + 1 to ''n'', do: ***If ''ij'' is an edge of the polygon, set MWT(''i'',''j'') = length(''ij'') ***Else if ''ij'' is not an interior diagonal of the polygon, set MWT(''i'',''j'') = +∞ ***Else set MWT(''i'',''j'') = length(''ij'') + min''i'' < ''k'' < ''j'' MWT(''i'',''k'') + MWT(''k,j'') After this iteration completes, MWT(1,''n'') will store the total weight of the minimum weight triangulation. The triangulation itself may be obtained by recursively searching through this array, starting from MWT(1,''n''), at each step choosing the triangle ''ijk'' that leads to the minimum value for MWT(''i'',''j'') and recursively searching MWT(''i'',''k'') and MWT(''j'',''k''). Similar dynamic programming methods may also be adapted to point set inputs where all but a constant number of points lie on the
convex hull In geometry, the convex hull, convex envelope or convex closure of a shape is the smallest convex set that contains it. The convex hull may be defined either as the intersection of all convex sets containing a given subset of a Euclidean space, ...
of the input, and to point sets that lie on a constant number of nested convex polygons or on a constant number of lines no two of which cross within the convex hull. It is also possible to formulate a version of the point set or polygon triangulation problems in which one is allowed to add Steiner points, extra vertices, in order to reduce the total edge length of the resulting triangulations. In some cases, the resulting triangulation may be shorter than the minimum weight triangulation by as much as a linear factor. It is possible to approximate the minimum weight Steiner triangulation of a point set to within a constant factor of optimal, but the constant factor in the approximation is large. Related problems that have also been studied include the construction of minimum-weight pseudotriangulations and the characterization of the graphs of minimum-weight triangulations..


Notes


References

*. *. *. *. *. *. *. *. *. *. *. *. As cited by and . *. *. *. *. *. *. *. *. *. *. *. *. *. *. *. *. *. *. *. *. *. *. *. *. *. *. *. *. *. *. *. *. {{refend


External links


Minimum Weight Triangulation using an LMT Skeleton source code
NP-hard problems Triangulation (geometry) Computer-assisted proofs