一种高效分布式与并行Delaunay三角形构建方法与流程

文档序号:12364698阅读:1446来源:国知局
一种高效分布式与并行Delaunay三角形构建方法与流程

本发明涉及Delaunay三角网的构建,具体地说,涉及一种融合分治和凸壳技术的高效分布式与并行Delaunay三角形构建方法。



背景技术:

Delaunay三角网(D-TIN)是地理信息系统(GIS)数据表达、管理、集成和可视化的一项重要内容,也是地学分析、计算机视觉处理、目标表面重构、有限元分析、道路CAD技术等领域的一项重要的应用技术。很多研究人员对Delaunay三角网的构建进行了大量的研究,在算法实现方面已提出了几种较为成熟的方法,如逐点插入法(Incremental)、三角网生长法、分治法(Divide and Conquer)和凸包法等。

随着数据集规模的剧增,很多D-TIN构建算法的效率常常无法令人满意,分布式与并行Delaunay三角网构建成为问题解决的候选途径之一,研究人员基于分治法提出了分布式与并行Delaunay三角网构建的解决方案。然而,由于分治算法自身机制的限制,算法必须对问题进行递归划分,直到子问题的规模小于3(对象数目),然后递归进行子问题解的合并,直到获得问题的整体解。

对于规模为n的Delaunay三角网构建任务,现有基于分治法的分布式与并行方法不可避免地存在以下两个问题:(1)不考虑网络调度的CPU开销和数据传输的通信带宽和时间的花费,需要具备足够多的分布式与并行计算节点,才能保证分布式与并行计算方法的所有叶子问题(2(log2n-1)个)实现并行计算,从而获得理论上效率最高的求解方案。现有方法的运行对硬件和网络环境的要求较为苛刻,无法应用于中小规模的分布式与并行计算环境,难于进行实际应用;(2)如果考虑网络调度的CPU开销和数据传输带宽和时间花费,由于算法递归进行问题划分直到子问题的规模小于3,产生了大量子问题的数据传输和网络调度,明显降低了算法的求解效率。

因此。从计算效率和算法实际应用两个方面看,现有的分布式与并行计算方法,都不适用于实际大数据环境下的分布式与并行Delaunay三角网构建。



技术实现要素:

本发明的目的在于克服上述技术存在的缺陷,提供一种高效分布式与并行Delaunay三角形构建方法。采用剪枝完全二叉树的网络拓扑结构进行分布式与并行Delaunay三角网求解,简称Hybrid-DTIN(High Efficient Algorithm for Parallell and Distributed D-TIN Computing with Divided&Conquer and Convex-hull Approach)。首先,根据分布式与并行计算环境的规模p(可获得的计算节点的数目),确定问题S求解递归划分的次数k和叶子问题的数目2k(其中2k<p且2k+1>p,即子问题的数目少于可获得的并行计算节点的数目,且2k为二叉树模式下最大允许的并行计算规模);然后,按平面扫描序的方式(X轴为主序,Y轴为辅序)对规模为n的待求解问题对应的数据集进行排序。紧接着,采用分治法的划分策略,自顶向下逐步划分,将规模为n的待求解问题递归划分,直到获得2k个叶子问题;再接着,对2k个叶子问题,采用凸壳法进行子问题的Delaunay三角网构建。最后,采用分治法的合并策略,自底向上逐步合并子问题的解,直到获得全局问题S的整体解。

其具体技术方案为:

一种高效分布式与并行Delaunay三角形构建方法,包括以下步骤:

步骤1:根据分布式与并行计算环境的规模p,确定问题求解递归划分的次数k和叶子问题的数目2k,p为可获得的计算节点的数目,其中2k<p且2k+1>p,即子问题的数目少于可获得的并行计算节点的数目,且2k为二叉树模式下最大允许的并行计算规模;

步骤2:按平面扫描序的方式对规模为n的待求解问题对应的数据集进行排序,X轴为主序,Y轴为辅序;

步骤3:采用分治法的划分策略,自顶向下逐步划分,将规模为n的待求解问题递归k划分为2k个叶子问题;

步骤4:对2k个叶子问题,使用2k个并行计算节点进行子问题的凸壳法Delaunay三角网并行构建;

步骤5:采用分治法的合并策略,自底向上逐步合并子问题的解,直到获得全局问题S的整体解。

进一步,步骤3~5的执行结构具体为:首先,采用分治法的划分策略,自顶向下,将规模为n的待求解问题S划分为2k个问题,2k记为m;然后,使用m个计算节点进行m个子问题的分布式与并行处理;最后,采用分治法的合并策略,在同步通信的控制下,自底向上逐步合并,每次合并都使用子问题数目(t个)一半的计算节点进行分布式与并行合并处理,直到获得全局问题的整体解。

与现有技术相比,本发明的有益效果:

本发明对于规模为n的数据集S,由于Delaunay三角网构建的分治法和凸壳法的时间复杂度皆为nlogn,因此,融合分治和凸壳两种方法的算法的时间复杂度仍为nlogn。串行计算环境中,提出的算法的运行效率并没有明显的提高。然而,在分布式与并行计算网络环境下,由于问题递归求解的层数和相应的叶节点问题的数目得到了一定的抑制,提出的算法,一方面,降低了对分布式与并行计算环境节点规模的要求,提高了算法的适用性。另一方面,由于子问题数量的降低,网络调度和数据传输的CPU开销获得相应的减少,分布式与并行计算方法的效率得到了明显的提高。

附图说明

图1是本发明高效分布式与并行Delaunay三角形构建方法的流程图;

图2是步骤3~5的分布式与并行执行结构(m个子问题由m个节点进行并行处理)。

具体实施方式

下面结合附图和具体实施方案对本发明的技术方案作进一步详细地说明。

参照图1,一种高效分布式与并行Delaunay三角形构建方法,包括以下步骤:

步骤1:根据分布式与并行计算环境的规模p,确定问题求解递归划分的次数k和叶子问题的数目2k,p为可获得的计算节点的数目,其中2k<p且2k+1>p,即子问题的数目少于可获得的并行计算节点的数目,且2k为二叉树模式下最大允许的并行计算规模;

步骤2:按平面扫描序的方式对规模为n的待求解问题的数据集进行排序,X轴为主序,Y轴为辅序;

步骤3:采用分治法的划分策略,自顶向下逐步划分,将规模为n的待求解问题递归划分为2k个叶子问题;

步骤4:对2k个叶子问题,使用2k个并行计算节点进行子问题的凸壳法Delaunay三角网并行构建;

步骤5:采用分治法的合并策略,自底向上逐步合并子问题的解,每次合并都使用子问题数目(t个)一半的计算节点进行分布式与并行合并处理,直到获得全局问题的整体解。

步骤3~5的执行结构如图2所示。首先,采用分治法的划分策略,自顶向下,将规模为n的待求解问题S划分为2k个问题,2k记为m;然后,使用m个计算节点进行m个子问题的分布式与并行处理;最后,采用分治法的合并策略,在同步通信的控制下,自底向上逐步合并,形成全局问题的整体解。

以上所述,仅为本发明较佳的具体实施方式,本发明的保护范围不限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可显而易见地得到的技术方案的简单变化或等效替换均落入本发明的保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1