(1. 中国科学院 地理科学与资源研究所,北京 100101 ;2. 中国科学院大学,北京 100049 ;3. 北京超图软件股份有限公司,北京 100015)
论文来源:《地理空间信息》2013年12月 第11卷第6期
摘要:为了提高雷达外推 TERC 算法的效率,首先分析了 TREC 算法的原理与过程,找出算法计算密集型部分;在此基础上,采用基于多线程的并行计算对算法进行优化,并使用 Windows 线程库的 API 实现多线程编程 ;最后,通过实验比较串行算法和并行算法的运行时间。结果表明,并行算法发挥了多核处理器的优势,大幅提升了效率。
关键词: 雷达外推,交叉相关算法,算法优化,并行计算,多线程
临近天气预报是指 0~2 h 的天气预报,预报业务的工作重点是监测预警台风和短时强降水、冰雹、雷雨大风、龙卷、雷电等强对流天气及其引发的洪涝、山体滑坡、泥石流等气象灾害 [1]。它的基本原理是通过对 2 个相邻时刻雷达回波状态的分析,确定回波的变化特征,并依据这些变化特征来推求回波未来的状态。目前主要有 2 种算法可以实现雷达外推,即交叉相关追踪算法 (TREC) 和回波特征追踪算法,其中 TREC方法目前被广泛应用于确定雷达回波移动的引导风场,也是国际上许多临近预报系统的主要算法 [2,3]。
笔者在山西山洪地质灾害气象服务平台的项目研发中,也采用了 TREC 算法实现雷达回波外推。该系统为 Web 系统,用户在客户端发出外推请求后,服务器端再执行算法,算法执行完毕将结果返回到客户端显示,因此算法的执行效率决定了用户等待的时间。为了给临近预报争取更多的时间,必须提高雷达外推的算法效率。另外,多核处理器的出现也使得算法效率的提升多了一种解决方案。相比单核处理器,多核处理器的计算性能更强,能够满足用户同时进行多任务处理和多任务计算环境的要求 [4]。为了能够充分利用多核的性能,提高算法效率,需要根据多核的特点引入多线程编程对算法进行优化。
TREC 算法的原理是通过计算相邻时次雷达回波不同区域的最优空间相关性,来确定回波在过去的移动矢量特征,并依据该移动矢量特征,预测雷达回波在未来某一时刻的位置 [5]。
更多内容请查看pdf