Efficient Yao Graph Construction

Authors Daniel Funke, Peter Sanders

Thumbnail PDF


  • Filesize: 7.87 MB
  • 20 pages

Document Identifiers

Author Details

Daniel Funke
  • Karlsruhe Institute of Technology, Germany
Peter Sanders
  • Karlsruhe Institute of Technology, Germany

Cite AsGet BibTex

Daniel Funke and Peter Sanders. Efficient Yao Graph Construction. In 21st International Symposium on Experimental Algorithms (SEA 2023). Leibniz International Proceedings in Informatics (LIPIcs), Volume 265, pp. 20:1-20:20, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2023)


Yao graphs are geometric spanners that connect each point of a given point set to its nearest neighbor in each of k cones drawn around it. Yao graphs were introduced to construct minimum spanning trees in d dimensional spaces. Moreover, they are used for instance in topology control in wireless networks. An optimal 𝒪(n log n)-time algorithm to construct Yao graphs for a given point set has been proposed in the literature but - to the best of our knowledge - never been implemented. Instead, algorithms with a quadratic complexity are used in popular packages to construct these graphs. In this paper we present the first implementation of the optimal Yao graph algorithm. We engineer the data structures required to achieve the 𝒪(n log n) time bound and detail algorithmic adaptations necessary to take the original algorithm from theory to practice. We propose a priority queue data structure that separates static and dynamic events and might be of independent interest for other sweepline algorithms. Additionally, we propose a new Yao graph algorithm based on a uniform grid data structure that performs well for medium-sized inputs. We evaluate our implementations on a wide variety of synthetic and real-world datasets and show that our implementation outperforms current publicly available implementations by at least an order of magnitude.

Subject Classification

ACM Subject Classification
  • Theory of computation → Sparsification and spanners
  • computational geometry
  • geometric spanners
  • Yao graphs
  • sweepline algorithms
  • optimal algorithms


  • Access Statistics
  • Total Accesses (updated on a weekly basis)
    PDF Downloads


  1. Georgy Maksimovich Adelson-Velsky and Evgeny Mikhailovich Landis. An algorithm for organization of information. In Doklady Akademii Nauk, volume 146, pages 263-266. Russian Academy of Sciences, 1962. Google Scholar
  2. V. Akman, W.R. Franklin, M. Kankanhalli, and C. Narayanaswami. Geometric computing and uniform grid technique. Computer-Aided Design, 21(7):410-420, 1989. URL: https://doi.org/10.1016/0010-4485(89)90125-5.
  3. Luis Barba, Prosenjit Bose, Mirela Damian, Rolf Fagerberg, Wah Loon Keng, Joseph O'Rourke, André Van Renssen, Perouz Taslakian, Sander Verdonschot, and Ge Xia. New and improved spanning ratios for Yao graphs. Journal of Computational Geometry, 6(2):19-53, 2015. URL: https://doi.org/10.20382/JOCG.V6I2A3.
  4. J. L. Bentley and T. A. Ottmann. Algorithms for reporting and counting geometric intersections. IEEE Transactions on Computers, pages 643-647, 1979. Google Scholar
  5. Hervé Brönnimann, Andreas Fabri, Geert-Jan Giezeman, Susan Hert, Michael Hoffmann, Lutz Kettner, Sylvain Pion, and Stefan Schirra. 2D and 3D Linear Geometry Kernel. In CGAL User and Reference Manual. CGAL Editorial Board, 5.5.1 edition, 2022. URL: https://doc.cgal.org/5.5.1/Manual/packages.html#PkgKernel23.
  6. Maw Shang Chang, Nen-Fu Huang, and Chuan-Yi Tang. An optimal algorithm for constructing oriented Voronoi diagrams and geographic neighborhood graphs. Information Processing Letters, 35(5):255-260, 1990. URL: https://doi.org/10.1016/0020-0190(90)90054-2.
  7. Gaia Collaboration. Gaia Data Release 2 - Summary of the contents and survey properties. Astronomy & Astrophysics, 616:A1, 2018. URL: https://doi.org/10.1051/0004-6361/201833051.
  8. Mirela Damian and Naresh Nelavalli. Improved bounds on the stretch factor of Y4. Computational Geometry, 62:14-24, April 2017. URL: https://doi.org/10.1016/j.comgeo.2016.12.001.
  9. Camil Demetrescu, Andrew V Goldberg, and David S Johnson. The shortest path problem: Ninth DIMACS implementation challenge, volume 74. American Mathematical Soc., 2009. Google Scholar
  10. Steven Fortune. A sweepline algorithm for Voronoi diagrams. Algorithmica, 2(1):153-174, 1987. Google Scholar
  11. Daniel Funke and Peter Sanders. Efficient Yao Graph Construction, 2023. URL: https://arxiv.org/abs/2303.07858.
  12. Daniel Funke, Peter Sanders, and Vincent Winkler. Load-Balancing for Parallel Delaunay Triangulations. In Ramin Yahyapour, editor, Euro-Par 2019: Parallel Processing, pages 156-169, Cham, 2019. Springer International Publishing. Google Scholar
  13. Giri Narasimhan and Michiel Smid. Geometric spanner networks. Cambridge University Press, 2007. Google Scholar
  14. Christian Schindelhauer, Klaus Volbert, and Martin Ziegler. Geometric spanners with applications in wireless networks. Computational Geometry, 36(3):197-214, 2007. Google Scholar
  15. Weisheng Si, Quincy Tse, and Frédérik Paradis. Cone-Based Spanners. In CGAL User and Reference Manual. CGAL Editorial Board, 5.4 edition, 2022. URL: https://doc.cgal.org/5.4/Manual/packages.html#PkgConeSpanners2.
  16. Svetlana Štrbac-Savić and Milo Tomašević. Comparative performance evaluation of the AVL and red-black trees. In Proceedings of the Fifth Balkan Conference in Informatics. ACM, 2012. URL: https://doi.org/10.1145/2371316.2371320.
  17. Andrew Chi-Chih Yao. On Constructing Minimum Spanning Trees in k-Dimensional Spaces and Related Problems. SIAM Journal on Computing, 11(4):721-736, 1982. URL: https://doi.org/10.1137/0211059.
  18. Xiujuan Zhang, Jiguo Yu, Wei Li, Xiuzhen Cheng, Dongxiao Yu, and Feng Zhao. Localized Algorithms for Yao Graph-Based Spanner Construction in Wireless Networks Under SINR. IEEE/ACM Transactions on Networking, 25(4):2459-2472, 2017. URL: https://doi.org/10.1109/TNET.2017.2688484.