论文部分内容阅读
克里格(Kriging)插值是一种有效的插值方法,也是地统计学的重要组成部分,已经被广泛用于地质、气象学、地理学和地图制图学等应用中。与传统的插值方法(反距离加权插值法、自然邻点插值法、最近邻点插值法、局部多项式法、移动平均法、线性插值三角网法和径向基函数法)相比,克里格插值法从区域化变量自身的特点出发,建立在变异函数理论和结构分析的基础上,充分考虑了样本点间的空间位置关系以及与待估点的空间关系,是一种无偏最优估计,拥有极高的精度。近年来,随着科研工作者们对插值方法越来越多的关注、插值方法自身的不断发展以及大量的实际应用,克里格插值已经成为相关学科的一个重要应用工具和研究热点。克里格插值在应用到大区域范围或大量样本情况下,其计算量极大,严重制约了它的应用范围。因此,基于并行方法减少克里格插值的时间是十分必要的。随着并行计算技术的发展,大区域和大样本环境下的快速克里格插值成为可能。GPGPU是近年来发展起来的一种新并行加速方法,相比集群平台,它有成本低、能耗少等独特的优势;同多核平台比,它能并发运行更多的线程,拥有更快的速度。本文基于GPU平台,利用OpenCL框架,针对GPU体系结构特点和克里格算法特点实现了克里格插值的GPU加速;同时建立了CPU-GPU协同加速克里格插值技术体系;通过集成遗传算法与粒子群算法优化了变异函数的参数;最后,将克里格插值应用于叶面积指数的预测。本论文的研究成果不但可用于克里格插值的加速,同时也为其它地学算法的GPU加速提供了方法上的借鉴。本文的主要工作如下:第一,并行粒度的选择。根据克里格插值和GPU体系结构的特点,利用阿姆达尔定律,系统分析了不同粒度的插值方法对其加速比的影响,并得出了适合GPU插值的最优粒度。同时也为其它地学算法并行方案中的粒度问题提供了参考价值。第二,冗余存储和计算的减少。克里格插值过程中相邻待估点可能拥有相同的邻近点这一特点,基于这一特点提出冗余矩阵减少方法(Redundant matrix reduction,RMR)。此方法对于拥有相同邻近点的待估点,仅构造其中一个待估点的系数矩阵,并计算其逆矩阵,其它拥有相邻近点的待估点使用这个逆矩阵计算自己的估计值。在这个过程中,RMR方法能同时减少GPU算法中的存储和计算消耗。第三,邻近点搜索。大区域克里格插值的分块解决方案中,在GPU上进行每一次计算时使用的采样点数量有限,针对这一特点,提出了快速可扩展窗口搜索方法(Quick extensible window searching,QEWS)用于搜索邻近点。同常用的邻近点搜索方法—KD树搜索法相比,QEWS方法在样本数量比较少的时候拥有优势。在对大的区域或大量样本插值时通常将其划分为较小的部分,因此在克里格插值算法中QEWS比KD树更有优势。第四,CPU-GPU异构平台上的克里格算法加速。在GPU算法中,当GPU执行并行计算时,CPU通常处于等待状态,因此本文联合CPU和GPU共同承担克里格插值的并行任务,结果表明,此方法能有效提高克里格插值的速度。第五,变异函数参数估计。变异函数的参数估计对最终的插值结果有重要的影响,通过遗传算法与粒子群算法对变异函数的参数进行了估计。第六,叶面积指数预测。在单点LAI预测过程中,基于时间序列分析方法SARIMA对LAI值进行预测,通过BP神经网络方法对SARIMA方法预测结果的残基进行拟合,将二者预测结果的和做为最终预测的结果,实验结果表明,SARIMA方法和BP神经网络的结合能有效提高预测结果准确性。在区域克里格插值中,通过时间序列分析方法SARIMA对一定区域范围内的LAI预测,利用克里格插值对这个区域范围内SARIMA预测结果的残基进行拟合,结果表明,克里格插值方法能够拟合SARIMA预测结果的残差,从而提高预测结果准确性。