An Output Sensitive Algorithm for Computing Visibility Graphs

The visibility graph of a set of nonintersecting polygonal obstacles in the plane is an undirected graph whose vertices are the vertices of the obstacles and whose edges are pairs of vertices (u, v) such that the open line segment between u and v does not intersect any of the obstacles. The visibility graph is an important combinatorial structure in computational geometry and is used in applications such as solving visibility problems and computing shortest paths. An algorithm is presented that computes the visibility graph of s set of obstacles in time O(E + n log n), where E is the number of edges in the visibility graph and n is the total number of vertices in all the obstacles.

[1]  Leonidas J. Guibas,et al.  A new representation for linear lists , 1977, STOC '77.

[2]  Robert E. Tarjan,et al.  Fibonacci heaps and their uses in improved network optimization algorithms , 1984, JACM.

[3]  John Hershberger,et al.  Finding the visibility graph of a simple polygon in time proportional to its size , 1987, SCG '87.

[4]  Kurt Mehlhorn,et al.  Data Structures and Algorithms 1: Sorting and Searching , 2011, EATCS Monographs on Theoretical Computer Science.

[5]  Jeffrey D. Ullman,et al.  Set Merging Algorithms , 1973, SIAM J. Comput..

[6]  Mark H. Overmars,et al.  New methods for computing visibility graphs , 1988, SCG '88.

[7]  Robert E. Tarjan,et al.  A linear-time algorithm for a special case of disjoint set union , 1983, J. Comput. Syst. Sci..

[8]  Kurt Mehlhorn,et al.  Data structures and algorithms. Volume 1 : Sorting and searching , 1984 .

[9]  Kurt Mehlhorn,et al.  Data Structures and Algorithms 3: Multi-dimensional Searching and Computational Geometry , 2012, EATCS Monographs on Theoretical Computer Science.

[10]  S. N. Maheshwari,et al.  Efficient algorithms for Euclidean shortest path and visibility problems with polygonal obstacles , 1988, SCG '88.

[11]  Leonidas J. Guibas,et al.  Linear time algorithms for visibility and shortest path problems inside simple polygons , 2011, SCG '86.

[12]  John Canny,et al.  The complexity of robot motion planning , 1988 .

[13]  Steven Fortune,et al.  A sweepline algorithm for Voronoi diagrams , 1986, SCG '86.

[14]  Emo WELZL,et al.  Constructing the Visibility Graph for n-Line Segments in O(n²) Time , 1985, Inf. Process. Lett..

[15]  Prof. Dr. Kurt Mehlhorn,et al.  Data Structures and Algorithms 1 , 1984, EATCS.

[16]  M. H. Overmars Construction of sparse visibility graphs , 1987 .

[17]  Alfred V. Aho,et al.  Data Structures and Algorithms , 1983 .

[18]  Kenneth L. Clarkson,et al.  New applications of random sampling in computational geometry , 1987, Discret. Comput. Geom..

[19]  David M. Mount,et al.  An output sensitive algorithm for computing visibility graphs , 1987, 28th Annual Symposium on Foundations of Computer Science (sfcs 1987).

[20]  Micha Sharir,et al.  On shortest paths in polyhedral spaces , 1986, STOC '84.

[21]  Raimund Seidel,et al.  Voronoi diagrams and arrangements , 1985, SCG '85.

[22]  Kenneth L. Clarkson,et al.  A Las Vegas algorithm for linear programming when the dimension is small , 1988, [Proceedings 1988] 29th Annual Symposium on Foundations of Computer Science.

[23]  Kenneth L. Clarkson,et al.  Applications of random sampling in computational geometry, II , 1988, SCG '88.

[24]  D. T. Lee,et al.  Euclidean shortest paths in the presence of rectilinear barriers , 1984, Networks.

[25]  Kevin Q. Brown,et al.  Voronoi Diagrams from Convex Hulls , 1979, Inf. Process. Lett..

[26]  Der-Tsai Lee Proximity and reachability in the plane. , 1978 .

[27]  Bernard Chazelle,et al.  A deterministic view of random sampling and its use in geometry , 1988, [Proceedings 1988] 29th Annual Symposium on Foundations of Computer Science.

[28]  Tomás Lozano-Pérez,et al.  An algorithm for planning collision-free paths among polyhedral obstacles , 1979, CACM.