A simple aggregative algorithm for counting triangulations of planar point sets and related problems

We give an algorithm that determines the number (S) of straight line triangulations of a set S of n points in the plane in worst case time O(n2 2n). This is the the first algorithm that is provably faster than enumeration, since (S) is known to be Ω(2.43n) for any set S of n points. Our algorithm requires exponential space. The algorithm generalizes to counting all triangulations of S that are constrained to contain a given set of edges. It can also be used to compute an optimal triangulation of S (unconstrained or constrained) for a reasonably wide class of optimality criteria (that includes e.g. minimum weight triangulations). Finally, the approach can also be used for the random generation of triangulations of S according to the perfect uniform distribution. The algorithm has been implement and is substantially faster than existing methods on a variety of inputs.

[1]  David Avis,et al.  Reverse Search for Enumeration , 1996, Discret. Appl. Math..

[2]  Emo Welzl,et al.  Counting Plane Graphs with Exponential Speed-Up , 2011, Rainbow of Computer Science.

[3]  Philippe Flajolet,et al.  Analytic combinatorics of non-crossing configurations , 1999, Discret. Math..

[4]  Oswin Aichholzer The path of a triangulation , 1999, SCG '99.

[5]  Micha Sharir,et al.  Counting Plane Graphs: Cross-Graph Charging Schemes , 2012, Graph Drawing.

[6]  Micha Sharir,et al.  Counting Triangulations of Planar Point Sets , 2009, Electron. J. Comb..

[7]  Micha Sharir,et al.  Counting plane graphs: Perfect matchings, spanning cycles, and Kasteleyn's technique , 2013, J. Comb. Theory, Ser. A.

[8]  Errol L. Lloyd On triangulations of a set of points in the plane , 1977, 18th Annual Symposium on Foundations of Computer Science (sfcs 1977).

[9]  Ferran Hurtado,et al.  On the number of plane graphs , 2006, SODA '06.

[10]  E. Szemerédi,et al.  Crossing-Free Subgraphs , 1982 .

[11]  Raimund Seidel,et al.  A simple and less slow method for counting triangulations and for related problems , 2004 .

[12]  Micha Sharir,et al.  On degrees in random triangulations of point sets , 2011, J. Comb. Theory, Ser. A.

[13]  Kevin Buchin,et al.  On the Number of Spanning Trees a Planar Graph Can Have , 2009, ESA.

[14]  Micha Sharir,et al.  On the number of crossing-free matchings, (cycles, and partitions) , 2006, SODA '06.

[15]  Sanjay Ghemawat,et al.  MapReduce: Simplified Data Processing on Large Clusters , 2004, OSDI.

[16]  André Schulz The Existence of a Pseudo-triangulation in a given Geometric Graph , 2006 .

[17]  Sergei Bespamyatnikh,et al.  An efficient algorithm for enumeration of triangulations , 2002 .

[18]  J. D. Loera,et al.  Triangulations: Structures for Algorithms and Applications , 2010 .

[19]  N. S. Barnett,et al.  Private communication , 1969 .

[20]  Karl Bringmann,et al.  Counting crossing-free structures , 2012, SoCG '12.

[21]  Shin-ichi Tanigawa,et al.  Fast enumeration algorithms for non-crossing geometric graphs , 2008, SCG '08.

[22]  Karl Bringmann,et al.  A Simple Sweep Line Algorithm for Counting Triangulations and Pseudo-triangulations , 2013, ArXiv.

[23]  Marc Noy,et al.  Lower bounds on the number of crossing-free subgraphs of KN , 2000, Comput. Geom..

[24]  Raimund Seidel,et al.  New lower bounds for the number of straight-edge triangulations of a planar point set , 2004 .

[25]  Csaba D. Tóth,et al.  Counting Plane Graphs: Flippability and Its Applications , 2011, WADS.

[26]  Franz Aurenhammer,et al.  Convexity minimizes pseudo-triangulations , 2002, CCCG.

[27]  Raimund Seidel,et al.  On the Number of Cycles in Planar Graphs , 2007, COCOON.