643 research outputs found

    Counting Triangulations and other Crossing-Free Structures Approximately

    Full text link
    We consider the problem of counting straight-edge triangulations of a given set PP of nn points in the plane. Until very recently it was not known whether the exact number of triangulations of PP can be computed asymptotically faster than by enumerating all triangulations. We now know that the number of triangulations of PP can be computed in O∗(2n)O^{*}(2^{n}) time, which is less than the lower bound of Ω(2.43n)\Omega(2.43^{n}) on the number of triangulations of any point set. In this paper we address the question of whether one can approximately count triangulations in sub-exponential time. We present an algorithm with sub-exponential running time and sub-exponential approximation ratio, that is, denoting by Λ\Lambda the output of our algorithm, and by cnc^{n} the exact number of triangulations of PP, for some positive constant cc, we prove that cn≀Λ≀cn⋅2o(n)c^{n}\leq\Lambda\leq c^{n}\cdot 2^{o(n)}. This is the first algorithm that in sub-exponential time computes a (1+o(1))(1+o(1))-approximation of the base of the number of triangulations, more precisely, c≀Λ1n≀(1+o(1))cc\leq\Lambda^{\frac{1}{n}}\leq(1 + o(1))c. Our algorithm can be adapted to approximately count other crossing-free structures on PP, keeping the quality of approximation and running time intact. In this paper we show how to do this for matchings and spanning trees.Comment: 19 pages, 2 figures. A preliminary version appeared at CCCG 201

    A QPTAS for the Base of the Number of Triangulations of a Planar Point Set

    Full text link
    The number of triangulations of a planar n point set is known to be cnc^n, where the base cc lies between 2.432.43 and 30.30. The fastest known algorithm for counting triangulations of a planar n point set runs in O∗(2n)O^*(2^n) time. The fastest known arbitrarily close approximation algorithm for the base of the number of triangulations of a planar n point set runs in time subexponential in n.n. We present the first quasi-polynomial approximation scheme for the base of the number of triangulations of a planar point set

    Counting and Enumerating Crossing-free Geometric Graphs

    Full text link
    We describe a framework for counting and enumerating various types of crossing-free geometric graphs on a planar point set. The framework generalizes ideas of Alvarez and Seidel, who used them to count triangulations in time O(2nn2)O(2^nn^2) where nn is the number of points. The main idea is to reduce the problem of counting geometric graphs to counting source-sink paths in a directed acyclic graph. The following new results will emerge. The number of all crossing-free geometric graphs can be computed in time O(cnn4)O(c^nn^4) for some c<2.83929c < 2.83929. The number of crossing-free convex partitions can be computed in time O(2nn4)O(2^nn^4). The number of crossing-free perfect matchings can be computed in time O(2nn4)O(2^nn^4). The number of convex subdivisions can be computed in time O(2nn4)O(2^nn^4). The number of crossing-free spanning trees can be computed in time O(cnn4)O(c^nn^4) for some c<7.04313c < 7.04313. The number of crossing-free spanning cycles can be computed in time O(cnn4)O(c^nn^4) for some c<5.61804c < 5.61804. With the same bounds on the running time we can construct data structures which allow fast enumeration of the respective classes. For example, after O(2nn4)O(2^nn^4) time of preprocessing we can enumerate the set of all crossing-free perfect matchings using polynomial time per enumerated object. For crossing-free perfect matchings and convex partitions we further obtain enumeration algorithms where the time delay for each (in particular, the first) output is bounded by a polynomial in nn. All described algorithms are comparatively simple, both in terms of their analysis and implementation

    Counting Polygon Triangulations is Hard

    Get PDF
    We prove that it is #P-complete to count the triangulations of a (non-simple) polygon

    Peeling and Nibbling the Cactus: Subexponential-Time Algorithms for Counting Triangulations and Related Problems

    Get PDF
    Given a set of n points S in the plane, a triangulation T of S is a maximal set of non-crossing segments with endpoints in S. We present an algorithm that computes the number of triangulations on a given set of n points in time n^{ (11+ o(1)) sqrt{n} }, significantly improving the previous best running time of O(2^n n^2) by Alvarez and Seidel [SoCG 2013]. Our main tool is identifying separators of size O(sqrt{n}) of a triangulation in a canonical way. The definition of the separators are based on the decomposition of the triangulation into nested layers ("cactus graphs"). Based on the above algorithm, we develop a simple and formal framework to count other non-crossing straight-line graphs in n^{O(sqrt{n})} time. We demonstrate the usefulness of the framework by applying it to counting non-crossing Hamilton cycles, spanning trees, perfect matchings, 3-colorable triangulations, connected graphs, cycle decompositions, quadrangulations, 3-regular graphs, and more

    Selected topics in algorithmic geometry

    Get PDF
    Let P be a set of n points on the plane with no three points on a line. A crossing-free structure on P is a straight-edge plane graph whose vertex set is P. In this thesis we consider problems of two different topics in the area of algorithmic geometry: Geometry using Steiner points, and counting algorithms. These topics have certain crossing-free structures on P as our primary objects of study. Our results can roughly be described as follows: i) Given a k-coloring of P, with k >= 3 colors, we will show how to construct a set of Steiner points S = S(P) such that a k-colored quadrangulation can always be constructed on (P U S). The bound we show of |S| significantly improves on previously known results. ii) We also show how to construct a se S = S(P) of Steiner points such that a triangulation of (P U S) having all its vertices of even (odd) degree can always be constructed. We show that |S| <= n/3 + c, where c is a constant. We also look at other variants of this problem. iii) With respect to counting algorithms, we show new algorithms for counting triangulations, pseudo-triangulations, crossing-free matchings and crossing-free spanning cycles on P. Our algorithms are simple and allow good analysis of their running times. These algorithms significantly improve over previously known results. We also show an algorithm that counts triangulations approximately, and a hardness result of a particular instance of the problem of counting triangulations exactly. iv) We show experiments comparing our algorithms for counting triangulations with another well-known algorithm that is supposed to be very fast in practice.Sei P eine Menge von n Punkte in der Ebene, so dass keine drei Punkten auf einer Geraden liegen. Eine kreuzungsfreie Struktur von P ist ein geradliniger ebener Graph, der P als Knotenmenge hat. In dieser Dissertation behandeln wir zwei verschiedene Problemkreise auf dem Gebiet der algorithmischen Geometrie: Geometrie mit Steinerpunkten und Anzahl bestimmende Algorithmen auf P und auf gewissen kreuzungsfreien Strukturen von P. Unsere Resultate können wie folgt beschrieben werden: i) Gegeben sei eine k-FĂ€rbung von P, mit k >= 3 Farben. Es wird gezeigt, wie eine Menge S = S(P) von Steiner Punkten konstruiert werden kann, die die Konstruktion einer k-gefĂ€rbten Quadrangulierung von (P U S) ermöglicht. Die von uns gezeigte Schranke fĂŒr |S| verbessert die bisher bekannte Schranke. ii) Gezeigt wird auch die Konstruktion einer Menge S = S(P) von Steiner Punkten, so dass eine Triangulierung von (P U S) konstruiert werden kann, bei der der Grad aller Knoten gerade (ungerade) ist. Wir zeigen, dass |S| <= n/3 + c möglich ist, wobei c eine Konstante ist. Wir betrachten auch andere Varianten dieses Problems. iii) Was die Anzahl bestimmenden Algorithmen betrifft, zeigen wir neue Algorithmen, um Triangulierungen, Pseudotriangulierungen, kreuzungsfreie Matchings und kreuzungsfreie aufspannende Zyklen von P zu zĂ€hlen. Unsere Algorithmen sind einfach und lassen eine gute Analyse der Laufzeiten zu. Diese neuen Algorithmen verbessern wesentlich die bisherigen Ergebnisse. Weiter zeigen wir einen Algorithmus, der Triangulierungen approximativ zĂ€hlt, und bestimmen die KomplexitĂ€tsklasse einer bestimmten Variante des Problems des exakten ZĂ€hlens von Triangulierungen. iv) Wir zeigen Experimente, die unsere triangulierungszĂ€hlenden Algorithmen mit einem anderen bekannten Algorithmus vergleichen, der in der Praxis als besonders schnell bekannt ist

    Peeling and nibbling the cactus: Subexponential-time algorithms for counting triangulations and related problems

    Get PDF
    Given a set of nn points SS in the plane, a triangulation TT of SS is a maximal set of non-crossing segments with endpoints in SS. We present an algorithm that computes the number of triangulations on a given set of nn points in time n(11+o(1))nn^{(11+ o(1))\sqrt{n} }, significantly improving the previous best running time of O(2nn2)O(2^n n^2) by Alvarez and Seidel [SoCG 2013]. Our main tool is identifying separators of size O(n)O(\sqrt{n}) of a triangulation in a canonical way. The definition of the separators are based on the decomposition of the triangulation into nested layers ("cactus graphs"). Based on the above algorithm, we develop a simple and formal framework to count other non-crossing straight-line graphs in nO(n)n^{O(\sqrt{n})} time. We demonstrate the usefulness of the framework by applying it to counting non-crossing Hamilton cycles, spanning trees, perfect matchings, 33-colorable triangulations, connected graphs, cycle decompositions, quadrangulations, 33-regular graphs, and more.Comment: 47 pages, 23 Figures, to appear in SoCG 201
    • 

    corecore