中文

海量网格地形上可见性计算的 I/O 高效算法比较

数据结构与算法 2018-10-05 v1

摘要

给定一个网格地形 T 和一个视点 v,v 的视域是从 v 可见的 T 的网格点集合。要判断一个点 p 是否可见,需要沿视线 vp 插值地形的高程。现有的视域算法在所选插值点以及地形插值方式上差异很大。这些选择关键地影响了算法的运行时间和精度。本文描述了在几种不同模型中计算可见性图的 I/O 高效算法。首先,我们描述了两种算法,它们通过绕视点旋转一条射线来扫描地形,同时维护沿该射线的地形剖面。其次,我们描述了一种离心式扫描地形的算法,围绕视点生长一个星型区域,同时维护已扫描区域内地形的近似可见地平线。我们最后的两种算法基于计算和合并地平线。所有算法在 Aggarwal 和 Vitter 的 I/O 模型中都是 I/O 高效的。我们在来自 NASA SRTM 数据的大型地形上进行了实验分析。我们的所有算法都可扩展到超过主存 50 倍以上的数据量。我们的主要发现是,在实践中,地平线显著小于其理论最坏情况界,这使得基于地平线的方法非常快。我们最后的两种算法计算出最精确的视域,尽管其最坏情况界较差,但在实践中非常快。

关键词

引用

@article{arxiv.1810.01946,
  title  = {A Comparison of I/O-Efficient Algorithms for Visibility Computation on Massive Grid Terrains},
  author = {Herman Haverkort and Laura Toma},
  journal= {arXiv preprint arXiv:1810.01946},
  year   = {2018}
}

备注

38 pages, 12 figures; This is the full version cumulating two conference papers that appeared in ACM SIGSPATIAL GIS 2009 and ACM SIGSPATIAL GIS 2013. Does not contain new results, only contains more detailed pseudocode, analysis, proofs and plots. Written in 2014/2015. Has not been published and is not under review