本期要文(可全文下载)

分治法在GIS多边形快速合并算法中的应用及效率提升评价模型

展开
  • 1. 中国科学院地理科学与资源研究所 资源与环境信息系统国家重点实验室, 北京 100101;
    2. 中国科学院大学, 北京 100049
范俊甫(1985- ),男,博士生,研究方向为并行空间分析算法和遥感信息提取等。E-mail:fanjf@lreis.ac.cn

收稿日期: 2013-05-27

  修回日期: 2013-09-23

  网络出版日期: 2014-03-10

基金资助

国家科技支撑计划项目(2011BAH06B03、2011BAH24B10);中国科学院重点部署项目(KZZD-EW-07)。

Application of Divide-and-Conquer Method and Efficiency Evaluation Model in the Fast Union Algorithm of Polygons in GIS

Expand
  • 1. State Key Laboratory of Resources and Environmental Information System, Institute of Geographic and Nature Resources Research, CAS, Beijing 100101, China;
    2. University of Chinese Academy of Sciences, Beijing 100049, China

Received date: 2013-05-27

  Revised date: 2013-09-23

  Online published: 2014-03-10

摘要

分治法采用分解-解决-合并的问题处理模式,应用于多边形合并算法能规避结点累积效应,与经典的“滚雪球”处理模式相比能有效提升多边形合并算法的计算效率。本文以多边形合并算法为研究对象,首先通过分析基于Vatti算法实现的多边形合并算子的效率相对于多边形顶点数的变化特征,指出合并过程中的结点累积效应是“滚雪球”多边形合并模式的潜在性能瓶颈和隐患。考虑分治法的“分而治之”思想在解决多边形合并问题上的适用性以及在归并排序算法中表现出的高效率,提出分治法的多边形“树状”合并处理模式,实现了面向要素集合或者要素层的多边形快速合并算法,最后给出了面向多边形合并的算法效率提升评价模型。实验结果显示,当仅有400个多边形时,“滚雪球”模式的时间开销约是“树状”合并模式的26倍,当需要合并11 200个多边形时,前者的时间开销约是后者的926倍。因此,基于分治法的多边形树状合并策略是对多边形合并算法以及应用到多边形合并算法的高级空间分析算法进行优化的可行途径。

本文引用格式

范俊甫, 马廷, 周成虎, 周玉科, 许涛 . 分治法在GIS多边形快速合并算法中的应用及效率提升评价模型[J]. 地球信息科学学报, 2014 , 16(2) : 158 -164 . DOI: 10.3724/SP.J.1047.2014.00158

Abstract

Vector data overlay analysis methods, with the most difficult and tricky core issue of overlapping between polygons, are the basic analysis approaches for many spatial analysis algorithms in Geography Information System (GIS) software and also the basis for many advanced spatial analysis models and complex spatial analysis applications. The divide and conquer strategy, with the paradigm of divide-conquer-combine for problem solving, can reduce the cumulative effects of nodes of the polygon union results at average level. And, compared with classic snowball union strategy, it can accelerate the polygon union algorithm effectively. In this research, we took the polygon union algorithm as an example to describe a fast polygon union strategy named tree-like union method. Firstly, we analyzed the variation of the efficiency of the core operator, which is polygon union operation implemented by Vatti's algorithm, with different node number of polygons, and figured out that the potential performance bottlenecks and pitfalls of the snowball union strategy is the cumulative effect of the nodes existing in the union process. Then based on the idea of divide and conquer we proposed a new approach named tree-like union strategy and implemented a union algorithm for polygon clusters or layers to solve the problem in polygon union process. Finally, we introduced an efficiency evaluate model by which the available acceleration potentiality derived from the tree-like union strategy can be assessed conveniently for a group of polygons. Experimental results in this research shown that compared with snowball union strategy, the tree-like union strategy based on the idea of divide and conquer could lead to great reduction of time costs of polygon union algorithm. Furthermore, we found that the time cost of snowball union was about 26-folds than that of tree-like method when union 400 polygons, and the number reached about 926 when union 11 200 polygons. Therefore, it can be inferred that the accelerate effects brought by the tree-like union strategy could become more significant when dealing with larger polygon datasets. We supposed that the tree-like union strategy proposed in this research represents a certain degree of applicability in operations similar with polygon union algorithm, which could be a potential and practical optimization approach for vector data overlapping and other advanced spatial analysis algorithms which involved with polygon union operations.

参考文献

[1] 陈述彭,鲁学军,周成虎.地理信息系统导论[M].北京:科学出版社,1999.

[2] Goodchild M F. Statistical aspects of the polygon overlay problem[M]. Harvard Papers on Geographic Information Systems. Reading, MA, USA: Addison-Wesley Publishing Company, 1977:6.

[3] 吴信才.地理信息系统原理、方法及应用[M].北京:电子工业出版社,2002.

[4] 陈占龙,吴信才,吴亮.基于单调链和STR树的简单要素模型多边形叠置分析算法[J].测绘学报,2010,39(1):102-108.

[5] Environmental Systems Research Institute, Inc. ESRI Shapefile Technical Description[EB/OL]. Jul 1998. http://www.esri.com/library/whitepapers/pdfs/shapefile.pdf

[6] Sutherland I E, Hodgman G W. Reentrant polygon clipping[J]. Communications of the ACM, 1974(17):32-42.

[7] Weiler K, Atherton P. Hidden surface removal using polygon area sorting[J]. Computer Graphics, 1977,11(2):214-222.

[8] Vatti B R. A generic solution to polygon clipping[J]. Communications of the ACM, 1992,35(7):56-63.

[9] Greiner G, Hormann K. Efficient clipping of arbitrary polygons[J]. ACM Transactions on Graphics, 1998,17(2):71-83.

[10] Murta A. A generic polygon clipping library [EB/OL]. 1998. http://www.cs.man.ac.uk/~toby/alan/software/gpc.html. [2012-11-28]

[11] 刘勇奎,高云,黄有群.一个有效的多边形裁剪算法[J].软件学报,2003,14(4):845-856.

[12] 王结臣,沈定涛,陈焱明,等.一种有效的复杂多边形裁剪算法[J].武汉大学学报(信息科学版),2010,35(3):369-372.

[13] 彭杰,刘南,唐远彬,等.一种基于交点排序的高效多边形裁剪算法[J].浙江大学学报(理学版),2012,39(1):107-111.

[14] 刘术华,周云燕,曹立强,等.一种基于矢量游走的复域多边形合并算法[J].微计算机应用,2011,32(6):1-7.

[15] 陈占龙,吴亮,刘焕焕.多核环境下Hilbert曲线划分简单要素多边形合并算法[J].计算机应用研究,2012,29(7):2747-2750.

[16] Cormen T H, Leiserson C E, Rivest R L, et al. Introduction to algorithms (Second Edition)[M]. Cambridge, Massachusetts London, England: The MIT Press, 2001.

[17] Bentley J L, Shamos M I. Divide-and-conquer in multidimensional space[C]. Proceedings of the Eighth Annual ACM Symposium on Theory of Computing (Proceeding STOC '76), 1976,220-230.

[18] Dwyer R A. A faster divide-and-conquer algorithm for constructing Delaunay Triangulations[J]. Algorithmica, 1987, 2(2):137-151.

[19] Oracle Corporation and/or its affiliates. MySQL 5.6 Manual[EB\OL].http://dev.mysql.com/doc/refman/5.6/en/functions-for-testing-spatial-relations-between-geometric-objects.html, 2013.

[20] Guttman A. R-trees: A dynamic index structure for spatial searching[C]. Proceedings of ACM SIGMOD Conference on Management of Data, New York, ACM Press, 1984,47-57.

文章导航

/